Денис Колисниченко
Подключение принтераПечать в Linux
Прежде всего нужно подключить принтер. Я имею в виду добавить устройство в систему, а не подключить его к порту :) В большинстве случаев принтер подключается к единственному параллельному порту, но теоретически IBM PC может поддерживать 4 порта принтера - в DOS это LPT1-LPT4, в Linux - /dev/lp0-/dev/lp3
Убедимся, что устройство (порт) есть в вашей
машине
ls -l /dev/lp0
crw-rw---- 1 root
lp 6, 0 Сен 27 2000 /dev/lp0
Можно вывести текущий каталог на печать ls -l > /dev/lp0 Если все в порядке, на печать будет выведена лесенка
Line1 Line2 Line3
Дело в том, что принтеры, ориентированые для работы в ДОС, требуют для завершения строки 2 команды - возврат каретки CR(13) и перевод строки LF(10). Традиционно UNIX обходится одним LF. Исправлением данного неприятного эффекта займемся позже.
Поддержка принтера ядром Linux
Если вы при установке системы отключили поддержку
принтера и не
установили необходимые программы, то сейчас
самое время это сделать.
Вам нужно перекомпилировать ядро и при этом:
Управление принтером
Сегодня в дистрибутивах Linux можно встретить три
основные реализации системы
печати: BSD-lpr, LPRNG, CUPS (Mandrake)
Рассмотрим традиционный вариант BSD-lpr. В состав
BSD-lpr входят
lpd - демон печати. Запускается
при старте системы
lpr - программа постановки
заданий в очередь печати
lprm - программа удаления
заданий
lpq - просмотр очереди печати
lpc - диалоговая программа
управления состоянием принтера
Процесс печати происходит следующем образом: программа lpr файл (или поток) помещает в очередь заданий. Очередь заданий - это обыкновенный каталог, обычно /var/spool/lp/lp0 Программа lpd просматривает содержимое очереди и, если находит задание, пытается его напечатать. Демон печати (lpd) анализирует содержимое файла /etc/printcap и выбирает одну из записей, которая соответствует текущему режиму работы принтера, в нем (/etc/printcap) также содержится информация об именах фильтров печати. Более подробно о формате printcap см справку man printcap
Печать с помощью lpr
lpr [-Pprinter] file
Например, если хотите распечатать файл ~/report
на принтере lp0 выполните команду
lpr -Plp0 ~/report
Настройка принтера в Mandrake и RedHat
Запустите DrakeConf (Mandrake) или control-panel (RH) и выберите Настройка принтера
На этом установка принтера завершена.
Проблемы с русификацией
При печати из некоторых приложений (например, StarOffice, Netscape) вместо русских букв вы можете созерцать какие-то иероглифы. Не вдаваясь в подробности, нужно сделать следующее
Шрифты нужно скопировать в каталог /usr/share/fonts/default/ghostscript
(это
зависит от дистрибутива и версии ghostscript
- см документацию)
Затем правим файл Fontmap. У меня он находится в
том же каталоге
(точнее ссылка на него) Нужно закомментировать ссылки
на старые русские
шрифты и прописать новые, а также закомментировать
шрифт Courier.
В конец файла допишите строки
/ArialCyrMT (arial8.pfb);
/Arial /ArialCyrMT
;
/Helvetica /ArialCyrMT ;
/CourierCyrPS (cour8.pfb) ;
/Courier /CourierCyrPS
;
/CourierCyrPS-Bold (courbd8.pfb) ;
/Courier-Bold /CourierCyrPS-Bold ;
/CourierCyrPS-Inclined (couri8.pfb) ;
/Courier-Inclined /CourierCyrPS-Inclined ;
/CourierCyrPS-BoldInclined (courbi8.pfb) ;
/Courier-BoldInclined /CourierCyrPS-BoldInclined
;
/Courier-BoldIOblique /CourierCyrPS-BoldInclined
;
Можно также прописать и другие шрифты (Times, ERKurier), но я этого здесь делать не буду - думаю формат Fontmap понятен и сможете сделать это сами.