Страница 1 из 1
Раздвоение принтера
Добавлено: 08 сен 2016, 22:18
Bill Williamson
Доброго времени суток. У меня принтер HP LaserJet P1102s ставится в систему дважды. И при подключений активным может стать любой из них. При печати потом приходится выбирать то один, то другой. Почему так, как исправить?
Re: Раздвоение принтера
Добавлено: 08 сен 2016, 23:32
Dja
хм... неужели как в форточке от разных входов разные принтера?
Re: Раздвоение принтера
Добавлено: 09 сен 2016, 08:47
Bill Williamson
Нет, использую для принтера один и тот же USB вход, а подключается рандомно к одному из этих принтеров. Пробовал один из них удалить, так он заново создаёт.
Re: Раздвоение принтера
Добавлено: 12 сен 2016, 03:28
Dja
очень странно. У меня вроде на работе есть подобное чудо. Надо будет потестить.
Re: Раздвоение принтера
Добавлено: 26 сен 2016, 19:58
Bill Williamson
Удалил эти два принтера и попробовал поставить
по этой инструкции. Все нормально, только после ошибки (замятие, закончилась бумага и т.п.) надо открыть крышку принтера и закрыть обратно, потом дождаться того, чтоб принтер допечатал. В противном случае, если вынуть кабель или перезагрузиться, установленный принтер остается с ошибкой, а система добавляет новый. Такие дела. Может кто знает более правильное решение данной проблемы? Спасибо.
Re: Раздвоение принтера
Добавлено: 27 сен 2016, 23:28
Bill Williamson
Вроде как нашёл решение. Всё оказалось банально и просто. По умолчанию в linux mint одновременно установлен hplip и foo2zjs(видимо с целью охватить как можно больше разных устройств). Так вот, каждый пакет ставит свой драйвер, поэтому и получается что два одинаковых принтера hp. Удалил foo2zjs (и еще один пакет с ним связанный), т.к. если оставить его, то он ставит открытый драйвер, а с ним возникают проблемы если на печать запустить сразу несколько заданий - часть просто пропадает. Пока полёт нормальный, буду дальше пользоваться и отпишусь, если будут проблемы с проприетарным драйвером, который ставит hplip.
Re: Раздвоение принтера
Добавлено: 29 сен 2016, 09:28
Bill Williamson
Какого было моё удивление, когда вчера опять появился второй принтер!
Тот же hplip создал HP-LaserJet-Professional-P1102-2. Все после того, как я отправил в печать задание, принтер отпечатал, но я вытащил USB кабель до появления сообщения, что задание отпечатано. С чем связано это запаздывание проприетарного драйвера HP я не знаю. В итоге, при повторном подключений принтера, тот с неоконченным заданием, а система опять создаёт новый принтер.
Попробовал такой
костыль:
Отключаем автозапуск cups-browsed
Код: Выделить всё
sudo mv /etc/init/cups-browsed.conf /etc/init/cups-browsed.conf.stop
или вообще сносим его:
Оставил один принтер. Повторил опыт с вытаскиванием кабеля после окончания печати, но до появления оповещения. При подключений обратно теперь новый принтер не создается, старый подключается, но задания отправляется на печать заново
Можно перед подключением очищать задания, но это по-моему совсем неправильный подход.
Есть ли способ, скриптом или как-нибудь еще, научить систему сбрасывать задания при переходе принтера в режим остановлено?
С открытым драйвером от foo2zjs таких проблем нет, но там возникает
иная проблема. Может через foo2zjs как-то по-другому надо ставить драйвера?
Re: Раздвоение принтера
Добавлено: 29 сен 2016, 10:15
Chocobo
Bill Williamson писал(а): Есть ли способ, скриптом или как-нибудь еще, научить систему сбрасывать задания при переходе принтера в режим остановлено?
Если есть способ узнать программно в каком режиме находится принтер сейчас - можно написать небольшой watchdog-демон который будет это отслеживать необходимость этого действия с заданной регулярностью
Re: Раздвоение принтера
Добавлено: 29 сен 2016, 14:54
Bill Williamson
Chocobo, я далёк от программирования, где почитать можно или примеры увидеть?
Re: Раздвоение принтера
Добавлено: 29 сен 2016, 15:04
Chocobo
Bill Williamson, сам скрипт не проблема, обычная условная конструкция (if, case или while) на ответ проверки.
Основной момент в первой части предложения
Chocobo писал(а): Если есть способ узнать программно в каком режиме находится принтер сейчас
То есть надо как-то это спросить у принтера из терминала. А вот как именно с ним взаимодействовать - я не знаю, у меня нет такой железки
Re: Раздвоение принтера
Добавлено: 29 сен 2016, 15:10
Bill Williamson
Как нечто подобное:
Код: Выделить всё
net stop spooler
del /f /q %systemroot%\system32\spool\printers\*.shd
del /f /q %systemroot%\system32\spool\printers\*.spl
net start spooler
делается в Linux mint?
Re: Раздвоение принтера
Добавлено: 29 сен 2016, 15:56
zuzabrik
В линукс CUPS является стандартным сервером печати. Думаю стоит порыть в сторону man cups или типа того.
Очередь печати валяется где-то в райноне /var/spool/cups
Re: Раздвоение принтера
Добавлено: 29 сен 2016, 16:32
Bill Williamson
zuzabrik, нагуглил такую команду:
Код: Выделить всё
service cups stop
cd /var/spool/cups
rm -f *
service cups start
И вроде еще есть такая:
Первая, как я понимаю, требует root. Буду за домашним компом - проверю.
Возник еще один вопрос: можно ли вынести очередь печати в conky?
Re: Раздвоение принтера
Добавлено: 29 сен 2016, 19:36
Bill Williamson
Chocobo,
Chocobo писал(а): Если есть способ узнать программно в каком режиме находится принтер сейчас
Можно командой:
Вывод такой, если принтер подключен:
Код: Выделить всё
~ $ lpq
HP-LaserJet-Professional-P1102 готов
нет записей
И такой, если нет:
Код: Выделить всё
~ $ lpq
HP-LaserJet-Professional-P1102 не готов
нет записей
Re: Раздвоение принтера
Добавлено: 03 окт 2016, 11:06
Chocobo
Bill Williamson, скрипт может выглядеть так
Код: Выделить всё
while true; do
if lpq | grep -q "не готов"; then
echo "здесь можно выполнить нужные команды";
sleep 60;
else sleep 60;
fi;
done;
Таким образом будет бесконечный цикл проверять каждую минуту на вхождение подстроки
не готов
, где вместо
echo
можно задать нужную последовательность команд для этого случая.
sleep 60
- интервал ожидания между исполнениями в секундах.
Re: Раздвоение принтера
Добавлено: 04 окт 2016, 13:55
Bill Williamson
Данная проблема с раздвоением принтера до сих пор не решена. Даже удаление cups-browsed не помогает. Все равно каким-то чудесным образом второй принтер добавляется. Есть в Интернете
упоминание об этой проблеме и автор предлагает отключить систему
Smart Install. Неужели это единственный способ оставить один принтер в системе?
У кого-нибудь подобная проблема возникает в принтерах HP и на других без Smart Install?
Re: Раздвоение принтера
Добавлено: 05 окт 2016, 19:46
Bill Williamson
Попробовал установить последнюю версию
hplip. Делал по этой инструкций:
https://youtu.be/Yvn1-_U64bk
Потом в автозагрузку добавил команду hp-systray.
Пока второй принтер не появляется, но очень боюсь сглазить.
Re: Раздвоение принтера
Добавлено: 26 ноя 2016, 17:25
Bill Williamson
Проблема решена радикально переездом на Arch Linux и установкой через hplip уже там.
Раздвоение принтера
Добавлено: 08 мар 2018, 10:00
Bill Williamson
Данная проблема настигла меня моим принтером снова в Debian. Как оказалось за автодобавление принтера отвечает пакет
system-config-printer-udev
, удаление которого решает проблему раздвоения P1102. В Archlinux он у меня просто не был установлен.
Помогли
здесь.