Не удается копировать ppd файл cups

Обновлено: 04.07.2024

Раздел "Ограничение отображения сетевых принтеров в LibreOffice" применим только к
Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
с установленным обновлением БЮЛЛЕТЕНЬ № 20210611SE16 (очередное обновление 7)

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

Для удаленного использования сервера печати необходимо от имени администратора через механизм sudo выполнить следующие команды:

sudo cupsctl --remote-admin --share-printers --remote-any

sudo cupsctl ServerAlias=*

В конфигурационном файле /etc/cups/cupsd.conf рекомендуется удалить следующую строку:

и вставить следующую строку:

Значение параметра DefaultAuthType должно быть Basic.

Перезапустить сервис печати CUPS командой:

sudo service cups restart

Проверить состояние сервиса печати CUPS можно командой:

Для дальнейшей настройки открыть браузер и ввести адрес:

Нажать кнопку "Добавить принтер", на запрос авторизации ввести имя и пароль пользователя, входящего в группу lpadmin.

При установке USB-принтер должен отображаться в списке устройств на странице Добавить принтер .

Убедитесь в правильности настроек, нажав на кнопку Print Test Page ( Печать тестовой страницы ) в выпадающем меню Maintenance ( Обслуживание ). Если принтер не печатает, но вы уверены в правильности всех настроек, попытайтесь сменить драйвер принтера на другой.

Печать файла можно выполнить командой:

Добавление сетевого принтера из командной строки можно выполнить командой:

lpadmin -p printername -E -v socket://11.22.33.44 -m drv:///sample.drv/laserjet.ppd

Раздел "Ограничение отображения сетевых принтеров в LibreOffice" применим только к Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с установленным обновлением БЮЛЛЕТЕНЬ № 20210611SE16 (очередное обновление 7)

По умолчанию при выборе устройства печати в LibreOffice (Файл - Печать - Принтер) в списке устройств отображаются все обнаруженные сетевые принтеры. Для того, чтобы в списке доступных устройств отображались только принтеры, добавленные через менеджер печати Fly, нужно добавить в файл /etc/cups/client.conf строчку:

после чего перезапустить службу cups:

Для централизованного управления можно копировать файлы /etc/cups/printers.conf и /etc/cups/ppd/* с компьютера с настроенным принтером на удаленный компьютер при помощи scp:

Пользователь, от которого будут выполняться действия по настройке принтеров, должен быть добавлен в группу lpadmin.
Пользователь, от которого будут выполняться действия по маркировке заданий, должен быть добавлен в группу lpmac ( groupadd -g 900 lpmac если не создана).
Это может быть один и тот же пользователь.

Для удаленного использования сервера печати необходимо от имени администратора через механизм sudo выполнить следующие команды:

sudo cupsctl --remote-admin --share-printers --remote-any
sudo cupsctl ServerAlias=*

В конфигурационном файле /etc/cups/cupsd.conf рекомендуется удалить следующую строку:

и вставить следующую строку:

Значение параметра DefaultAuthType должно быть Basic.
Далее выполнить вход на сервере печати от имени учетной записи, входящей в группу lpadmin, и настроить принтеры (установить политику parsec и назначить максимальные допустимые уровни заданий). Настройка принтеров может быть выполнена с использованием утилиты fly-admin-printer (см. электронную справку).

Пользователь, от которого будут выполняться действия по настройке принтеров, должен быть добавлен в группу lpadmin.
Пользователь, от которого будут выполняться действия по маркировке заданий, должен быть добавлен в группу lpmac.
Это может быть один и тот же пользователь.
Для удаленного использования сервера печати необходимо от имени администратора через механизм sudo выполнить следующие команды:

sudo cupsctl --remote-admin --share-printers --remote-any
sudo cupsctl ServerAlias=*

В конфигурафионном файле /etc/cups/cupsd.conf рекомендуется удалить следующие строки:

и вставить следующую строку:

Значение параметра DefaultAuthType должно быть Basic.
Далее выполнить вход на сервере печати от имени учетной записи, входящей в группу lpadmin, и настроить принтеры (установить политику parsec и назначить максимальные допустимые уровни заданий). Настройка принтеров может быть выполнена с использованием утилиты fly-admin-printer (см. электронную справку).

На клиентских машинах должны быть созданы файлы /etc/cups/client.conf. В файле конфигурации клиента client.conf должен быть задан один параметр ServerName, определяющий имя сервера печати, например:

Для выполнения действий по управлению принтерами и очередями печати необходимо создать в ALD учетную запись группы администраторов печати:

Для выполнения действий по маркировке заданий необходимо создать в ALD группу

  • lpmac_ald (только для версии Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) и при использовании в домене ALD);
  • lpmac (для всех остальных версий ОС Astra Linux Special Edition)

sudo ald-admin group-add lpmac_ald

sudo ald-admin group-add lpmac

В файле /etc/cups/cups-files.conf в значении параметра SystemGroup установить значение print_admins.
Создать в ALD учетную запись администратора печати и добавить ее в группу администраторов печати ALD, например выполнив команды:

sudo ald-admin user-add ald_print_admin
sudo ald-admin group-mod print_admins --add-users --user=ald_print_admin

Добавить администратора печати в группу

  • lpmac_ald (только для версии ОС Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) и при использовании в домене ALD);
  • lpmac (для всех остальных версий ОС Astra Linux Special Edition)

sudo ald-admin group-mod lpmac_ald --add-users --user=ald_print_admin

sudo ald-admin group-mod lpmac --add-users --user=ald_print_admin

Для обеспечения совместной работы сервера печати с ALD необходимо:
1) создать в БД ALD с помощью утилиты администрирования ALD принципала, соответствующего серверу печати. Принципал создается с автоматически сгенерированным случайным ключом:

2) ввести созданного принципала в группу сервисов mac, используя следующую команду:

sudo ald-admin sgroup-svc-add ipp/server.my_domain --sgroup=mac

3) создать файл ключа Kerberos для сервера печати с помощью утилиты администрирования ALD ald-client, используя следующую команду:

4) от имени учетной записи администратора с использованием механизма sudo выполнить следующие команды:

sudo cupsctl --remote-admin --share-printers --remote-any
sudo cupsctl ServerAlias=*
sudo cupsctl DefaultPolicy=default
sudo cupsctl MarkerUser=ipp
sudo cupsctl ServerName=server.my_domain
sudo cupsctl MacEnable=On
sudo cupsctl DefaultAuthType=Negotiate

5) осуществить перезапуск сервиса печати CUPS, выполнив команду:

sudo service cups restart

Далее выполнить вход на сервере печати от имени учетной записи, входящей в группу ALD print_admins, и настроить принтеры (установить политику parsec и назначить максимальные допустимые уровни заданий). Настройка принтеров может быть выполнена с использованием утилиты fly-admin-printer (см. электронную справку).

На клиентских машинах должны быть созданы файлы /etc/cups/client.conf. В файле конфигурации клиента client.conf должен быть задан один параметр ServerName, определяющий имя сервера печати, например:

  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с установленным оперативным обновлением БЮЛЛЕТЕНЬ № 20211008SE16 (оперативное обновление 9);
  • Astra Linux Common Edition 2.12.43.

в систему управления печатью добавлены следующие возможности:

    Возможность ограничения пользователем видимости заданий других пользователей: опция "Только текущего пользователя" в меню списка заданий. Опция включает отображений заданий только текущего пользователя. Все другие задания будут скрыты;

Возможность принудительного ограничения администратором видимости пользователями заданий других пользователей. Для включения этой возможности добавить в файл /etc/cups/cupsd.conf строку:

и осуществить перезапуск сервиса печати CUPS. В результате включения этой опции пользователям будут разрешено видеть только свои задания.

This article covers all non-specific (ie, not related to any one printer) troubleshooting of CUPS and printing drivers (but not problems related to printer sharing), including methods of determining the exact nature of the problem, and of solving the identified problem.

Contents

Debug log

The best way to get printing working is to set 'LogLevel' in /etc/cups/cupsd.conf to:

And then viewing the output from /var/log/cups/error_log like this:

The characters at the left of the output stand for:

  • D=Debug
  • E=Error
  • I=Information
  • And so on

These files may also prove useful:

Print a document and watch error_log to get a more detailed and correct image of the printing process.

Problems resulting from upgrades

Issues that appeared after CUPS and related program packages underwent a version increment

CUPS stops working

The chances are that a new configuration file is needed for the new version to work properly. Messages such as "404 - page not found" may result from trying to manage CUPS via localhost:631, for example.

To use the new configuration, copy /etc/cups/cupsd.conf.default to /etc/cups/cupsd.conf (backup the old configuration if needed) and restart CUPS to employ the new settings.

All jobs are "stopped"

The factual accuracy of this article or section is disputed.

Reason: This seems a rather brute-force way of fixing this; maybe the printer is simply disabled? (Discuss in Talk:CUPS/Troubleshooting)

If all jobs sent to the printer become "stopped", delete the printer and add it again. Using the CUPS web interface, go to Printers > Delete Printer.

To check the printer's settings go to Printers, then Modify Printer. Copy down the information displayed, click 'Modify Printer' to proceed to the next page(s), and so on.

All jobs are "The printer is not responding"

On networked printers, you should check that the hostname in the printer's URI resolves to the printer's IP address via DNS, e.g. if your printer's connection looks like this:

then the hostname 'BRN_020554' needs to resolve to the printer's IP from the server running CUPS. If Avahi is being used, ensure that Avahi's hostname resolution is working.

Alternatively, replace the hostname used in the URI with the printer's IP address.

The PPD version is not compatible with gutenprint

And restart CUPS (as pointed out in gutenprint's post-install message).

Issues Relating to Upgrade 2.3.3-3 -> 2.3.3+106+ga72b0140e-1

As a side-effect of switching Arch's CUPS upstream from Apple's senescent original to the actively-developed OpenPrinting fork in November 2020, the names of the CUPS systemd services were changed. The changes map as follows:

  • org.cups.cups-lpd.socket→cups-lpd.socket
  • org.cups.cups-lpd@.service→cups-lpd@.service
  • org.cups.cupsd.socket→cups.socket
  • org.cups.cupsd.service→cups.service
  • org.cups.cupsd.path→cups.path

The CUPS install file for that upgrade recommends:

In addition to disabling the services under their own name and re-enabling them under the new, if you have made any non-standard modifications such as dropin files (e.g., /etc/systemd/system/org.cups.cupsd.service.d ) or adding the services as "Wants mw-headline" >Networking issues

Unable to add printer or message "print in progress" but nothing happens

In GNOME Printer settings for example, you could find troubles adding your printer, even though you have installed the drivers. You can try installing system-config-printer and executing it via terminal, and adding the printer from there (for instance using LPD/LPR queue 'PASSTHRU').

Unable to locate printer

This problem may also arise when you have a firewall. You may need to disable your firewall or set the right rules. Using system-config-printer to detect network printers will do that automatically.

Similarly, being connected to a VPN may also cause CUPS to be unable to locate the printer. Disabling any VPN connections temporarily for printing can help fixing it.

Old CUPS server

As of CUPS version 1.6, the client defaults to IPP 2.0. If the server uses CUPS <= 1.5 / IPP <= 1.1, the client does not downgrade the protocol automatically and thus cannot communicate with the server. A workaround is to append the version=1.1 option documented at [1] to the URI.

Unable to locate PPD file

Make sure Avahi is set up correctly. In particular, make sure nss-mdns is installed and set up in /etc/nsswitch.conf .

Finding URIs for Windows print servers

Sometimes Windows is a little less than forthcoming about exact device URIs (device locations). If having trouble specifying the correct device location in CUPS, run the following command to list all shares available to a certain windows username:

This will list every share available to a certain Windows username on the local area network subnet, as long as Samba is set up and running properly. It should return something like this:

What is needed here is first part of the last line, the resource matching the printer description. So to print to the EPSON Stylus printer, one would enter:

as the URI into CUPS.

USB printers

Conflict with SANE

If you are also running SANE, it's possible that it is conflicting with CUPS. To fix this create a Udev rule marking the device as matched by libsane:

Conflict with usblp

USB printers can be accessed using two methods: The usblp kernel module and libusb. The former is the classic way. It is simple: data is sent to the printer by writing it to a device file as a simple serial data stream. Reading the same device file allows bi-di access, at least for things like reading out ink levels, status, or printer capability information (PJL). It works very well for simple printers, but for multi-function devices (printer/scanner) it is not suitable and manufacturers like HP supply their own backends. Source: here.

Warning: As of cups version 1.6.0, it should no longer be necessary to blacklist the usblp kernel module. If you find out this is the only way to fix a remaining issue please report this upstream to the CUPS bug tracker and maybe also get in contact with Till Kamppeter (Debian CUPS maintainer). See upstream bug for more info.

If you have problems getting your USB printer to work, you can try blacklisting the usblp kernel module:

Custom kernel users may need to manually load the usbcore kernel module before proceeding.

Once the modules are installed, run:

Then plug in the printer and inspect the output to see if it was detected.

If you are using usblp , the output should indicate that the printer has been detected like so:

If you blacklisted usblp , you will see something like:

USB autosuspend

Bad permissions

Check the permissions of the printer USB device. Get the bus and device number from lsusb :

Check the ownership by looking in devfs:

The cups daemon runs as user "cups" and belongs to group "lp", so either this user or group needs read & write access to the USB device. If you think the permissions look wrong, you can change the group and permission temporarily:

Then check if cups can now see the USB device correctly.

To make a persistent permission change that will be triggered automatically each time the USB device is attached, add the following line:

After editing, reload the udev rules with this command:

HP issues

CUPS: "/usr/lib/cups/backend/hp failed"

Note: There might need to set permissions issues right.

CUPS: Job is shown as complete but the printer does nothing

This happens on HP printers when you select the (old) hpijs driver (e.g. the Deskjet D1600 series). Use the hpcups driver instead.

Some HP printers require their firmware to be downloaded from the computer every time the printer is switched on. If there is an issue with udev (or equivalent) and the firmware download rule is never fired, you may experience this issue. As a workaround, you can manually download the firmware to the printer. Ensure the printer is plugged in and switched on, then run

CUPS: '"foomatic-rip" not available/stopped with status 3'

If receiving any of the following error messages in /var/log/cups/error_log while using a HP printer, with jobs appearing to be processed while they all end up not being completed with their status set to 'stopped':

make sure hplip has been installed.

CUPS: "Filter failed"

A "filter failed" error can be caused by any number of issues. The CUPS error log (by default /var/log/cups/error_log ) should record which filter failed and why.

Missing ghostscript

Install ghostscript ( /usr/lib/cups/filter/gstoraster needs it to run).

Missing foomatic-db

Install foomatic-db and foomatic-db-ppds . This fixes it in some cases.

Avahi not enabled

Start, and enable the avahi-daemon service.

Out-of-date plugin

This error can also indicate that the plugin is out of date (version is mismatched) and may occur after a system upgrade, possibly showing up as a Plugin error message in the logs. If you have installed hplip-plugin AUR you will need to update the package, otherwise re-run hp-setup -i to install the latest version of the plugin.

Outdated printer configuration

As of hplip-plugin AUR v3.17.11 hpijs is not longer available. If you have printers using hpijs they will fail to print. You must modify them and select the new hpcups driver instead.

You can check if this is your case looking at cups error_log:

Client and host both run CUPS with hpcups

Note: The following issue has been described on FreeBSD forum. Read more here.

A bug seems to affect CUPS when a host shares a physically connected HP printer using hpcups drivers from hplip , and a client adds the shared printer in is own CUPS server through IPP, using hpcups driver too. On every attempt to print a page from the client, the jobs page from the client returns indefinitly "Sending data to printer" while the same page from the host returns "Filter failed". It appears that the job runs through the CUPS filter twice: a first time on client-side, and a second time on host-side, which makes it fails on host-side. The same bug should not be observed when printing from a Windows client, or when printing directly on the host. There are some workarounds here (use only one method):

CUPS: prints only an empty and an error-message page on HP LaserJet

This article or section is out of date.

Reason: The bug was reported in 2012; is this still an issue? (Discuss in Talk:CUPS/Troubleshooting)

There is a bug that causes CUPS to fail when printing images on HP LaserJet (in my case 3380). The bug has been reported and fixed by Ubuntu. The first page is empty, the second page contains the following error message:

In order to fix the issue, run the following command as root:

CUPS: "File "/usr/lib/cups/filter/rastertospl" not available

After the printer is connected by other means to the network, setting up the HP 107w Laser printer is possible through the CUPS web interface; but this error prevents printing.

It seems that support for this printer is not provided by hplip. However, drivers can be installed using HP's install scripts and PPD file found at the HP downloads page.

Extract the .zip and read this gist for further details and instructions.

HPLIP 3.13: Plugin is installed, but HP Device Manager complains it is not

The issue might have to do with the file permission change that had been made to /var/lib/hp/hplip.state . To correct the issue, a simple chmod 644 /var/lib/hp/hplip.state and chmod 755 /var/lib/hp should be sufficient. For further information, please read this link.

hp-toolbox: "Unable to communicate with device"

Virtual CDROM printers

This can also be caused by printers such as the P1102 that provide a virtual CD-ROM drive for MS Windows drivers. The lp dev appears and then disappears. In that case, try the usb-modeswitch and usb-modeswitch-data packages, that lets one switch off the "Smart Drive" (udev rules included in said packages).

Networked printers

This can also occur with network attached printers using dynamic hostnames if the avahi-daemon is not running. Another possibility is that hp-setup failed to locate the printer because the IP address of the the printer changed due to DHCP. If this is the case, consider adding a DHCP reservation for the printer in the DHCP server's configuration.

hp-setup asks to specify the PPD file for the discovered printer

Furthermore, when selecting a PPD file in hp-setup's graphical mode, the field does not update and no error message is shown.

Or, if in interactive (console) mode, you may encounter something similar to this even when providing a correct path to a valid ppd file:

The solution is to install and start cups before running hp-setup .

hp-setup: "Qt/PyQt 4 initialization failed"

Install python-pyqt4 AUR , which is an optdepend of hplip . Alternatively, to run hp-setup with the command line interface, use the -i flag.

hp-setup: finds the printer automatically but reports "Unable to communicate with device" when printing test page immediately afterwards

This at least happens to hplip 3.13.5-2 for HP Officejet 6500A through local network connection. To solve the problem, specify the IP address of the HP printer for hp-setup to locate the printer.

hp-setup: "KeyError: 'family-class'"

If adding a printer fails silently in the UI or you receive a KeyError: 'family-class' traceback from hp-setup , the /usr/share/hplip/data/models/models.dat may need to be manually updated. Check if family-class=Undefined is defined the section for your printer, if not add it:

Other

Printer "Paused" or "Stopped" with Status "Rendering completed"

Low ink

When low on ink, some printers will get stuck in "Rendering completed" status and, if it is a network printer, the printer may even become unreachable from CUPS' perspective despite being properly connected to the network. Replacing the low/depleted ink cartridge(s) in this setting will return the printer to "Ready" status and, if it is a network printer, will make the printer available to CUPS again.

Note: If you use third-party ink cartridges, the ink levels reported by the printer may be inaccurate. If you use third-party ink and your printer used to work fine but is now getting stuck on "Rendering completed" status, replace the ink cartridges regardless of the reported ink levels before trying other fixes.

Printing fails with unauthorised error

If a remote printer requests authentication CUPS will automatically add an AuthInfoRequired directive to the printer in /etc/cups/printers.conf . However, some graphical applications (for instance, some versions of LibreOffice [2]) have no way to prompt for credentials, so printing fails. To fix this include the required username and password in the URI. See [3], [4].

Unknown supported format: application/postscript

Comment the lines:

from /etc/cups/mime.convs , and:

Print-Job client-error-document-format-not-supported

Try installing the foomatic packages and use a foomatic driver.

Unable to get list of printer drivers

(Also applicable to error "-1 not supported!")

lp: Error - Scheduler Not Responding

If you get this error, ensure CUPS is running, the environmental variable CUPS_SERVER is unset, and that /etc/cups/client.conf is correct.

"Using invalid Host" error message

Try adding ServerAlias * into /etc/cups/cupsd.conf .

Cannot print from LibreOffice

If you can print a test page from the CUPS web interface, but not from LibreOffice, try to install the a2ps package.

Printer output shifted

This seems to be caused by the wrong page size being set in CUPS.

Printer becomes stuck after a problem

When an issue arises during printing, the printer in CUPS may become unresponsive. lpq reports that the printer is not ready , and it can be reactivated using cupsenable . In the CUPS web interface, the printer is shown as Paused, and can be reactivated by resuming the printer.

To automatically have CUPS reactivate the printer, change ErrorPolicy from the default stop-printer to retry-current-job .

Samsung: URF ERROR - Incomplete Session by time out

This error is usually encountered when printing files over the network through IPP to a Samsung printer, and is solved by using the samsung-unified-driver AUR package.

Note: The corresponding error code 11-1112 corresponds to an internal wiring problem with the printer, so contacting Samsung's tech support is futile.

Brother: Printer prints multiple copies

Sometimes the printer will print multiple copies of a document (for instance a MFC-9330CDW printed 10 copies). The solution is to update the printer firmware.

Regular user cannot change properties of the printer or remove certain jobs

If a regular user needs to be able to change the printers properties or manage the printer queue, the user may need to be added to the sys group.

Cannot login into web interface

Check if there is more than one cupsd process running. If this is the case then stop cups service, kill all processes named cupsd and start cups service again.

Эта статья содержит инструкции по настройки CUPS для конкретных моделей принтеров. Если ваш принтер не упомянается здесь, или если ни один из перечисленных драйверов не работает, посмотрите на сайте OpenPrinting.

Примечание: Если вы добавите принтер в этот список, подумайте о том, чтобы внести свой вклад в OpenPrinting - таким образом и для пользователей других дистрибутивов эта информация будет полезна!

Contents

Brother

Сетевые принтеры

Для сетевых принтеров используйте ipp://printer_ip/ipp/port1 в качестве адреса принтера. Для некоторых старых принтеров это может не сработать. Если не сработало, попробуйте lpd://printer_ip/BINARY_P1 .

Специализированные драйверы

Brother предоставляет специализированные драйверы на своем веб-сайте либо в исходном архиве, так и в формате rpm или deb. Сборка драйверов принтера Brother охватывает создание PKGBUILD из существующих пакетов RPM.

Примечание: Исходные пакеты могут быть лучшей альтернативой пакетам rpm, если они содержат все необходимые файлы.

Установка вручную из пакетов RPM

Важно: В идеале это должно быть автоматизировано в PKGBUILD

Установите пакет rpmextract и извлеките оба пакета rpm с помощью rpmextract.sh . Извлечение обоих файлов создаст каталог var и usr - переместите содержимое обоих каталогов в соответствующие корневые каталоги.

Запустите файл оболочки CUPS в /usr/local/Brother/cupswrapper . Это должно автоматически установить и настроить ваш принтер brother.

Для некоторых драйверов может потребоваться установить 32-битные библиотеки из multilib.

Обновление прошивки

На этом этапе у вас будут соответствующие данные, чтобы получить ссылку на прошивку от Brother. Файл должен выглядеть примерно так:

Отправьте этот файл Brother:

В response.xml вы найдете тег <PATH> , содержащий URL-адрес загрузки прошивки. Затем загрузите прошивку, нажмите ее на принтер и дайте принтеру обработать ее. Прежде чем это сделать, измените пароль администратора на что-то известное, он будет использоваться как пользователь для входа на сайт FTP (ОЧЕНЬ плохая практика, не делайте этого).

При этом принтер перезагрузится, и последняя версия прошивки будет установлена и (надеюсь) проблемы с печатью будут решены.

Canon

Принтер Драйвер/фильтр Примечание
iP4300 Gutenprint Или используйте драйвер TurboPrint.
LBP810 Canon CAPT
LBP1120
LBP1210
LBP2900
LBP3000
LBP3010
LBP3018
LBP3050
LBP3100
LBP3108
LBP3150
LBP3200
LBP3210
LBP3250
LBP3300
LBP3310
LBP3500
LBP5000
LBP5050 series
LBP5100
LBP5300
LBP6000
LBP6018
LBP6020
LBP6200
LBP6300
LBP6300n
LBP6310dn
LBP7010C
LBP7018C
LBP7200Cdn (сетевой режим)
LBP7200C series
LBP7210Cdn
LBP9100C
MF635Cx cndrvcups-lb-bin AUR
MF4720w
MG4200 series cnijfilter-mg4200 AUR Избегайте добавления принтера через веб интерфейс, т.к. он не найдет файл PPD.
MX490 cnijfilter2 AUR
cnijfilter2-bin AUR
MX492
TS8050 Без cnijfilter2 AUR печать завершится ошибкой фильтра или вы можете получить "рендеринг завершен", а принтер ничего не напечатает
TS9020 canon-ts9020 AUR
Принтер Драйвер/фильтр Примечание

Некоторые принтеры Canon будут использовать аналогичную настройку для iP4500, поэтому рассмотрите возможность изменения пакета cnijfilter-ip4500 AUR для других аналогичных принтеров.

CARPS

Некоторые из принтеров Canon используют проприетарный драйвер Canon Advanced Raster Printing System (CARPS). Rainbow Software удалось перепроектировать формат данных CARPS и успешно создать драйвер CUPS CARPS, который доступен как carps-cups-git AUR . На странице GitHub проекта представлен список поддерживающих принтеров.

USB через IP (BJNP)

Некоторые принтеры Canon используют проприетарный протокол USB по протоколу IP BJNP для связи по сети. Для этого есть бэкэнд CUPS, который доступен как cups-bjnp AUR .

cnijfilter

Некоторые принтеры используют поддержку драйверами cnijfilter протокола cnijnet . Чтобы выяснить URI принтера выполните

This article or section needs expansion.

Reason: URI выглядит как cnijnet:/ , за которым следует MAC-адрес принтера. Если это так, то было бы неплохо упомянуть об этом здесь. (Discuss in Talk:CUPS (Русский)/Printer-specific problems (Русский))

Epson

epson-inkjet-printer-escpr AUR и epson-inkjet-printer-escpr2 AUR - это набор драйверов для струйных принтеров Epson Inkjet (ESC/P-R) для Linux..

Принтер Драйвер/фильтр Примечание
AcuLaser CX11(NF) epson-alcx11-filter AUR
AcuLaser C900 Этот принтер использует драйвер Epson с URI устройства 'usb://EPSON/AL-C900', и для его запуска может понадобиться служба pipsplus.
EP-50V epson-inkjet-printer-escpr2 AUR
EP-879A
EP-880A
ET-2700 epson-inkjet-printer-escpr AUR
ET-2750
ET-3700 epson-inkjet-printer-escpr2 AUR
ET-3750
ET-4750
EW-M571T epson-inkjet-printer-escpr AUR
EW-M670FT epson-inkjet-printer-escpr2 AUR
L380 epson-inkjet-printer-201601w AUR
L382
L4150 epson-inkjet-printer-escpr AUR
L4160
L6160 epson-inkjet-printer-escpr2 AUR
L6170
L6190
LP-S5000 Этот принтер требует специализированный драйвер от Avasys.
PM-520 epson-inkjet-printer-escpr2 AUR
PX-M5080F
PX-M5081F
PX-M680F
PX-M7070FX
PX-M780F
PX-M781F
PX-M884F
PX-S5080
PX-S7070X
PX-S884
TX125 epson-inkjet-printer-n10-nx127 AUR
WF-3620 epson-inkjet-printer-escpr AUR
WF-3720 epson-inkjet-printer-escpr2 AUR
WF-4720
WF-4730
WF-4740
WF-7210
WF-7710
WF-7720
WF-C869R
XP-446 epson-inkjet-printer-escpr AUR
XP-5100 epson-inkjet-printer-escpr2 AUR
XP-6000
XP-8500
XP-15000
Принтер Драйвер/фильтр Примечание

Утилиты

escputil

escputil является частью пакета gutenprint и выполняет некоторые служебные функции на принтерах Epson, таких как очистка сопел.

mtink

Это монитор состояния принтера, который позволяет получить оставшееся количество чернил, распечатать тестовые шаблоны, сбросить принтер и очистить сопло. Он использует интуитивно понятный графический интерфейс пользователя.

Stylus-toolbox

Это графический интерфейс с использованием драйверов escputil и cups. Он поддерживает почти все USB-принтеры Epson и отображает количество чернил, может очищать и выравнивать печатающие головки и печатать тестовые образцы.

Специализированные драйверы

Avasys

Важно: Этот раздел включает установку пакетов без pacman. В идеале эти направления должны быть автоматизированы с помощью PKGBUILD.

"Исходный" код драйвера доступен на веб-сайте avasys с японским языком. Он содержит 32-битный двоичный код, который вызовет проблему в 64-битной системе.

    пакеты psutils , bc , libstdc++5 ( lib32-libstdc++5AUR для 64-битной).
  • Загрузите исходный код драйвера.
  • Скомпилируйте и установите драйвер.

Если у вас есть проблемы в 64-битной системе, могут потребоваться некоторые другие библиотеки lib32. Пожалуйста, исправьте эту страницу, если это так.

Большинство принтеров HP будут работать с hplip , но некоторые - при использование hpoj AUR . Также некоторые лазерные принтеры поддерживаются foo2zjs-nightly AUR .

Принтер Драйвер/фильтр Примечание
DeskJet 710C pnm2ppa AUR
DeskJet 712C
DeskJet 720C
DeskJet 722C
DeskJet 820se
DeskJet 820Cxi
DeskJet 1000Cse
DeskJet 1000Cxi
LaserJet P1606dn hplip + hplip-plugin AUR или foo2zjs-nightly AUR , или AirPrint.
LaserJet Pro MFP M126nw hplip + hplip-plugin AUR
LaserJet Pro MFP M281fdw hplip По состоянию на 2019-04-18 нет проприетарных драйверов
Photosmart 2575 hplip Или используйте драйвер hpijs с foomatic.
Принтер Драйвер/фильтр Примечание

HPLIP

Примечание: Начиная с hplip v3.17.11 hpijs больше не доступен. Если у вас есть принтеры, использующие hpijs, они не смогут работать. Вы должны перенастроить их и выбрать новый драйвер hpcups вместо hpijs.

hplip предоставляет драйверы для принтеров HP DeskJet, OfficeJet, Photosmart, Business Inkjet и некоторых принтеров LaserJet, а также предоставляет простой в использовании инструмент настройки. Смотрите список поддерживаемых принтеров здесь.

Чтобы запустить средство настройки с графическим интерфейсом пользователя:

Чтобы запустить средство настройки с интерфейсом командной строки:

Чтобы настроить непосредственно конфигурацию подключенного к сети принтера HP:

Чтобы запустить systray spool manager:

Чтобы создать URI для заданного IP-адреса:

Файлы PPD находятся в /usr/share/ppd/HP/ .

Если ваш принтер перечислен как требующий бинарный плагин, установите пакет hplip-plugin AUR из AUR. Если требуется бинарный плагин hplip-plugin AUR , вам нужно запустить службу org.cups.cupsd.service перед распознаванием PPD hplip .

hplip зависит от foomatic-db-engine , который запрещает появление списка драйверов при добавлении принтера в CUPS через веб-интерфейс (следующая ошибка: "Не удается получить список драйверов принтера"). Возможные обходные пути:

  • Либо: Установите первым hplip , затем извлеките файл PPD, соответствующий вашему принтеру, из /usr/share/ppd/HP/ . Далее удалите hplip полностью, а также любые ненужные зависимости. Наконец, установите принтер вручную через веб-интерфейс CUPS, выбрав файл PPD, который вы извлекли, а затем переустановите hplip . После перезагрузки у вас должен быть полностью работающий принтер.
  • Или: Удалите hplip , foomatic-db и foomatic-db-engine вместе с любыми ненужными зависимостями. Переустановите hplip и перезапустите CUPS. Установите ваш принтер с помощью веб-интерфейса CUPS, который теперь сможет автоматически найти драйверы. Перезагрузка не требуется.

foo2zjs

Konica Minolta

Принтер Драйвер/фильтр Примечание
Minolta Magicolor 1600W foomatic
Minolta Magicolor 1680MF
Minolta Magicolor 1690MF
Minolta Magicolor 2480MF
Minolta Magicolor 2490MF
Minolta Magicolor 2530DL
Minolta Magicolor 4690MF
Принтер Драйвер/фильтр Примечание

foo2zjs

Lexmark

Утилиты

Lexmark предоставляет утилиту с именем lexijtools с драйверами.

Специализированный драйверы

Lexmark предоставляет драйверы Linux для всего своего оборудования. Требуются следующие пакеты:

Драйверы необходимо загрузить с веб-сайта Lexmark. Предпочтительно создать пакет (смотрите Создание пакетов) и установить его. Вот PKGBUILD, который все еще нуждается в доработке, но дает представление о том, что нужно сделать.

Имейте в виду, что вы можете использовать автоматический установщик, но при этом оставленные изменения нельзя устранить через Pacman. PPD будет установлен в /usr/local/lexmark/lxk08/etc/ или аналогично, в зависимости от модели принтера.

Принтер Драйвер/фильтр Примечание
C110 foomatic
MC561 foomatic-db-nonfree
Принтер Драйвер/фильтр Примечание

Ricoh

Если ваше устройство чёрно-белое, установите openprinting-ppds-pxlmono-ricoh AUR , а если цветное — openprinting-ppds-pxlcolor-ricoh AUR . Обратите внимание, что копировальные устройства Ricoh иногда называются Savin, Gestetner, Lanier, Rex-Rotary, Nashuatec и/или IKON. Итак, если у вас есть устройство с одним из этих брендов, оно также поддерживается этими драйверами.

Для работы с дешёвыми "винпринтерами", которые поддерживают только GDI (серии Ricoh SP100 и SP200), попробуйте ricoh-sp100-git AUR .

Принтер Драйвер/фильтр Примечание
SP 112 ricoh-sp100-git AUR
SP 201n ricoh-sp100-git AUR
213W Generic PCL Laser Получите код WPS, удерживая кнопку Wi-Fi в течение 2 секунд, а затем нажмите кнопку выключения/включения.
Принтер Драйвер/фильтр Примечание

Samsung

The factual accuracy of this article or section is disputed.

Reason: Все драйверы cnijfilter предназначены для принтеров Canon - возможно, сообщать про cnijfilter будет лучше в разделе Canon? (Discuss in Talk:CUPS (Русский)/Printer-specific problems (Русский))

Для принтеров, требующим драйверы cnijfilter, найдите правильный драйвер в AUR

Принтер Драйвер/фильтр Примечание
ML-2010 splix
SCX-4200 splix
Новые принтеры? samsung-unified-driver AUR
Принтер Драйвер/фильтр Примечание

Xerox или FujiXerox

Специализированные драйверы

Phaser 3100MFP

Важно: Этот раздел включает в себя установку пакетов без pacman. В идеале эти направления должны быть автоматизированы с помощью PKGBUILD.

После того, как вы загрузили драйверы, выполните установку драйвера и примите лицензию:

Обратите внимание, что драйвер 32-битный, поэтому в системе x86_64 потребуется некоторые 32-битные библиотеки.

Для сканера создайте каталог /etc/sane.d, если он еще не существует, потому что это необходимо установщику:

Теперь установите драйвер:

Опять же, при установке x86_64 потребуются 32-битные библиотеки.

Phaser 6000B

Установите пакет xerox-phaser-6010 (архивированный из AUR). Драйвер может потребовать более ранние версии nettle и gnutls поскольку двоичный blob связан с более старыми версиями разделяемых библиотек, предоставляемых этими пакетами. Самые старые хорошо известные версии nettle-2.7.1-1 и gnutls-3.3.13-1 .

Phaser 6125N

Важно: Этот раздел включает в себя установку пакетов без pacman. В идеале эти направления должны быть автоматизированы с помощью PKGBUILD.

FujiXerox не поддерживает Linux на этой модели. Есть старый rpm-пакет, но, похоже, он не работает.

Известно, что слегка адаптированный специализированный драйвер работает из коробки.

Руководство по настройке системы печати Linux.

Всеобъемлющее руководство по настройке печати в Gentoo Linux. Это руководство охватывает локальную и сетевую печать.

18 February 2003

Печать на локальной машине, с использованием CUPS

Установка CUPS и foomaticInstalling CUPS and foomatic

Настройка печати в Gentoo Linux сравнительно безболезненная задача, Благодаря нескольким замечательным программам, таким как CUPS (Common Unix Printing System) и foomatic. Обе эти программы легко доступны из дерева Портэджей, и очень легки в установке для конечных пользователей.

Знайте, что cups кросс-десктопная система, т.е. следуя этим инструкциям Вы можете настроить печать и в GNOME и в KDE. Существуют и другие настройки, такие как KDE's print setup, но я уверен, что CUPS проще в настройке, и более масштабируемая.

Перед установкой CUPS, будет правильно добавить необходимые флаги для USE в файл /etc/make.conf

Редактирование /etc/make.conf

Добавьте cups и usb (если ваш принтер подключён к USB) к вашему листу переменных USE.

Для получения более полной информации о переменной USE, читайте USE HOWTO.

Установка необходимых пакетов

Установка модулей ядра

В зависимости от типа подключения принтера, необходимо активировать соответствующий параллельный или USB порт в ядре.

Для включения поддержки USB принтера, зайдите в USB support и включите Support for USB и USB Printer support. Оба этих модуля будут установлены как usbcore.o и printer.o в директории, где хранятся модули. Я советую использовать модули, т.к. при этом нет необходимости перезагружать компьютер.

Если Вы не уверенны как компилировать ядро, официальный Linux Kernel-HOWTO находится здесь. Убедитесь, что вы разобрались, как компилировать и устанавливать новые модули без пересборки ядра и перезагрузки компьютера. Это действительно экономит время.

После того как ядро построено, и Ваш компьютер перезапущен, время загрузить требуемые модули:

Загрузка USB модулей

После того, как модули нормально загрузились, подключите принтер, и проверьте /var/log/messages. что бы убедиться, что он обнаружен системой.

Если Вы используете что либо отличное от sysklogd, Ваш файл логов ядра может быть другим.

Вы должны увидеть что то вроде этого:

Вывод /var/log/messages

Если Вы используете принтер с параллельным портом, убедитесь что, он подключен перед перезагрузкой. Когда система подымится, запустите dmesg и убедитесь, что ядро обнаружило Ваш принтер.

Перед тем как настраивать принтер с CUPS, проверим его простой низкоуровневой командой.

Тест принтера с помощью cat

Для принтеров с параллельным портом:

Специализированные драйвера принтеров

Перед тем как вы будете использовать foomatic для генерации PPD файлов, может возникнуть необходимость в нахождении драйверов для Вашего принтера от третьей стороны. Например, Epson обеспечивает драйверами принтеров для некоторых open source операционных систем. Однако, как в случае с Epson, многие из этих драйверов не open source.

Если Вы используете, притер HP Inkjet, необходимо установить драйвера для принтера hpijs. Этот драйвер управляет всеми необходимыми для работы принтера интерпретациями Postscript. hpijs предназначены только для принтеров HP Inkjet, но доступны из Портэджей для Вашего удобства. Документация от HP для драйверов hpijs расположена в /usr/share/doc/hpijs--<version>. Автор настоятельно рекомендует прочесть её.

Установка hpijs

Если Вы используете HP Laserjet, поддержка уже доступна через GNOME printing system. Если Вы используете не HP Inkjet printer, Вам не надо устанавливать эти специализированные драйвера.

Настройка файлов PPD

Теперь время приступить к настройке принтера и CUPS. Для корректной интерпретации Вашим принтером языка Postscipt, CUPS необходим PPD (Printer Postscript Definition) файл. Самый простой способ для создания PPD, это использовать foomatic.

Три составляющие информации нужны для корректной работы нижеследующей команды; Вам нужен Ваш printer ID, тип порта к которому подключен принтер, и драйвер для Вашего принтера (это был бы hpijs если бы Вам была необходима установка специальных драйверов как описано выше). printer ID и драйвера могут быть grep'нуты из базы данных foomatic (тип порта например /dev/lp0 или /dev/usb/lp0).

Перед использованием foomatic-configure, не забудьте запустить cupsdc .

Запуск cupsd

Общее использование foomatic

Теперь, более конкретный пример. Следующий код предполагает у Вас наличия принтера Epson Stylus Color 980. Конечно, Вы должны заменить его на свой для вашей модели принтера.

Использование foomatic с Stylus Color 980

Запомните, Вы должны использовать /dev/usb/lp0. если у Вас USB принтер.

Настройка CUPS

После того как принтер настроен, CUPS должен установить управление очередью печати. CUPS доступен через web броузер на порту 631 принт сервера.

CUPS имеет встроенный файл конфигурации для демона, который может, но не обязательно, быть модифицирован. Возможно вы захотите взглянуть на него, он называется /etc/cups/cupsd.conf.

Добавление CUPS в default runlevel, и запуск CUPS

CUPS daemon запущен, откройте Ваш броузер и зайдите сюда.

Надеюсь, что Вы увидите приветствие главной странице настройки. Нажмите на administration вверху страницы, и введите Ваш пароль root, или любого пользователя принадлежащего к группе lp . После аутентификации, нажмите на Add Printer в разделе printers . Введите требуемое имя, описание и расположение Вашего принтера. Вы должны выбрать имя принтера точно такое же как имя очереди которое Вы указали для foomatic. Теперь Вы должны выбрать устройство, к которому подключен Ваш принтер. Выберете тип принтера. На следующей странице выберите Ваш принтер из списка.

Конфигурация закончена! Нажмите на имя своего принтера, и попробуйте напечатать тестовую страницу. Вуаля, настройка Вашего принтера завершена!

Если принтер не работает по каким либо причинам, зайдите в директорию где хранятся логи CUPS, и посмотрите в файл error_log .

Перед началом, необходимо установить расширения для печати CUPS в Gimp's CUPS.

Установка gimp-print-cups

Теперь, откройте GIMP, и откройте картинку, или просто пустой лист, это не имеет значения, т.к. нам необходим только пункт меню File . Кликнете правой клавишей на изображении и выберете File/Print . Должен появиться диалог для printing, когда он появится, кликнете на new printer. Если Вашего принтера нет в списке, введите имя своего принтера, после чего выберете тип своего принтера. Ok, теперь, Вы установили печать из GIMP. Поиграйтесь с настройками и получите удовольствие.

Abiword

Abiword вызывает "segfaults" и "crashes" с CUPS-1.1.15-r2. Рекомендуется вернуться к версии .14 как к возможному решению проблемы.

TODO: добавить поддержку Abiword.

Ну все, локальная настройка печати завершена, теперь перейдем к сетевой.

Сетевая печать с использованием CUPS и SAMBA

Печать на Windows принтере, с Linux машины

Первое, SAMBA должна быть установлена, для работы следующих двух опций сетевой печати.

Установка SAMBA

Для получения большей информации о SAMBA, читайте официальный SAMBA HOWTO, находящийся здесь.

Использование foomatic с Samba

Найдите модель принтера и название драйвера, используя вышеупомянутый способ.

Теперь, направьте свой броузера сюда и вызовете конфигурационный GUI CUPS. Проделайте шаги по добавлению принтера, но на этот раз, на вопрос о порте принтера, введите smb://user:password@server/share . Это укажет CUPS путь к принтеру на Windows машине.

Использование Linux как Windows совместимый сервер печати

На Linux можно построить замечательный сервер печати, вообще то, на нём можно отлично построить любой сервер. Первый шаг, это редактирование файла /etc/samba/smb.conf для подгона ваших установок. Файл smb.conf содержит все установки, для того, что бы Ваша Linux машина выглядела как Windows NT server для любых Windows машин. Я включил очень полезный пример smb.conf ниже. Отредактируйте, если надо, для подгонки под ваше сетевое окружение.

Пример smb.conf

Теперь SAMBA настроена, перезапустите samba, идите к Windows машине и установите сетевой принтер. Проще простого, а?

Читайте также: