Купоны не печатаются с сообщением “Не удалось фильтровать” — как получить больше информации?

Вопрос или проблема

У меня есть лазерный принтер (Samsung ML-2010), который в хорошем состоянии, он работает в Windows и старых версиях Linux, но не с моей свежей установкой ArchLinux. Принтер распознается и настраивается, но не печатает, говорит о любой задаче:

отменено в
Пт 06 Июн 2014 10:15:26 PM EEST 
"Фильтр не выполнен"

Вопрос — где искать, чтобы узнать больше? Логи CUPS, похоже, не содержат ничего связанного.

Для пользователей Ubuntu 14.04 (и, возможно, других версий) вы не можете добавить foomatic-filters, как предложено выше, так как они конфликтуют с версией проекта CUPS (cups-filters).

Подсказка может быть в /var/log/cups/error_log. В моем случае вывод выглядит следующим образом

[17/Авг/2014:12:47:31 +1000] [Задача 83] JCL: 12345X@PJL 
[17/Авг/2014:12:47:31 +1000] [Задача 83] <данные задачи> 
[17/Авг/2014:12:47:31 +1000] [Задача 83] sh: 1: hpijs: не найден 
[17/Авг/2014:12:47:31 +1000] [Задача 83] GPL Ghostscript 9.10: Не удается запустить сервер ijs "hpijs" 
[17/Авг/2014:12:47:31 +1000] [Задача 83] рендерер завершился с кодом 1 
[17/Авг/2014:12:47:31 +1000] [Задача 83] Возможная ошибка в командной строке рендерера или ошибка PostScript. Проверьте параметры. Код выхода Kid3: 3

Это можно решить с помощью:

sudo apt-get install hpijs-ppds printer-driver-hpijs

Не уверен, нужны ли оба, я просто выбрал все hpijs-подобные вещи в Aptitude.

На случай, если кто-либо увидит это сообщение об ошибке в 2019 году, возможная причина — несовместимость между старыми версиями cups-filters и последними версиями ghostscript. Обновление первых или понижение последних решает эту проблему.

Обратите внимание, что обновления для cups-filters не были выпущены для некоторых платформ (например, Raspbian Stretch на Raspberry Pi) до середины июня 2019 года, поэтому, если это не сработало в прошлом, попробуйте снова sudo apt update && sudo apt upgrade.

Поскольку это самый популярный запрос в Google по “debian jessie filter failed”, я собираюсь добавить то, что помогло мне.

Это для Debian Jessie и CUPS, который выдает “фильтр не выполнен”!

Виновником был пакет ghostscript из стабильной ветки (т.е. Jessie в данном случае), который часто зависал. Я обновил пакет ghostscript из testing.

У меня была похожая ошибка “Filter failed” с принтером HP CP1217, шаги на этой странице (https://ramblingmoose.wordpress.com/2018/04/18/debian-and-raspbian-installing-a-cups-print-server-and-a-proprietary-p1102w-print-driver-on-linux/) помогли мне, я процитирую соответствующий фрагмент:

Я выполнил в терминале: sudo hp-setup -i

Для установки плагина, на подсказки я отвечал:

  • 0 (ноль) для USB-принтера
  • d для загрузки – загрузка выдала ошибку “Не удалось получить ключ у сервера ключей”
  • y для установки Да, чтобы принять EULA
  • y, чтобы согласиться с тем, что “этот PPD-файл, похоже, правильный”
  • Введите описание местоположения
  • Введено через “дополнительную информацию для этого принтера”
  • y, чтобы распечатать тестовую страницу

Попробуйте установить foomatic-filters и foomatic-db-engine из AUR.

У меня была та же проблема на Debian Jessie!
Совет Эрика Винкелса решил проблему.

Я модифицировал файл /etc/apt/sources.list
– Добавил строку: deb http://ftp.at.debian.org/debian/ sid main

Затем я выполнил шаги:
– sudo aptitude update
– sudo aptitude safe-upgrade ghostscript
– Вернул sources.list, и снова:
– sudo aptitude update

Теперь мой ghostscript версии 9.19~dfsg-3, и печать работает.

Для пользователей Raspberry Pi и, возможно, некоторых других платформ на базе Debian, которые столкнулись с этой проблемой в мае-июне 2019 года, проблема заключалась в том, что ghostscript и libgs9 были обновлены за две или три недели до того, как были доступны обновленные версии cups-browsed, cups-filters, cups-filters-core-drivers, libcupsfilters1 и libfontembed1 в репозиториях Raspbian. Запуск sudo apt update && sudo apt upgrade снова 14 июня 2019 года или позже, надеюсь, исправит проблему.

Я только что решил проблему, очень похожую на эту. Она была вызвана весенним обновлением Debian 2019 года. Чтобы решить это, я добавил “oldstable” в свой sources.list Debian и затем смог понизить несколько пакетов. Я понизил:

  • printer-driver-hpcups до 3.16.11+repack0-3
  • ghostscript, ghostsctipt-x, libgs9, libgs9-common до 9.26a~dfsg-0+deb9u2

В моем случае (HP Laserjet CP1215) не хватало правильного драйвера принтера => foo2hp

Вы можете установить его с помощью: sudo apt-get install printer-driver-foo2zjs-common

Также перезапустите CUPS: sudo service cups restart

У меня есть Raspberry Pi, и в моем случае это было связано с тем, что мой rootfs был заполнен.

Проверьте, так ли это у вас, с помощью df -h и при необходимости очистите файловую систему.

Используйте sudo ncdu -x /, чтобы найти папку, которая поглощает все это пространство, еще раз, если это так у вас.

Я изучил эту опцию:

“Попробуйте установить foomatic-filters и foomatic-db-engine из AUR.”

Однако это вызывает удаление cups, а новая установка cups удаляет эти фильтры и заменяет их на cups-filters.

У меня есть лазерный принтер Samsung M2020 Series (Xpress SL-M2022W) и я столкнулся с “Filter failed” под Debian 12 bookworm (x86_64 amd64).

Я установил драйвер печати Samsung для Linux и настроил мой принтер через веб-интерфейс CUPS ( http://localhost:631/admin ) как модель “Samsung M2020 Series (en)” (т.е. настроил его с помощью PPD-файла /opt/samsung/printer/share/ppd/Samsung_M2020_Series.ppd (доступен для CUPS/инфраструктуры печати ОС через созданные установщиком символьные ссылки /usr/share/cups/model/uld-samsung и /usr/share/ppd/uld-samsung).

Попытка печати с этой настройкой не удалась, и посещение http://localhost:631/jobs?which_jobs=all показало мне “Filter failed”.

/var/log/cups/error_log сообщает:

...
D [18/Янв/2024:14:14:59 +0100] [Задача 3] Запущен backend /usr/lib/cups/backend/dnssd (PID 24300)
D [18/Янв/2024:14:14:59 +0100] [Задача 3] Samsung_M2020_Series: ошибка при загрузке общих библиотек: libcupsimage.so.2: не удается открыть общий файл объекта: Нет такого файла или каталога
D [18/Янв/2024:14:14:59 +0100] [Задача 3] PID 24299 (/usr/lib/cups/filter/rastertospl) остановлен с кодом 127 (Файл слишком большой)
...

Samsung_M2020_Series.ppd является описанием принтера PostScript, использующим cups-filters (CUPS-PPD), в его конкретном случае это cups-filter под названием rastertospl. Этот cups-filter предоставляется и устанавливается драйвером печати Samsung для Linux по адресу /opt/smfp-common/printer/bin/rastertospl (доступен для CUPS/инфраструктуры печати ОС через созданную установщиком символьную ссылку /usr/lib/cups/filter/rastertospl).

Cups-filter/executable от Samsung (?) rastertospl имеет зависимости от нескольких общих библиотек, включая libcupsimage.so.2, о которой CUPS сообщил, что она отсутствует:

ldd /opt/smfp-common/printer/bin/rastertospl 
        linux-vdso.so.1 (0x00007fff27197000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f6c5fe79000)
        libcups.so.2 => /lib/x86_64-linux-gnu/libcups.so.2 (0x00007f6c5fddc000)
        libcupsimage.so.2 => /lib/x86_64-linux-gnu/libcupsimage.so.2 (0x00007f6c5fdd7000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f6c5fbf6000)
        libgssapi_krb5.so.2 => /lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x00007f6c5fba4000)
        libavahi-common.so.3 => /lib/x86_64-linux-gnu/libavahi-common.so.3 (0x00007f6c5fb94000)
        libavahi-client.so.3 => /lib/x86_64-linux-gnu/libavahi-client.so.3 (0x00007f6c5fb81000)
        libgnutls.so.30 => /lib/x86_64-linux-gnu/libgnutls.so.30 (0x00007f6c5f965000)
        libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f6c5f946000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f6c5f867000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f6c5fe9c000)
        libkrb5.so.3 => /lib/x86_64-linux-gnu/libkrb5.so.3 (0x00007f6c5f78d000)
        libk5crypto.so.3 => /lib/x86_64-linux-gnu/libk5crypto.so.3 (0x00007f6c5f75e000)
        libcom_err.so.2 => /lib/x86_64-linux-gnu/libcom_err.so.2 (0x00007f6c5f758000)
        libkrb5support.so.0 => /lib/x86_64-linux-gnu/libkrb5support.so.0 (0x00007f6c5f74a000)
        libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007f6c5f6f4000)
        libp11-kit.so.0 => /lib/x86_64-linux-gnu/libp11-kit.so.0 (0x00007f6c5f5c0000)
        libidn2.so.0 => /lib/x86_64-linux-gnu/libidn2.so.0 (0x00007f6c5f58f000)
        libunistring.so.2 => /lib/x86_64-linux-gnu/libunistring.so.2 (0x00007f6c5f3d7000)
        libtasn1.so.6 => /lib/x86_64-linux-gnu/libtasn1.so.6 (0x00007f6c5f3c2000)
        libnettle.so.8 => /lib/x86_64-linux-gnu/libnettle.so.8 (0x00007f6c5f374000)
        libhogweed.so.6 => /lib/x86_64-linux-gnu/libhogweed.so.6 (0x00007f6c5f32b000)
        libgmp.so.10 => /lib/x86_64-linux-gnu/libgmp.so.10 (0x00007f6c5f2aa000)
        libkeyutils.so.1 => /lib/x86_64-linux-gnu/libkeyutils.so.1 (0x00007f6c5f2a1000)
        libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f6c5f290000)
        libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007f6c5f1c0000)
        libffi.so.8 => /lib/x86_64-linux-gnu/libffi.so.8 (0x00007f6c5f1b4000)
        libcap.so.2 => /lib/x86_64-linux-gnu/libcap.so.2 (0x00007f6c5f1a8000)
        libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007f6c5f05f000)
        liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f6c5f030000)
        libzstd.so.1 => /lib/x86_64-linux-gnu/libzstd.so.1 (0x00007f6c5ef74000)
        liblz4.so.1 => /lib/x86_64-linux-gnu/liblz4.so.1 (0x00007f6c5ef4e000)
        libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007f6c5ef26000)

Использование apt-file search libcupsimage.so.2 показывает, что libcupsimage.so.2 предоставляется пакетом Debian libcupsimage2](https://packages.debian.org/en/bookworm/libcupsimage2). После установки sudo apt install libcupsimage2 я могу успешно печатать.

Arch предоставляет libcupsimage.so.2 в пакете libcups.

Поскольку rastertospl зависит от нескольких общих библиотек, может потребоваться установить дополнительные пакеты, пока все зависимости не будут удовлетворены.

Я решил, установив все эти пакеты:

sudo apt-get install curl gtk2-engines:i386 gtk2-engines-murrine:i386 gtk2-engines-oxygen:i386
  gtk2-engines-pixbuf:i386 gtk2-engines-pixbuf gvfs:i386 gvfs-libs:i386
  ibus-gtk:i386 libacl1:i386 libaio1:i386 libao4:i386 libatk1.0-0:i386
  libattr1:i386 libaudio2:i386 libbz2-1.0:i386 libcaca0:i386
  libcairo-gobject2:i386 libcanberra-gtk-module:i386 libcanberra-gtk0:i386
  libcanberra0:i386 libcapi20-3:i386 libcurl3-gnutls libcurl3-gnutls:i386
  libcurl4 libcurl4:i386 libdbus-glib-1-2:i386 libdeflate0:i386 libexif12:i386
  libfluidsynth3:i386 libgail-common:i386 libgail-common libgail18
  libgail18:i386 libgck-1-0:i386 libgcr-base-3-1:i386 libgd3:i386
  libgdbm-compat4:i386 libgdbm6:i386 libgdk-pixbuf-2.0-0
  libgdk-pixbuf-2.0-0:i386 libgdk-pixbuf2.0-common libgettextpo0:i386
  libgl1-mesa-glx:i386 libgomp1:i386 libgphoto2-6:i386 libgphoto2-port12:i386
  libgpm2:i386 libgtk2.0-0 libgtk2.0-0:i386 libgtk2.0-bin libibus-1.0-5:i386
  libice6:i386 libieee1284-3:i386 libinstpatch-1.0-2:i386 libjbig0:i386
  libjpeg-turbo8:i386 libjpeg8:i386 liblcms2-2:i386 libldap-2.5-0
  libldap-2.5-0:i386 libldap-common libltdl7:i386 libmad0:i386 libmikmod3:i386
  libmpg123-0:i386 libncursesw5:i386 libncursesw6:i386 libnghttp2-14
  libnghttp2-14:i386 libnspr4 libnspr4:i386 libnss3 libnss3:i386 libodbc1:i386
  libodbc2 libodbc2:i386 libodbccr2:i386 libodbcinst2 libodbcinst2:i386
  libopenal1:i386 libopenjp2-7 libopenjp2-7:i386 libpci3:i386 libperl5.34:i386
  libpoppler-cpp0v5 libpoppler-glib8 libpoppler-glib8:i386 libpoppler118
  libpoppler118:i386 libpsl5:i386 libpulse-mainloop-glib0:i386
  libpulse-mainloop-glib0 libpulse0 libpulse0:i386 libpulsedsp:i386
  libpulsedsp libreadline8:i386 librsvg2-2:i386 librsvg2-common:i386
  librtmp1:i386 libsane1:i386 libsasl2-2:i386 libsasl2-modules:i386
  libsasl2-modules-db:i386 libsdl-image1.2:i386 libsdl-mixer1.2:i386
  libsdl-net1.2:i386 libsdl-ttf2.0-0:i386 libsdl1.2debian:i386
  libsecret-1-0:i386 libslang2:i386 libsm6:i386 libsndio7.0:i386
  libsnmp40:i386 libsqlite3-0:i386 libssh-4 libssh-4:i386 libstdc++5:i386
  libtdb1:i386 libtiff5 libtiff5:i386 libtinfo5:i386 libusb-1.0-0:i386
  libvorbisfile3:i386 libwebp7:i386 libwrap0:i386 libxaw7:i386
  libxcomposite1:i386 libxdamage1:i386 libxmu6:i386 libxpm4:i386
  libxslt1.1:i386 libxt6:i386 libxtst6:i386 odbcinst odbcinst1debian2:i386
  poppler-utils pulseaudio pulseaudio-module-bluetooth pulseaudio-utils
  unixodbc-common xaw3dg:i386

Ответ или решение

Решение проблемы с "Filter Failed" в CUPS на ArchLinux для принтера Samsung ML-2010

Если ваш лазерный принтер Samsung ML-2010 не печатает на новой установке ArchLinux, и вы получаете сообщение "Filter Failed", это может быть связано с несколькими проблемами, включая отсутствие нужных драйверов или конфликтующие версии библиотек. В этом руководстве мы разберем, как получить больше информации о проблеме и как её решить.

Шаги для диагностики и исправления ошибки:

  1. Проверка журналов CUPS:

    • Логи CUPS обычно хранятся в файле /var/log/cups/error_log. Используйте команду:
      tail -f /var/log/cups/error_log
    • Обратите внимание на сообщения, начинающиеся с [Job...] или [Filter...]. Они могут указать на конкретную проблему с фильтром или драйвером.
  2. Поиск зависимостей:

    • Проблемы с отсутствующими библиотеками могут вызвать ошибку "Filter Failed". Используйте команду ldd для проверки зависимостей:
      ldd /usr/lib/cups/filter/rastertospl
    • Если у вас возникли ошибки о недостающих библиотеках, установите необходимые пакеты, как показано в ваших логах.
  3. Установка нужных пакетов:

    • Ваша проблема может быть вызвана отсутствием пакетов или фильтров. Попробуйте установить пакеты, такие как printer-driver-hpijs или foomatic-filters. Используйте следующие команды (замените apt-get на pacman для ArchLinux):
      sudo pacman -S foomatic-db-engine foomatic-filters
  4. Перезапуск CUPS:

    • После установки новых драйверов или пакетов обязательно перезапустите службу CUPS:
      sudo systemctl restart org.openprinting.cups-daemon.service
  5. Проблемы с Ghostscript:

    • Обратите внимание, что некоторые версии Ghostscript могут быть несовместимы с CUPS. Убедитесь, что у вас установлена последняя версия Ghostscript. Если нужно, установите обновленную версию:
      sudo pacman -S ghostscript
  6. Переустановка принтера через CUPS:

    • Попробуйте удалить конфигурацию принтера в веб-интерфейсе CUPS (обычно доступном по адресу http://localhost:631) и заново его установить, выбрав правильный PPD файл для вашего принтера.
  7. Работа с общими библиотеками:

    • В случае ошибок, связанных с отсутствующими библиотеками (например, libcupsimage.so.2), убедитесь, что установлен соответствующий пакет:
      sudo pacman -S libcups
  8. Очистка системного пространства:

    • Убедитесь, что на диске достаточно места. Для этого используйте команды:
      df -h
      sudo ncdu /
  9. Проверка сетевого соединения:

    • Если ваш принтер подключен по сети, убедитесь, что он доступен. Проведите тест с помощью ping или проверьте сетевые настройки.

Заключение

Следуя приведённым шагам, вы сможете диагностировать и, надеемся, исправить проблему с печатью через CUPS на ArchLinux. Искренне надеемся, что эти рекомендации облегчат вам процесс устранения ошибки "Filter Failed". Если проблемы сохраняются, стоит обратиться к специализированным форумам ArchLinux или официальной документации, где вы можете найти дополнительную поддержку сообщества.

Оцените материал
Добавить комментарий

Капча загружается...