Linux отсутствует фильтр печати

Принтер пропускает файл

Сообщение о состоянии принтера:
«Файл usr / lib / cups / backend / usb» недоступен: такого файла или каталога нет.

Предупреждения перечислены ниже:

Отсутствует фильтр печати для принтера «Canon-TS8000-series».

2 ответа

С Ubuntu 17.04 есть поддержка airprint. Кажется, что поддерживаются практически все струйные принтеры, выпущенные за последние несколько лет; так что скорее всего этот TS8000series был автоматически настроен. Ubuntu для вас. Если вы щелкните правой кнопкой мыши значок этого принтера; это должно быть в папке PRINTERS, это может сказать «без водителя»: это, кажется, показывает, что он использует режим airprint. В качестве альтернативы вы можете установить драйверы, поставляемые компанией Canon, поэтому перейдите по ссылке https://www.canon-europe.com/support/consumer_products/products/fax__multifunctionals/inkjet/pixma_ts_series/pixma-ts8040.aspx?type=drivers&driverdetailid=tcm:13-1533040&os=Linux%20(64-bit)&language=EN загрузите и СОХРАНИТЕ то, что будет cnijfilter2-5.40-1-deb.tar.gz, и оно должно оказаться в папке » Загрузки «. Открыть терминал; скопируйте каждую команду ниже; вставьте в терминал; нажмите клавишу ВВОД после каждой вставленной строки.

cd Downloads tar -zxvf cnijfilter2-5.40-1-deb.tar.gz cd cnijfilter2-5.40-1-deb sudo ./install.sh 

последняя команда запускает скрипт установки; это должно сделать все для вас; пожалуйста, смотрите терминал, так как он может задать вам вопросы

Если вы установите эти драйверы; значок должен иметь немного другое имя, чем существующее: другим было бы полезно знать; если печать отличается между двумя; удачи

Источник

Отсутствуют фильтры принтера

Я использую ubuntu 20.04 и пытаюсь установить братский принтер через USB-соединение. Но я получаю сообщение об ошибке:

«Отсутствует фильтр печати для принтера» MFC-J5910DW «

И /var/log/cups/error_log содержит следующую информацию:

MFC-J5910DW: File \"/usr/lib/cups/filter/brother_lpdwrapper_mfcj5910dw\" not available: No such file or directory 

Я предполагаю, что проблема заключается в отсутствующем файле, но я не знаю, что мне нужно сделать, чтобы решить эту проблему, поэтому буду признателен за любую помощь. Бест, Барбара

3 ответа

В Linux не ждите запуска мастера установки драйверов. Компания Brother известна своей поддержкой Linux и выпускает собственные драйверы для принтеров. Прежде чем начать этот процесс, посетите веб-сайт Brother, чтобы узнать, есть ли у них информация о поддержке для вашей модели. Находясь на сайте компании, поищите файл .deb или PPD, который вы можете использовать, чтобы вручную указать оптимальный драйвер для вашего принтера.

Просто погуглите номер своей модели (в вашем случае «Brother MFC-J5910DW»), затем загрузите утилиту Linux/.deb и драйверы принтера, какие бы они ни были. Могу я особо отметить прочтение любой помощи, которую они там могут найти. Кстати, раз уж вы там, скачайте инструкции и т. Д.

Читайте также:  Linux посмотреть размер папок ls

Установите, затем сядьте и смотрите, как летит фейерверк.;))

Вот что я сделал, чтобы это работало:

  1. Я зашел на https://www.brother.de/support/mfc-j5910dw/downloads
  2. Я загрузил два пакета драйверов для принтера MFC-J5910DW:
    • Драйвер принтера LPR (пакет deb)
    • Драйвер принтера CUPSwrapper (пакет deb)
  3. Я открыл терминал и вошел в каталог, в который я загрузил два пакета.
  4. Я установил оба пакета с помощью apt:
sudo apt install ./mfcj5910dwlpr-3.0.0-1.i386.deb ./mfcj5910dwcupswrapper-3.0.0-1.i386.deb 

Источник

CUPS пишет «Filter failed»

Надо заглянуть в /var/log/cups/error_log и посмотреть подробности ошибок.

да там немного непонятно, что он хочет то вообще.
ну вот он запускает:

D [25/May/2022:07:39:18 +0300] [Job 8] Started filter /usr/lib/cups/filter/bannertopdf (PID 260205) D [25/May/2022:07:39:18 +0300] [Job 8] Started filter /usr/lib/cups/filter/pdftopdf (PID 260206) D [25/May/2022:07:39:18 +0300] [Job 8] Started filter /usr/lib/cups/filter/brother_lpdwrapper_HL1210W (PID 260207) D [25/May/2022:07:39:18 +0300] [Job 8] Started backend /usr/lib/cups/backend/dnssd (PID 260208)
D [25/May/2022:07:39:18 +0300] [Job 8] cp: -r not specified; omitting directory \'/opt/brother/Printers/HL1210W//inf/brHL1210Wrc\' D [25/May/2022:07:39:18 +0300] [Job 8] rm: cannot remove \'/tmp/brHL1210Wrc_260207\': No such file or directory D [25/May/2022:07:39:18 +0300] [Job 8] PID 260207 (/usr/lib/cups/filter/brother_lpdwrapper_HL1210W) stopped with status 1. D [25/May/2022:07:39:18 +0300] [Job 8] Hint: Try setting the LogLevel to "debug" to find out more.

brother_lpdwrapper_HL1210W — чё с ним делать?

tip78 ( 25.05.22 08:43:06 MSK )
Последнее исправление: tip78 25.05.22 09:01:17 MSK (всего исправлений: 3)

LogLevel debug в /etc/cups/cupsd.conf

Хотя он, судя по этому разделу, уже должен быть прописан, D в начале строки в логах означают отладочную информацию.

он там насыпал инфы на 100500 экранов
вот то что про фильтр:

D [25/May/2022:09:06:04 +0300] [Client 14] Writing IPP response, ipp_state=IPP_STATE_DATA, old wused=0, new wused=0 D [25/May/2022:09:06:04 +0300] [Client 14] bytes=0, http_state=0, data_remaining=593 D [25/May/2022:09:06:04 +0300] [Client 14] Flushing write buffer. D [25/May/2022:09:06:04 +0300] [Client 14] New state is HTTP_STATE_WAITING D [25/May/2022:09:06:04 +0300] [Client 14] Waiting for request. D [25/May/2022:09:06:04 +0300] cupsdSetBusyState: newbusy="Dirty files", busy="Active clients and dirty files" D [25/May/2022:09:06:04 +0300] [Client 14] POST / HTTP/1.1 D [25/May/2022:09:06:04 +0300] cupsdSetBusyState: newbusy="Active clients and dirty files", busy="Dirty files" D [25/May/2022:09:06:04 +0300] [Client 14] Read: status=200, state=6 D [25/May/2022:09:06:04 +0300] [Client 14] No authentication data provided. D [25/May/2022:09:06:04 +0300] [Client 14] 2.0 Get-Printer-Attributes 25 D [25/May/2022:09:06:04 +0300] Get-Printer-Attributes ipp://@localhost:631/printers/Brother_HL-1210W_series D [25/May/2022:09:06:04 +0300] [Client 14] Returning IPP successful-ok for Get-Printer-Attributes (ipp://@localhost:631/printers/Brother_HL-1210W_series) from localhost. D [25/May/2022:09:06:04 +0300] [Client 14] Content-Length: 593 D [25/May/2022:09:06:04 +0300] [Client 14] cupsdSendHeader: code=200, type="application/ipp", auth_type=0 D [25/May/2022:09:06:04 +0300] [Client 14] con->http=0x55c1f6cf8320 D [25/May/2022:09:06:04 +0300] [Client 14] cupsdWriteClient error=0, used=0, state=HTTP_STATE_POST_SEND, data_encoding=HTTP_ENCODING_LENGTH, data_remaining=593, response=0x55c1f6c58890(IPP_ST ATE_DATA), pipe_pid=0, file=-1 D [25/May/2022:09:06:04 +0300] [Client 14] Writing IPP response, ipp_state=IPP_STATE_DATA, old wused=0, new wused=0 D [25/May/2022:09:06:04 +0300] [Client 14] bytes=0, http_state=0, data_remaining=593 D [25/May/2022:09:06:04 +0300] [Client 14] Flushing write buffer. D [25/May/2022:09:06:04 +0300] [Client 14] New state is HTTP_STATE_WAITING D [25/May/2022:09:06:04 +0300] [Client 14] Waiting for request. D [25/May/2022:09:06:04 +0300] cupsdSetBusyState: newbusy="Dirty files", busy="Active clients and dirty files" D [25/May/2022:09:06:04 +0300] [Job 12] PID 262644 (/usr/lib/cups/filter/brother_lpdwrapper_HL1210W) stopped with status 1.

На что-то сетевое похоже, поиск результаты размазывает тонким разношёрстным слоем возможных причин. Через шнур есть возможность проверить печать?

Весь файл можно на https://pastebin.com/ залить.

Я бы от безысходности погрепал файл на типичные маркеры ошибок, вроде «error», «fail», «could not».

у меня, к примеру, Filter failed происходит всегда при первой печати.

Но чтобы такого не было, я просто еще раз выключаю и включаю принтер и о, чудо, все работает.

Кстати вопрос, как вручную запустить этот, да и любой другой фильтр?

подключил, переустановил локальный, пробовал вкл/выкл — не помогает

D [25/May/2022:13:50:44 +0300] [Client 4] cupsdWriteClient error=0, used=0, state=HTTP_STATE_POST_SEND, data_encoding=HTTP_ENCODING_LENGTH, data_remaining=459, response=0x55d41f3b71e0(IPP_STATE_DATA), pipe_pid=0, file=-1
D [25/May/2022:13:50:44 +0300] [Job 19] printer-state-message="Filter failed"

Это был хороший вопрос, потому что я кое-что нагуглил ТСу.

Если я понял верно, по этой же ссылке есть и про ручной запуск.

P.S. я думаю это заметно по треду, что я с CUPS не дружу. С принтерами немного возился по мелочам, поэтому по специфике CUPS могу лишь в поиск сходить.

по-моему Brother этот вместо драйвера подсунул кусок говна.
вот /usr/lib/cups/filter/brother_lpdwrapper_HL1210W:

LOGFILE="/dev/null" LOGCLEVEL="7" DEBUG=0 LOG_LATESTONLY=1 PRINTER=HL1210W BASEDIR=/opt/brother/Printers/$PRINTER/ LATESTINFO=/tmp/HL1210W_latest_print_info rm -f $LATESTINFO touch $LATESTINFO options="$5" if [ "$(echo $options | grep 'force-debug=1')" != '' ];then DEBUG=1 elif [ "$(echo $options | grep 'force-debug=2')" != '' ];then DEBUG=2 elif [ "$(echo $options | grep 'force-debug=3')" != '' ];then DEBUG=3 elif [ "$(echo $options | grep 'force-debug=4')" != '' ];then DEBUG=4 fi errorcode=0 set +o noclobber if [ $DEBUG != 0 ]; then LOGFILE=/tmp/br_cupsfilter_debug_log fi if [ "$PPD" = "" ]; then PPD="/usr/share/cups/model/$PRINTER.ppd" fi if [ $LOGFILE != "/dev/null" ]; then if [ $LOG_LATESTONLY = "1" ]; then rm -f $LOGFILE date >$LOGFILE else if [ -e $LOGFILE ]; then date >>$LOGFILE else date >$LOGFILE fi fi echo "arg0 = $0" >>$LOGFILE echo "arg1 = $1" >>$LOGFILE echo "arg2 = $2" >>$LOGFILE echo "arg3 = $3" >>$LOGFILE echo "arg4 = $4" >>$LOGFILE echo "arg5 = $5" >>$LOGFILE echo "arg6 = $6" >>$LOGFILE echo "PPD = $PPD" >>$LOGFILE fi TMP_RC=/tmp/brHL1210Wrc_$$ cp /opt/brother/Printers/$PRINTER//inf/brHL1210Wrc $TMP_RC export BRPRINTERRCFILE=$TMP_RC if [ $DEBUG != 0 ]; then echo BRPRINTERRCFILE=$BRPRINTERRCFILE >>$LOGFILE fi if [ -e "/$BASEDIR/lpd/filter_"$"" ]; then : else echo "ERROR: /$BASEDIR/lpd/filter_"$PRINTER" does not exist" >>$LOGFILE echo "ERROR: /$BASEDIR/lpd/filter_"$PRINTER" does not exist" >> $LATESTINFO errorcode=2 rm $TMP_RC exit fi if [ -e "/opt/brother/Printers/$PRINTER//cupswrapper/brcupsconfig4" ]; then if [ $DEBUG = 0 ]; then /opt/brother/Printers/$PRINTER//cupswrapper/brcupsconfig4 $PRINTER $PPD 0 "$options" >> /dev/null else /opt/brother/Printers/$PRINTER//cupswrapper/brcupsconfig4 $PRINTER $PPD $LOGCLEVEL "$options" >>$LOGFILE fi fi if [ $DEBUG = 0 ]; then if [ $# -ge 7 ]; then cat $6 | /$BASEDIR/lpd/filter_"$PRINTER" else cat | /$BASEDIR/lpd/filter_"$PRINTER" fi echo brHL1210Wrc_$$ >> $LATESTINFO cat $TMP_RC >> $LATESTINFO rm $TMP_RC exit $errorcode else ## ---------------- for debug echo --------------------------- >>$LOGFILE cat $BRPRINTERRCFILE >>$LOGFILE echo --------------------------- >>$LOGFILE INPUT_TEMP_PS=`mktemp /tmp/br_input_ps.XXXXXX` if [ $# -ge 7 ]; then cat $6 > $INPUT_TEMP_PS else cat > $INPUT_TEMP_PS fi case $DEBUG in 1) export LPD_DEBUG=1 cat $INPUT_TEMP_PS | /$BASEDIR/lpd/filter_"$PRINTER" ;; 2) export LPD_DEBUG=2 echo "" >>$LOGFILE echo " ------PostScript Data-------" >>$LOGFILE cat $INPUT_TEMP_PS >>$LOGFILE cat $INPUT_TEMP_PS | /$BASEDIR/lpd/filter_"$PRINTER" ;; 3) export LPD_DEBUG=3 echo "" >>$LOGFILE echo " ------PostScript Data-------" >>$LOGFILE cat $INPUT_TEMP_PS >>$LOGFILE ;; 4) export LPD_DEBUG=4 echo "" >>$LOGFILE echo " ------PostScript Data-------" >>$LOGFILE cat $INPUT_TEMP_PS >>$LOGFILE echo " ------Print Data-------" >>$LOGFILE cat $INPUT_TEMP_PS | /$BASEDIR/lpd/filter_"$PRINTER" | hexdump -C >>$LOGFILE ;; esac rm echo brHL1210Wrc_$$ >> $LATESTINFO cat $TMP_RC >> $LATESTINFO rm $TMP_RC fi exit

ошибки, которые я выше показывал:

D [25/May/2022:07:39:18 +0300] [Job 8] cp: -r not specified; omitting directory \'/opt/brother/Printers/HL1210W//inf/brHL1210Wrc\' D [25/May/2022:07:39:18 +0300] [Job 8] rm: cannot remove \'/tmp/brHL1210Wrc_260207\': No such file or directory
ERROR: //opt/brother/Printers/HL1210W//lpd/filter_HL1210W does not exist

дира «/opt/brother/Printers/HL1210W/inf/brHL1210Wrc» — пустая.
чё он блин ищет того, чего нет, и почему после этих двух строк он отваливается с кодом 1 ?!

Источник

Оцените статью
Adblock
detector