Содержание
1. Печать в Vector Linux 5 2. Предустановочная проверка 3. Установка 4. Настройка CUPS на локальную печать 5. Печать на сервере Windows посредством SAMBA 6. Организация общего доступа к вашему принтеру из Windows посредством SAMBA 6.1. Настройка SAMBA 6.2. Настройка CUPS 7. Credits
В данном руководстве рассматриваются некоторые аспекты печати в VectorLinux 5, используя CUPS - систему печати UNIX (Common Unix Printing System). "CUPS" является кроссплатформенным решением для всех окружений UNIX. Оно основывается на протоколе "Internet Printing Protocol" и предоставляет законченные сервисы печати для большинства PostScript- и raster-принтеров.
Узнать, поддерживается ли ваш принтер, можно на следующих страницах:
http://www.linuxprinting.org/printer_list.cgi
Если ваш принтер поддерживает неотформатированный текст (сырой), вы можете проверить работоспособность вашего параллельного и универсального портов, отправив подобный текст на принтер. В случае подключения принтера к параллельному порту:
date > /dev/lp0
В случае неудачи попробуйте /dev/lp1 или /dev/usb/lp0 или lp1 для usb. Примечание: некоторые принтеры не поддерживают сырой текст, но поскольку они включается автоматически при наличии входных данных, возможно наблюдать, что информация пришла на принтер по их поведению.
Для использования принтера под управлением сервера Windows, необходимо убедиться в его поддержке (будет описано в секции "Печать на сервере Windows посредством Samba").
В версии SOHO поддержка печати (CUPS) уже присутствует в системе, данный раздел можно пропустить.
Для других версий VL может потребоваться установить поддержку CUPS, если это не было сделано в процессе установки. Для этого необходимо запустить VASM и выбрать нужный пакет (с установочного диска или с сетевого репозитория).
Имейте ввиду, что завершающий этап установки может длиться до нескольких минут, в зависимости от быстродействия системы, придется подождать.
Если CUPS не запускается при процедуре загрузки, убедитесь, то файл /etc/rc.d/init.d/cups является исполняемым для суперпользователя и ссылка на него присутствует в /etc/rc.d/rc2.d в случае использования входа в консоль (текстовый режим) и в /etc/rc.d/rc5.d в случае входа в графический режим.
4. Настройка CUPS на локальную печать
После установки CUPS откройте любой браузер, кроме Dillo, и в строке адреса наберите:
localhost:631/
Используйте учетную запись суперпользователя root. Затем выберите "Do Administration Tasks".
Для добавления принтера выберите "Add Printer" и ответьте на предлагаемые вопросы.
После завершения вопросов протестируйте принтер (выберите Printers, затем Print Test Page).
Для использования принтера на сервере Windows (или на сервере Linux с поддержкой SAMBA) настройте "Printing to Windows Servers via SAMBA".
5. Печать на сервере Windows посредством SAMBA
Печать на принтере сервера Windows осуществляется через протокол Microsoft Server Message Block ("SMB"). Поддержка этого протокола включена в пакет SAMBA и поддерживается в базовой установке VectorLinux 5.
Убедитесь, что у вас есть доступ на сервер с принтером и задайте сетевое имя принтера с помощью smbclient:
/usr/bin/smbclient -L server -U user
где server - имя сервера, user - имя пользователя на сервере.
В ответ выведется примерно следующее:
added interface ip=192.168.0.4 bcast=192.168.0.255 nmask=255.255.255.0
Got a positive name query response from 192.168.0.4 ( 192.168.0.4 )
Password: (not shown)
Sharename Type Comment
PRINTER$ Disk
INKJET Printer
DOWNLOAD Disk
IPC$ IPC Remote Inter Process Communication
В данном примере сетевым именем принтера является INKJET.
Прежде, чем продолжить настройку, убедитесь в наличии символической ссылки smb в каталоге /usr/lib/cups/backend/. (Обычно такая ссылка присутствует). В противном случае необходимо ее создать:
ln -s `which smbspool` /usr/lib/cups/backend/smb
Обратите внимание, что слова which smbspool содержатся в обратных апострофах, а не в одинарных кавычках!
При использовании обратных апострофов их содержимое является выполняемой командой, результат выполнения которой подставляется в исходное выражение - эквивалент:
ln -s /usr/bin/smbspool /usr/lib/cups/backend/smb
Этот способ работает во всех версиях VectorLinux 5. В качестве альтернативы для создания данной ссылки можете использовать Midnight Commander.
После создания ссылки можно настраивать принтер как указано в разделе 3. В качестве устройства выберите "Windows Printer via SAMBA". В качестве URI устройства введите:
smb://user:pass@workgroup/server/sharename
Поле workgroup необходимо задать в случае использования разных рабочих групп на вашей системе. Поля user:pass используются при печати через серверы Windows NT, 2K или XP или через общий доступ, защищенный паролем в Windows 95 and 98.
Так что запись может быть сокращена до:
smb://workgroup/server/sharename
smb://server/sharename
smb://user:pass@server/sharename
ПРИМЕЧАНИЕ: user/pass должны указывать на активный аккаунт на сервере.
6. Организация общего доступа к вашему принтеру из Windows посредством SAMBA
Адаптировано с http://www.tldp.org/HOWTO/Debian-and-Windows-Shared-Printing/
Здесь будет рассмотрено, как настроить VectorLinux в качестве принт-сервера для других принтеров в вашей сети через SAMBA. Подразумевается, что локальный принтер настроен на печать через CUPS. Изменения будут вноситься в файлы конфигурации CUPS и SAMBA.
Каждый клиент Windows должен иметь подходящие драйвера принтеров.
Если вы собираетесь разрешить анонимный доступ к вашему принтеру, необходимо будет создать специальную учетную запись пользователя для уделенной печати. От имени суперпользователя выполните команду:
useradd -d /home/smbprint -s -m /bin/false smbprint
В систему будет добавлен пользователь "smbprint". Обеспечьте достаточно места в каталоге /home/smbprint - домашнем каталоге пользователя "smbprint", для кеширования распечатываемых файлов. Поскольку для пользователя "smbprint" не надо задавать пароль, существует опция "-s /bin/false". Возникнет ошибка, если кто-либо при входе в систему укажет имя пользователя "smbprint". Поскольку CUPS в вашей системе настроен так, что разрешает определенным пользователям доступ к принтеру, необходимо в список таких пользователей добавить пользователя "smbprint".
Файл конфигурации Samba /etc/samba/smb.conf. Пример такого файла, разрешающий доступ к CUPS пользователю "smbprint":
[global]
workgroup = WORKGROUP
printcap name = cups
printing = cups
security = share
guest account = smbprint
[printers]
comment = all printers
printable = yes
guest ok = yes
create mode = 0700
guest only = yes
use client driver = yes
path = /home/smbprint
browseable = yes
Последняя строка позволяет клиентам Windows (и другим клиентам SMB) видеть ваш принтер в окружении SAMBA.
Имейте ввиду, что подобная конфигурация разрешает доступ к принтеру любому пользователю, который сможет осуществить сетевое соединение с вашим компьютером, и не рекомендуется для компьютеров, работающих в сетях общего пользования, например, Internet, особенно, если разрешено прямое соединение с этим компьютером. Для осуществления контроля над доступом установите security = user или security = domain и ознакомьтесь со страницами руководства Samba (man). Также можете обратиться к неофициальному источнику "The Unofficial Samba HOWTO".
После конфигурирования Samba необходимо перезапустить сервер Samba (режим суперпользователя):
/etc/rc.d/init.d/samba restart
Примечания:
Все описанное выше подразумевает, что скрипт /etc/rc.d/init.d/samba существует и является исполняемым. Копия скрипта доступна в директории /etc/rc.d/init.d/sample-scripts.
Если SAMBA не стартует в процессе загрузки системы, можно создать символические ссылки S44samba и K55samba к скрипту /etc/rc.d/init.d/samba в /etc/rc.d/rc2.d при загрузке в текстовом режиме и в /etc/rc.d/rc5.d при загрузке в графическом режиме.
Драйвера принтеров в Windows форматируют отправляемую на принтер информацию перед передачей по сети. Необходимо настроить CUPS с целью разрешить преформатированный вывод, раскомментировав в /etc/cups/mime.convs строку:
application/octet-stream application/vnd.cups-raw 0 -
Также раскомментируйте в /etc/cups/mime.types строку:
application/octet-stream
Теперь системе CUPS необходимо разрешить соединения от других машин в сети. Добавьте следующие строки в /etc/cups/cupsd.conf:
<Location /printers>
AuthType None
Order Deny,Allow
Deny From None
Allow From All
</Location>
Подобно конфигурации Samba, подобные настройки разрешат любому компьютеру доступ к вашему принтеру и не рекомендуются на сетях общего пользования. Например, если область доверия необходимо ограничить адресами 192.168.0.*, замените "Allow From All" на "Allow From 192.168.0.0/24".
Для подробной информации о настройках доступа обратитесь к руководству cupsd.conf (man) и документации на CUPS.
Наконец, перезапустите cups командой (режим суперпользователя):
/etc/rc.d/init.d/cups restart
Теперь ваши принтеры Linux будут доступны клиентам Windows в локальной сети. Настройте на клиентах Windows доступ к сетевым принтерам и приступайте к печати.
Copyright 2004 Vector Linux
Released under [GNU Free Document License [http://www.gnu.org/licenses/fdl.html]
Contributed By: Johnvan, UKBill
Перевод на русский язык: stirn (Лабазников Николай)