URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 124968
[ Назад ]

Исходное сообщение
"Раздел полезных советов: Прямая отправка заданий на принтер, без использования CUPS и других прослоек"

Отправлено auto_tips , 04-Авг-21 12:24 
Многие принтеры имеют встроенную поддержку растеризации документов в форматах PDF и PostScript. Для вывода на печать на такие принтеры можно напрямую отправить документ без установки системы печати CUPS. Недостатками такого подхода являются очень медленный процесс обработки документа и возможные проблемы с качеством растеризации.

Например, для печати на сетевом принтере достаточно отправить документ на порт 9100 при помощи утилиты netcat:

   nc 192.168.1.15 9100 < sample.pdf

Для принтеров, подключённых по USB, можно направить документ в файл устройства:

   cat sample.pdf >> /dev/usb/lp0


URL: https://retrohacker.substack.com/p/bye-cups-printing-with-ne... https://docs.freebsd.org/en/books/handbook/printing/#printin...
Обсуждается: http://www.opennet.dev/tips/info/3189.shtml


Содержание

Сообщения в этом обсуждении
"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено бородач , 04-Авг-21 12:24 
да двадцать лет уже как сервис на inetd
```
#!/bin/bash

DEV=/dev/usb/lp0
LOCK=/tmp/lpd.lock
if [ -c $DEV ]; then
    JOB=`/bin/mktemp`
    cat > $JOB
    while [ -f $LOCK ]; do sleep 1; done
    touch $LOCK
    cat $JOB > $DEV
    rm -f $LOCK $JOB
else
    echo "device not found: $DEV\n"
fi

```


"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено d , 13-Авг-21 16:44 
JOB='/bin/mktemp'
cat > $JOB

А что это за финт?


"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Alex , 13-Авг-21 17:15 
Там обратные кавычки должны быть

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено vasiukoff , 19-Авг-21 00:58 
Все гениальное просто

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Эноним , 20-Авг-21 23:10 
>  while [ -f $LOCK ]; do sleep 1; done
>    touch $LOCK

Race condition. man flock.


"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Хру , 05-Авг-21 12:00 
Ну ведь локфайлы же не защищают от блокировки!

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено бородач , 07-Авг-21 04:13 
ну ведь.. ну ведь... все работает 20 лет

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Alladin , 02-Окт-21 05:30 
Почему не 30???!!!

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено 408983 , 14-Авг-21 19:13 
while ! mkdir $LOCK 2>/dev/null

...
rm -rf


"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Аноним , 15-Авг-21 07:14 
Люди старались писали для вас CUPS, а вы ленитесь и не используете его. Самое главное совершенно непонятно в чем преимущество написания своего аналога на bash'е. Кроме того что это синдром NIH.

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Аноним , 15-Авг-21 15:08 
Люди старались, писали... до покупки их Ябблом.

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Аноним , 15-Авг-21 21:59 
После покупки Эплом есть репозиторий от OpenPrinting

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено tester , 17-Авг-21 15:10 
ну когда сделаешь мини сборку загрузочный через pxe + xorg + rdesktop вот тогда и заходи с вопросами))

+ второй момент скрипт легко правится и расширяет локальный cups с http добавляет network:9100, у мня были траблы винда на http не печатала на http cups, баг. через xinetd открыл порт + командой lpr


"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Аноним , 28-Авг-21 22:23 
А зачем делать подобную сборку с этим всем? Экономия пары тысячь рублей на дисках?
Как только речь идет о скрипте это сразу надо понять, что идет какой-то колхоз.
Хотите подойти серьезно к вопросу реализуйте альтернативу CUPS и сделайте линковку с rdesktop.
Вам хоть спасибо скажут, а так и время протратите и как вот сейчас партия отщипенцев с Duvean будете сидеть с протухшими скриптами кричать о важности колхоза.
Все эти скрипты это костыли и колхоз так что если CUPS не устраивает возьмите и сделйате нормально не так уж и сложно на тех же сях нормально открыть порт и перекодировать строку и очередь организаовать печати.

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено tester , 17-Сен-21 16:54 
а зачем мне писать на сях есть могу на скриптах, только потому что вы считаете что кто колхоз?
а вы не задумывались что ваш неизвестный бинарь потом многим жизнь запросто попортит... и колхозом почти для всех окажетесь уже вы?



"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Аноним , 05-Май-22 14:05 
Потому что скрипты это все разовая автоматизация и скорее всего после вас пойдет в помойку, а интеграция системы печати в тонкий клиент дело добротное и многие переиспользуют этот опыт, а возможно и доработают ваш колхоз.

Опять же всегда можно использовать флаги компиляции и мккросы define/ifdef и сделать свою фичу опциональной.

Короче опять просрете уйму времени в помойку, а пользы не нанесете


"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Аноним , 07-Окт-21 16:08 
А в чём преимущество ставить и держать поднятым написанный непонятно кем тяжёлый дырявый сервис с кошмарным UI, когда можно взять и отправить файл на печать одной строчкой?

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено adolfus , 31-Авг-21 17:53 
У меня HP Laser Jet 55dn. Если разогрет, то печатает postscript-файл сразу, как только страница для печати будет получена. До этого был лексмарк с постскрипт-процессором  -- та же самая картина. Проблема всех задержек в растеризации шрифтов -- если принудительную растеризацию отключить, все будет шевелиться очень быстро. В принтерах дохренища своих встроенных шрифтов, плюс они умеют загружать сторонние, просто нужно купить памяти и добить ею принтер до упора. Стоит такой апгрейд на лист меньше, чем износ штиблет на километр.

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено ИмяХ , 08-Сен-21 05:38 
Отправил 1-страничный пдф на принтер таким способом. Из принтера полезла куча листов, целиком заполненных кракозябрами. Спасибо, отличный совет.

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено омский линуксоид , 10-Сен-21 09:51 
Это ты ещё послушать pdf не пробовал. Отправь его в aplay:

cat info.pdf | aplay


"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Страдивариус , 22-Сен-21 20:51 
Леганда гласит, что Линус однажды "позвонил" модемом на /dev/hd0 =)

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Аноним , 05-Май-22 14:07 
> Леганда гласит, что Линус однажды "позвонил" модемом на /dev/hd0 =)

Говорят даже дозвонился и долго бибикал, но это не точно


"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Аноним , 17-Сен-21 13:26 
"Троянское обучение" погугли. И "Теорию разрушения". Чтобы ничему найденному здесь не удивляться.

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено _kp , 21-Сен-21 11:45 
Так еще под DOS печатали. copy файл LPT1
Причем не трюков ради, а потому что если тогда программа и могда сделать файл для печати, то далеко не факт, что могла печатать, даже столь очевидным способом.

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено _kp , 21-Сен-21 11:47 
Так еще под DOS печатали. copy файл LPT1. Аналогично печатали по сети.
Причем не трюков ради, а потому что если тогда программа и могда сделать файл для печати, и тем более postscript подобный,то далеко не факт, что могла печатать, даже столь очевидным способом.

"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Аноним , 22-Окт-21 02:00 
> очень медленный процесс обработки документа и возможные проблемы с качеством растеризации

Почему? Если тот же самый принтер прекрасно печатает PDF-файлы через встроенный USB-пор с флэшек. Для сети и USB разные растеризаторы?


"Прямая отправка заданий на принтер, без использования CUPS и других прослоек"
Отправлено Аноним , 05-Май-22 14:09 

> Почему? Если тот же самый принтер прекрасно печатает PDF-файлы через встроенный USB-пор
> с флэшек. Для сети и USB разные растеризаторы?

В каком принтере? Давай почитаем исходники принтера вместе =)