КАК УСТРОЕНА СИСТЕМА ПЕЧАТИ?

(описана система печати в System V)

Печатать, конечно, можно и так: cat file > /dev/lp. Но в многопользовательской системе такой фокус не всегда пройдет. Поэтому печатаемый файл ставят в очередь на печать.

Имеем принтер. У принтера есть ИМЯ_ПРИНТЕРА. ПОРТ_ПРИНТЕРА - специальный файл в который надо выталкивать данные для печати. ИНТЕРФЕЙСНАЯ_ПРОГРАММА - программа, которая как раз и будет этим заниматься.

Если у нас нормально сконфигурирована система печати, то печататься можно так:
lp -d имя_принтера file

или, если мы хотим напечатать на "default" принтере
cat file | lp

lpstat Посмотреть в каком состоянии очередь печати
cancel [идентификатор_запроса ...] [принтер ...] Срубить запрос на печать

lp просто складывает файл в SPOOL КАТАЛОГ. ДЕМОН ПЕЧАТИ lpshed обнаруживает вновь поступивший файл, ставит его в очередь на печать, и, когда очередь доходит, запускает наконец ИНТЕРФЕЙСНУЮ ПРОГРАММУ, вход которой берется из печатаемого файла, а ее вывод перенаправляется на ПОРТ_ПРИНТЕРА.

Подключить к системе новый принтер.

    lpadmin -p LJ_printer -i /usr/bin/lj_print  -v /dev/lpt2

или

    lpadmin -p Nash_Nowyj_Printer -m standard -v /dev/contty
    enable  Nash_Nowyj_Printer
    accept  Nash_Nowyj_Printer

Примеры:

lpadmin -pstar1 -cstars -estar -v/dev/xpit0
lpadmin -pstar1 -cstars -i/udd/print/inter -v/dev/xpit0
lpadmin -pstar1 -cstars -mdumb -v/dev/xpit0
lpadmin -xstar1              #Ликвидировать принтер star1
/usr/lib/lp/interface        #Каталог интерфейсных программ
/usr/lib/lp/model            #Образцы интерфейсных программ

[Назад] [Содержание] [Вперед]