Принтер не устанавливается с помощью hp-lip?

У меня был бы соблазн достучаться до рубина здесь:

echo "a c a c a c a a a a a a a a c c c a c 0 0 a c 0 a" |
ruby -e '
  max = STDIN.gets                                # read the line
             .split                               # split on whitespace
             .group_by {|elem| elem}              # create a hash grouping the words
             .to_a                                # convert has to array of [key,value] pairs
             .map {|key, val| [key, val.length]}  # convert to array of [key, count] pairs
             .sort_by {|key, count| count}        # sort numerically
             .reverse                             # in descending order
  puts "max: " + max[0][0]
  puts "2nd max: " + max[1][0]
'

-121--174044-

Сообщение об ошибке говорит не о crontab , а о httpd (Apache).

Начать расследование, временно выключив SELinux:

setenforce 0

(который будет адресован большинство , но не все блокировки). Проблема обычно может быть исправлена с помощью одной из настроек SELinux через semanage (если файлы Drupal хранятся в том месте, которое SELinux не ожидает), или с помощью restorecon (для восстановления метаинформации для файловой системы).

В крайнем случае можно использовать audit2allow .

Для справки:

-121--228482-

Отсутствуют "рекомендации". Только вещи, которые имеют смысл и облегчают ситуацию.

Извлечение общих частей и параметризация остальных является одной из таких вещей:

lines="`gunzip -c /var/log/cisco/cisco.log-$(date +%Y%m%d).gz`"
#gunzip would always output the same thing on the same day, so 
#just run it once and store the results in a variable
grepAndLog(){
  local regex="$1" file="$2" msg="$3" filter="${4:-cat}"
  #^names for positional parameters

  printf "%s\n" "$lines" | grep "$regex" | cut -d' ' -f4 | sort | uniq -c | eval "$filter"  > "/tmp/$file"
  local count=`wc -l < "/tmp/$file"`   
  echo "There are $count "" $msg" >> "/tmp/$file"
}
grepAndLog ath_bstuck_tasklet netgear_bacon.txt \
 'Stuck beacon; resetting'
grepAndLog netgear_buffer_queue netgear_buffer_queue.txt \
 "routers with 'Virtual device ath0 asks to queue packet' errors"
grepAndLog CMS_MSG_DNSPROXY_RELOAD netgear_dns.txt \
 " routers with 'DNS Proxy Issue' errors"
grepAndLog ath_bstuck_tasklet netgear_bacon.txt \
 " routers with beacon frame errors"
grepAndLog ACK netgear_ACK.txt \
 " routers with more than 50 ACK" 'awk -v x=50 "\$1 >= x"'

Это все еще решение в основном оболочки. Но ИМО более читаема и более чем на 40% короче.

О коде:

Я использую grep "$ regex" | cut -d '' -f4 вместо выражения awk. Кроме того, функция grepAndLog является обобщением того, что вы делаете в каждой строке сценария: У вас есть некоторые входные данные (выходные данные gunzip), для выражения (параметр $ regex ), и вы выводите результирующие строки, отсортированные и с префиксом count в файл $ . Затем добавляется число строк (Я делаю wc -l вместо wc -l "$ file" | awk... ), заключенное в сообщение, начало которого является постоянным и конец которого изменяется ( $ msg ).

В своей последней строке вы не просто греп, но вы используете другой фильтр поверх этого. Вместо создания ветви if для этой функции, я просто использую cat в качестве неявного дополнительного фильтра по умолчанию в обычных случаях, когда четвёртого параметра не существует ( local filter = "$ {4: -cat}" означает создание фильтра функциональных локальных переменных, содержимое которого является четвертым параметром, заданным функции, или cat , если четвёртый параметр не предоставлен cat переопределяется, если четвертый параметр задан как grepAndLog .

0
21.10.2018, 14:47
1 ответ

QinHeng Electronics CH340S — это адаптер последовательного/параллельного порта, а не сам принтер. И похоже, что в Linux есть драйвер для этого чипа адаптера (, имя модуля должно быть ch341), но только для его режима адаптера последовательного порта. И использование последовательного порта с таким принтером было бы мучительно медленным.

Для поддерживаемого адаптера USB -> параллельного порта выберите «Параллельный порт (LPT )» в окне «Обнаружение устройства», а затем, при необходимости, введите имя устройства. Это может быть что-то вроде /dev/usb/lp0; У меня не было возможности использовать адаптер параллельного порта USB -> с Linux, поэтому я не знаю наверняка.

Но если используется принтер HP LaserJet 4050, он должен иметь сетевой интерфейс в стандартной комплектации. Подключите его к своей сети, а затем выберите «Сеть/Ethernet/Беспроводная связь» в этом окне обнаружения устройств, и он может даже автоматически -обнаружить принтер, если он присутствует в сегменте локальной сети. Если он не определяет автоматически -, получите распечатку настроек конфигурации сети с помощью панели управления принтера и проверьте настройки сети. Если у него старые настройки из того места, где он ранее использовался, погуглите «холодный сброс LaserJet 4050».

0
28.01.2020, 04:12

Теги

Похожие вопросы