Назад | Перейти на главную страницу

CUPS забивает принтер и останавливает работу?

У нас есть 2 подключенных к сети HP LaserJet 400 M401dne, и они нужны нам для печати PDF-файлов счетов непосредственно из командной строки сервера.

Я добавил принтеры в CUPS и создал класс печати (счета-фактуры), содержащий эти два принтера.

Затем я установил задание cron, которое проверяет каталог на наличие файлов счетов и отправляет их на печать, когда обнаруживает их, а затем перемещает файлы.

lpr -P invoices - # 4 {список файлов pdf}

Однако кажется, что всякий раз, когда нужно распечатать более 4-5 счетов-фактур одновременно, что-то происходит - принтер перестает отвечать на чашки, а задание на чашки остается в очереди навсегда, не распечатывая и не отменяя печать.

Тем временем принтер по-прежнему принимает распечатки из системы печати Windows, которая использует его параллельно.

Кажется, что работает, так это отменить все задания на печать в чашках, включить аппаратный цикл принтера и сделать cupsdisable / cupsenable (не уверен, нужно ли последнее).

Однако должно быть какое-то решение, чтобы CUPS не отправлял задания на принтер, прежде чем он будет готов их принять.

В чем может быть проблема?

Возможно, мне нужно выбрать другой протокол печати? На данный момент я использую то, что написала веб-страница администратора CUPS:

dnssd: // HP% 20LaserJet% 20400% 20M401dn% 20 (636536) ._ipp._tcp.local /? uuid = 564e4835-5030-3038-3636-c8cbb8636536

Но, может быть, мне стоит использовать IPP или другой протокол? Если да, как я могу узнать имя очереди IPP для принтера HP?

Или, возможно, мне следует использовать другой драйвер принтера вместо: HP LaserJet 400 M401dne Postscript (рекомендуется)?

UPD: lpstat - v вывод:

device for invoices: ///dev/null
device for default: ///dev/null
device for HP_LJ_PRO_400_1: dnssd://HP%20LaserJet%20400%20M401dn%20(072E87)._ipp._tcp.local/?uuid=564e4633-4430-3134-3232-6c3be5072e87
device for HP_LJ_PRO_400_2: dnssd://HP%20LaserJet%20400%20M401dn%20(636536)._ipp._tcp.local/?uuid=564e4835-5030-3038-3636-c8cbb8636536
device for HP_HP_LaserJet_P2055dn: dnssd://HP%20LaserJet%20P2055dn%20%5B0E39EF%5D._pdl-datastream._tcp.local/
device for Ricoh_1515: lpd://192.168.100.33/lp

Я рекомендую использовать печать сокетов на порту 9100:

device for invoices: socket://172.16.2.40:9100

Легкая конфигурация:

# lpadmin -p invoices -v socket://172.16.2.40:9100 -E 

Пока кажется, что лучший вариант - использовать ipp: // printer-ip / для добавления этого конкретного принтера.

Использование универсального драйвера HP LJ PCL6 (PCL5 был рекомендован где-то в сети как лучший драйвер для печати PDF-файлов на принтерах HP) привело к проблеме, заключающейся в том, что принтер не принимает параметр копирования (параметр lpr - #), поэтому я вернулся к рекомендованному CUPS Postscript драйвер для тех.

При использовании интерфейса socket: // все еще были некоторые проблемы с заданиями на печать, которые больше не принимали задания, и они зависали в очереди со статусом «Подключение к принтеру», и сервер cups необходимо перезапустить вручную, чтобы это исчезло.

После перехода на ipp этого не произошло.