Большой архив статей, книг, документации по программированию, вебдизайну, компьютерной графике, сетям, операционным системам и многому другому
 
<Добавить в Избранное>    <Сделать стартовой>    <Реклама на сайте>    <Контакты>
  Главная Документация Программы Обои   Экспорт RSS E-Books
 
 

   Операционные системы -> Linux -> Сервер печати на Linux своими руками


Сервер печати на Linux своими руками

Полина Дорогина

Введение, или зачем он нужен

Сетевой принтер, стоящий на рабочей машине, обладает рядом недостатков. Доступность его зависит от того, включен ли компьютер, достаточно ли у него свободных ресурсов для обработки заданий. Большие объемы печати отнимают ресурсы, это вызывает недовольство пользователя. Гораздо удобнее, когда сетевой принтер стоит на отдельной машине, которая работает в режиме сервера. Для этой цели нам вполне подойдет старенький Pentium, пылящийся где-нибудь на складе.

Конечно, мы можем организовать сервер печати и под операционной системой Windows-9x. Но, во-первых, сама система займет большую часть наших и без того скромных ресурсов, а во-вторых, Windows 95-98 не предназначены для беспрерывной работы, и сервер придется периодически перезагружать. Наш выбор в этой ситуации - Unix. Графический интерфейс в этих системах ставится по желанию, которого в данном случае нет и быть не может. Остановимся на Linux Red Hat 7.3, хотя большая часть настроек применима и для других Linux/Unix систем.

Настройка принтера не вызовет особых трудностей, Red Hat имеет внушительную базу драйверов для принтеров, но даже если именно вашей модели там не окажется, то вполне можно использовать любой другой работоспособный драйвер или даже прямую очередь печати. Установить и настроить принтер можно с помощью утилиты setup, которая дает доступ к основным настройкам операционной системы, таким как сеть, аутентификация, принтеры, список сервисов, стартующих при загрузке.

SMB и Samba

Для предоставления общего доступа к дискам и принтерам операционные системы Windows используют протокол SMB - Server Message Block. Сервер Samba обеспечивает работу Linux с протоколом SMB. Вы сможете обеспечить доступ к общим ресурсам на машинах Windows для Linux и наоборот. Для работы Samba необходим протокол TCP/IP. Подробную документацию можно найти на сайте http://www.samba.org/. Там же можно взять дистрибутив последней версии Samba (на момент написания статьи это 2.2.8a) Настоятельно не рекомендуется брать версию Samba 3.x.x, так как она находится еще в стадии разработки и тестирования.

Установка Samba из RPM не вызовет никаких затруднений. Конфигурирование осуществляется через файл smb.conf, находящийся в директории /etc/samba. При инсталляции из RPM этот файл уже существует. Можно просто раскомментировать необходимые строки, но это неудобный способ: файл перегружен комментариями и в нем трудно ориентироваться. Тем не менее, выкидывать его не стоит, он служит неплохой подсказкой для решения вопросов, связанных с конфигурированием, благодаря все тем же подробным комментариям. Ниже приведен простейший рабочий пример файла smb.conf с пояснениями.

Smb.conf
;Этот раздел содержит настройки для всех общих ресурсов сервера
[global]
;Имя рабочей группы или домена, в который входит сервер.
workgroup = WORKGROUP
;Строка описания сервера
server string = Samba Server
;Диапазон хостов, которые могут получить доступ к ресурсам
hosts allow = 192.168.1. 192.168.2.0./24
;Следующие две строки определяют степень детализации логов (уровень 1 - только критические сообщения) и местоположение лог-файла. Убедитесь, что файл log действительно существует по указанному адресу
log file = /usr/local/samba/var/log.%m
loglevel = 1
;Существует три уровня безопасности: server, user, share; для наших задач вполне подойдет уровень share
security = share
;Нижние строки определяют роль сервера в сети
browse list = no
enhanced browsing = no
local master = no
domain master = no
preferred master = no
; Выбираем систему печати
printing = bsd
;Файл /etc/printcap - это главная база данных BSD-системы печати. На принтер можно передавать задания, только если он описан в этом файле
printcap name = /etc/printcap
load printers = yes
guest account = pcguest
;Это общий ресурс, содержащий установки для всех принтеров, подключенных к системе
[printers]
comment = All Printers
;Указываем, что печать производится с использованием драйверов, установленных на машине клиента
use client driver = yes
share modes = yes
guest ok = yes
;Указываем путь к спулеру печати, этот путь должен совпадать с тем, который прописан в файле /etc/printcap
path = /vat/spool/lpd/printer name
browseable = yes
printable = yes
public = yes
writable = no
create mode = 7777

Проверить работоспособность сервера позволяют следующие программы:

testparm - утилита, производящая простейшую проверку синтаксиса в конфигурационном файле;

testprns - утилита, проверяющая имена принтеров, объявленные в Samba на их наличие в файле /etc/printcap;

smbstatus - выводит информацию о текущих соединениях.

Немного о BSD-системе печати

В BSD-системах доступом к принтерам управляют демон lpd и программа lpr. Lpr принимает задания и помещает их в буфер, где их находит демон lpd и выводит на печать. Программа lpr собирает также необходимую информацию о задании, как-то: принтер, на который нужно вывести данные. Как только у нее появляются эти сведения, она начинает искать нужный принтер в базе данных /etc/printcap. Из этой базы она узнает имя каталога, в который нужно помещать задания для принтера. После постановки в очередь lpr посылает уведомление lpd-демону. Когда задание готово к печати, lpd создает программные каналы между спулером и принтером для передачи данных. Посередине этой цепочки lpd устанавливает процесс-фильтр, в задачи которого входит просмотр и, возможно, редактирование потока данных. Классическая настройка не позволяет получить приемлемого качества печати, поэтому в настройках Samba мы и указали, что будем использовать драйвер клиента. Таким образом, вся обработка задания происходит на машине клиента и lpd не требуется как-либо модифицировать задание.

Более новая система печати LPRing поддерживает Kerberos и авторизацию на основе PGP, доступ контролируется файлом /etc/lpd.perms, в котором можно управлять доступом на основе пользователя, группы или IP. LPRng имеет хорошую документацию и доступна на http://www.astart.com/lprng/LPRng.html.

Управление средой печати

На практике вам нужно знать всего три команды: lpq, lprm,lpc

Lpq - это команда просмотра очереди печати.

Lprm - команда удаляет задания из очереди.

Синтаксис команды lprm:

Lprm - удаляет последнее задание в очереди;

Lprm - 14, 15 - удаляет задания 14 и 15 из очереди;

Lprm - username - удаляет задания конкретного пользователя из очереди;

Lprm - all - удаляет все задания из очереди.

Lpc - команда, позволяющая контролировать работу принтера, необходимости в ее использовании практически не возникает.

Замечание

В данной статье рассмотрен простейший пример организации печати в Linux, здесь не рассмотрены системы контроля печати, организация доступа к принтеру основана на анонимном доступе, а не на аутентификации пользователя. Более подробная информация может быть получена из других, более специализированных источников.



 

 
Интересное в сети
 
10 новых программ
CodeLobster PHP Edition 3.7.2
WinToFlash 0.7.0008
Free Video to Flash Converter 4.7.24
Total Commander v7.55
aTunes 2.0.1
Process Explorer v12.04
Backup42 v3.0
Predator 2.0.1
FastStone Image Viewer 4.1
Process Lasso 3.70.4
FastStone Image Viewer 4.0
Xion Audio Player 1.0.125
Notepad GNU v.2.2.8.7.7
K-Lite Codec Pack 5.3.0 Full


Наши сервисы
Рассылка новостей. Подпишитесь на рассылку сейчас и вы всегда будете в курсе последних событий в мире информационных технологий.
Новостные информеры. Поставьте наши информеры к себе и у вас на сайте появится дополнительный постоянно обновляемый раздел.
Добавление статей. Если вы являетесь автором статьи или обзора на тему ИТ присылайте материал нам, мы с удовольствием опубликуем его у себя на сайте.
Реклама на сайте. Размещая рекламу у нас, вы получите новых посетителей, которые могут стать вашими клиентами.
 
Это интересно
 

Copyright © CompDoc.Ru
При цитировании и перепечатке ссылка на www.compdoc.ru обязательна. Карта сайта.