Иллюстрированный самоучитель по Linux

Файл printcap

Файл printcap находится в каталоге /etc и является основой конфигурации печати в Linux. Он содержит сведения обо всех принтерах, установленных в системе. Когда загружается демон печати Ipd (обычно при загрузке Linux), он считывает из этого файла информацию о принтерах, которые предстоит обслуживать.

Основная запись файла printcap следующая:

# LOCAL
djet500lpjdj|deskjet:\
:sd=/var/spool/lpd/dj:\
:mx#0:
:lp=/dev/lp0:\
:sh:

Каждая запись состоит из нескольких полей, разделенных двоеточиями. Если запись занимает несколько строк, то продолжение на следующей строке указывается обратной косой чертой.

В приведенном примере указаны три возможных варианта имени принтера: djet500lp, dj и deskjet. Принтеру назначен каталог спулинга /var/spool/lpd/dj, в котором демон-Ipd может хранить временные файлы очереди печати. Принтер подключен к первому параллельному порту (/dev/ lp0), печать заглавных страниц не задана (sh). Все это может показаться довольно сложным, впрочем, это соответствует действительности. Файл printcap иногда содержит десятки различных полей, и все они описаны на странице руководства printcap, которая открывается командой:

$ man printcap

Если бы этой информации было достаточно, чтобы заставить принтер работать, проблем с его конфигурированием не возникало бы. Но демон Ipd недостаточно сообразителен. Руководствуясь приведенной выше записью, Ipd без обработки отправляет все данные, предназначенные для печати, на принтер. Если принтер не в состоянии разобраться с этими данными, на выходе не получается ничего, кроме мусора. Рассмотрим возможные проблемы печати.

  • Текстовый ASCII-файл не распечатывается на принтере PostScript.
  • Текстовый АSCII-файл не распечатывается на принтере PCL в правильном формате без подстройки управляющих кодов в этом файле.
  • Файл в формате PostScript, отправленный на принтер PCL, распечатывается в виде длинного списка команд PostScript, а не документа, определяемого этими командами.

Это лишь часть проблем, возникающих при печати с примитивной записью в файле printcap. Такие проблемы решаются применением фильтров.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.