Печать c Windows-клиента на Linux-сервер CUPS
Бывает необходимо печатать с компьютера под управлением Windows на принтере, подключенном к компьютеру с Linux. В этой статье я напишу, как настроить подобное подключение принтера.
Полагаем, что на машине с Linux все отлично. Уже установлен и настроен CUPS – сервер печати для UNIX-подобных операционных систем, а принтер подключен и печатает все что от него требуют.
Прежде всего, необходимо настроить разделение принтера с другой системой. Это необходимо сделать, если вы планируете использовать принтер как сетевой. Откройте файл /etc/cups/cupsd.conf и разрешите доступ к серверу, изменив строчки с тэгом Location
. Например:
<Location />
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
Allow From 192.168.0.*
</Location>
Добавьте IP адреса компьютера клиента в строчке Allow From client_ip_address
. После того как вы внесли исправления, перезапустите CUPS.
С этого момента к принтеру могут подключаться и печатать другие клиенты согласно списка разрешений.
Теперь о настройке клиентов. О настройке Linux-клиента писать не буду (раз вы осилили настройку локального принтера значит настроите и сетевой). Напишу о подключении с Windows-машины.
Существует два способа подключения.
Первый способ использует Samba. Для этого потребуется установить и настроить Samba, поэтому использовать его мы не будем (хотя этот способ единственный для тех, кто использует Windows версии меньше чем Windows 2000).
Второй способ – использовать непосредственно протокол CUPS (годится для Windows 2000, Windows XP, Windows 7).
На компьютере с Windows, зайдите в Панель Управления -> Принтеры и выберите «Добавить новый принтер». Потом выберите опцию «Подключиться к принтеру в Интернете, в домашней сети или интрасети». В поле для URL введите адрес вашего принтера:
http://host_ip_address:631/printers/printer_name
где host_ip_address
– это IP адрес вашего Linux сервера, а printer_name
– это имя принтера, к которому вы подключаетесь. После этого установите драйвера для принтера на компьютер с Windows. Все установка завершена. Проверьте ваши настройки, попробовав напечатать тестовую страницу. Если тестовая страница распечаталась, на этом все.
А что делать, если тестовая страница не распечаталась? Первым делом смотрим логи CUPS. Проверяем очередь заданий. Поступало что-нибудь на печать, было ли выполнено.
Если на печать ничего не поступало, проверяем разрешения на доступ к серверу CUPS, настройки файрвола.
Если задание на печать поступало, но не выполнено, значит, проверяем сам принтер, проблема в нем, либо в настройках порта принтера.
Если задание на печать поступало и выполнено, но принтер ничего не напечатал, значит, проблема в настройках CUPS. Ваш сервер CUPS не печатает данные в формате RAW (бывает, что по умолчанию эта возможность отключена). Чтобы это исправить, необходимо отредактировать следующие файлы: /etc/cups/mime.convs и /etc/cups/mime.types. Добавьте или раскомментируйте следующие строки:
в mime.convs:
application/octet-stream application/vnd.cups-raw 0 -
в mime.types:
application/octet-stream
Перезапустите CUPS. Должно работать.
(#) sapr94-2:
Ох уж этот рав-формат! Намучался пока свой Samsung SCX-4300 подключал. Целый день потерял, пока разобрался. :(Подключается, на печать документы уходят, принтер жужжит, а не печатает ничего. А все из-за отключенного raw.
(#) aaaaa-raz:
Автору РЕСПЕКТ !!!!! , аналогично потратил весь день на танцы с бубнам при попытке связать cups и samba вместе ! принтер Samsung SCX-4300 , в сети появляется . коряво подключается затем после перезагрузки отваливается совсем , вычитал массу конфигов с различных форумов . Способ автора самое простое и доступное решение . Спасибо !