Использование сервера LPD

Использование сервера LPD

Сетевая система печати работает подобно средствам разделения файлов. Клиент-программа передает на сервер печати файл, предназначенный для вывода на принтер (это можно сравнить с передачей файла на файловый сервер). Основное отличие между данными процессами заключается в том, что на файловом сервере файл сохраняется на диске для дальнейшего использования, а на сервере печати файл передается на принтер и после обработки удаляется. Сходство между этими двумя задачами приводит к тому, что в некоторых случаях они решаются посредством одного протокола. В качестве примера можно привести протоколы SMB/CIFS, реализованные в рамках одного продукта (Samba). В системе UNIX для организации совместного использования файлов и принтеров традиционно применяются две различные системы: NFS и LPD.

В составе стандартных инструментов LPD интегрированы средства локальной и сетевой печати; таким образом, обеспечить прием данных, предназначенных для вывода на принтер, или передачу заданий на печать можно, затратив сравнительно небольшие усилия. В небольших сетях система сетевой печати позволяет сократить объем ресурсов, требуемых для организации работы. Так, например, вместо десяти низкоуровневых лазерных принтеров (стоимостью $300 каждый) можно приобрести за $1500 мощный принтер и использовать его как сетевое устройство печати. Сэкономленные $1500 можно потратить на цветной струйный принтер или другие подобные устройства. Одним из компонентов, позволяющих реализовать подобную конфигурацию, является LPD.

LPD — не единственный сетевой протокол печати. Как было сказано выше, выполнение подобных функций обеспечивают протоколы SMB/CIFS. Работу средств печати можно реализовать с помощью AppleTalk (в системе Linux для этого используется Netatalk). Таким образом, возникает вопрос: в каких случаях оправдано применение LPD, а когда следует отдать предпочтение другим инструментам? Для того чтобы ответить на него, следует рассмотреть следующие дополнительные вопросы.

• Какой протокол наиболее подходит для клиента? Linux поддерживает самые разнообразные протоколы печати, поэтому компьютер под управлением Linux может выполнять функции сервера печати для различных клиентов. Поскольку обычно число клиентов в сети значительно превышает число серверов, целесообразно выбрать тот протокол печати, который лучше всего поддерживается большинством клиентов. Если клиентские компьютеры работают под управлением UNIX или Linux, таким протоколом является LPD. При использовании клиентов DOS, Windows или OS/2 лучше выбрать SMB/CIFS. Для клиентов Macintosh наилучшим выбором будет AppleTalk, хотя MacOS X также хорошо поддерживает LPD.

• Какие из протоколов поддерживают необходимые вам возможности? Процедура сетевой печати реализуется проще, чем разделение файлов. Например, при печати не приходится поддерживать признаки прав доступа. Тем не менее для каждого протокола характерны свои особенности, например, по-разному выполняется процедура аутентификации. Если протокол, который наиболее подходит для большинства клиентов, не обеспечивает поддержку необходимых вам средств, надо рассмотреть вопрос об использовании другого протокола.

Вопрос поддержки специальных средств заслуживает более подробного рассмотрения. Подобно NFS, LPD использует принцип доверия, т. е. сервер полагается на результаты, полученные при аутентификации пользователя на стороне клиента. Поэтому решение о предоставлении доступа принимается на основании IP-адреса клиентского компьютера. Этот метод удобен в тех случаях, когда на клиентских компьютерах могут работать различные пользователи, но он обеспечивает гораздо более слабую защиту, чем способ, предполагающий проверку пользовательского имени и пароля. Если вам необходимо, чтобы вопрос о предоставлении доступа к серверу печати решался на основании проверки пароля, используйте протоколы, которые обеспечивают такую возможность, например протоколы SMB/CIFS. Однако при этом необходимо принять во внимание, что если клиенты будут работать под управлением UNIX или Linux, вам, возможно, придется хранить пароли в отдельном конфигурационном файле, доступном как клиентам, так и серверам, а это вряд ли обеспечит более высокую степень защиты, чем принцип доверия. Новый протокол IPP (Internet Printing Protocol — межсетевой протокол печати), используемый CUPS, предусматривает проверку пользовательского имени и пароля, но при желании вы можете не использовать эту возможность.

Несмотря на то что на клиентских компьютерах, выполняющихся под управлением Windows, поддерживаются средства LPD, если такие клиенты присутствуют в сети, для разделения принтеров чаще всего используют протоколы SMB/CIFS. Если же на основной части клиентских машин установлены UNIX, Linux MacOS и другие системы, не поддерживающие SMB/CIFS, следует рассмотреть вопрос о применении других протоколов.

При организации сети вам придется также решать вопрос о том, в какой операционной среде целесообразно реализовать сервер печати. Большинство серверов печати, доступных для Linux, могут также выполняться и в различных версиях UNIX. Необходимо выбрать платформу, наиболее пригодную для вашей сети. Если вам необходимо организовать совместное использование принтеров клиентскими программами, работающими в Linux, UNIX, Windows, MacOS и других операционных системах, на роль универсальной платформы печати лучше всего подойдет Linux.

Перед администратором часто возникает вопрос: следует ли использовать в качестве сервера печати специальное сетевое устройство? Такие устройства обычно комплектуются Ethernet-интерфейсом и предоставляют параллельные, последовательные и USB- подключения принтеров. Протокол поддержки сервера печати обычно реализован в них на аппаратном уровне. Такое устройство удобно применять в том случае, если вы не хотите использовать в качестве сервера печати обычный компьютер. Подобное решение может быть принято из соображений безопасности или тогда, когда компьютер, рассматриваемый в качестве претендента на роль сервера печати, должен время от времени выключаться. В качестве выделенных серверов печати могут выступать некоторые сетевые принтеры.

Совет

Выделенный сервер печати можно построить на базе старого компьютера; для этой цели подойдет даже компьютер с процессором 386. На нем надо установить систему Linux и отключить все программы-серверы и другие инструменты, непосредственно не участвующие в поддержке функций печати. Если быстродействие процессора достаточно велико, на данном компьютере можно установить Ghostscript, что позволит обрабатывать файлы PostScript. Таким способом можно эмулировать сетевой принтер PostScript. Если на компьютере есть несколько параллельных или USB-портов, к нему можно подключить несколько принтеров. Мощный компьютер может не только выступать в роли сервера печати, но и выполнять при этом задачи, непосредственно не связанные с выводом на принтер.