Из-за новой версии CUPS я внезапно потерял прямой путь к своим принтерам, который ранее был доступен в разделе /dev/usb/lpXXX
. Я использовал это для печати прямо из командной строки. echo "test" > /dev/usb/lp0
,
После поиска я нашел способ исправить это, комментируя blacklist usblp
в /etc/modprobe.d/blacklist.conf
. Это действительно работает, но если я сделаю это, CUPS больше не сможет общаться с любым принтером (и мне это нужно). Итак, как я могу иметь какой-то прямой путь к своему принтеру, и при этом работать CUPS?
ПРИМЕЧАНИЕ: некоторые из принтеров (чеков) не распознаются CUPS, поэтому lpr
не будут работать для них.
usblp
модуль для загрузки прошивки (напримерcat sihp1020.dl > /dev/usb/lp0
), аrmmod
потом - . (Действительно, уродливо.)libusb
бэкэнд CUPS для загрузки прошивки.DEVICE_URI="usb://HP/LaserJet%20102?serial=XYZ" /usr/lib/cups/backend/usb 1 1 1 1 '' ~/sihp1020.dl
это рабочийlibusb
способ отправки микропрограммы на принтер, который в ней нуждается (и что, используяusblp
, он был передан черезcat sihp1020.dl > /dev/usb/lp0
ранее). Это также может быть использовано для отправки произвольных файлов на USB-принтер, поэтому OP может попробовать.usblp
модулем, настроив его для использованияfile:/dev/usb/lp0
вместоusb:/dev/usb/lp0
.Ответы:
Я могу подтвердить, что вышеупомянутое решение прекрасно работает для меня. Я использую OpenWRT с CUPS для печати через маршрутизатор (TL-WR1043ND). Я использую HP Laserjet P1005. Эту прошивку нужно загружать каждый раз при включении. Я вставил прошивку
/usr/lib
и использовал следующую команду:Где
usb://HP/HP%20LaserJet%20P1005?serial=BB0417Y
нужно заменить на ваше. Вы можете найти его с помощью команды / usr / lib / cups / backend / usb.источник
Какая у вас версия CUPS и дистрибутив? Начиная с 1.4.x, CUPS можно использовать
libusb
для связи с узлами устройства USB вместо прохожденияlpusb
.источник
Можете ли вы указать марку и модель вашего принтера, пожалуйста? Кроме того, каков ваш дистрибутив? Кроме того, какая у вас версия CUPS? Мне не ясно, в чем проблема, описанная в первом абзаце. Вы можете настроить печать с помощью CUPS через USB. Это (обычно) не имеет большого значения. Можете ли вы рассказать о том, как вы его изначально настроили? Обратите внимание , что CUPS имеет
lpr
утилиту, которая в Debian по крайней мере , находится вcups-bsd
пакете, и может быть использован для печати из командной строки, используя CUPS в качестве интерфейса, в обычном порядке, то естьlpr filename
.Обычно, когда USB настроен, вы
/etc/cups/printers.conf
будете выглядеть примерно так. Мой текущий принтер использует USB.Обычно это настраивается с помощью команды командной строки
lpadmin
. Команда выглядит примерно так:Запустите это как root или как пользователь в
lpadmin
группе. В этом устройство естьusb://something
. Чтобы найти USB-устройство, соответствующее вашему принтеру, попробуйтеКонечно, вы должны убедиться, что он подключен и включен. Кто-то предложил запустить
/usr/lib/cups/backend/usb
, что также работает для меня. Ноlpinfo
это более стандартно. Как вы начали использовать/dev/usb/lpXXX
в первую очередь?На моем компьютере я получаю следующий вывод:
Вы можете проверить Руководство администратора программного обеспечения CUPS для получения дополнительной информации. Apple сделала что-то странное с документацией для более свежих версий CUPS, так что это для CUPS 1.1, но все же должно быть в силе.
Примечание: я бы не стал заносить модули в черный список, если вы не уверены, что это проблема.
источник