Сетевая печать: как печатать из Linux в Linux

Задача: принтер подключён к компьютеру, управляемому Linux, и требуется печать из Linux на другую машину под управлением Linux через локальную сеть.
Решение: лёгкая правка конфига CUPS - и вы уже печатаете на принтер под Linux!

Для этого нужно подкрутить всего несколько винтиков, только нужно знать где. Об этом я и напишу. Изложение ведётся так, что принтер, на который будет идти печать по сети, предполагается уже настроенным. Если это не так - вот здесь уже было описание подъёма принтера.

Машина-сервер, к которой подключён принтер: 192.168.1.1
Машина-клиент, с которой будем печатать на сервер: 192.168.1.2

На стороне сервера
Идём править конфиг /etc/cups/cupsd.conf, в котором разрешаем печатать не только локальной машине, но и тем, кому надо (здесь - всем машинам подсети 192.168.1.*):


Allow From 127.0.0.1
Allow From 192.168.1.*

Это надо будет вписать / раскомментировать где-то в конце конфига. Листайте его внимательно, он длинный. Когда конфиг поправите, надо перезапустить сервер печати:
/etc/init.d/cupsys restart
Всё, с сервером разобрались, теперь идём к клиенту.

На стороне клиента
Здесь надо поправить другой конфиг, /etc/cups/client.conf, в котором указываем IP-адрес сервера, на который будем печатать. Это достигается указанием адреса здесь:
ServerName 192.168.1.1
Не забываем сохранить конфиг. Всё готово - теперь, если вы зайдёте на машине-клиенте в админ-панель CUPS в броузере, указав адрес http://localhost:631 вы должны увидеть принтер, который на сервере:

Теперь заходим в любую программу, например OpenOffice.org, и при попытке распечатать страницу видим в списке принтеров удалённый:

При появлении менюшки "Печать" возможно небольшое кратковременное притормаживание - CUPS в это время, по всей видимости, проверяет готовность удалённых принтеров. Дальше - жмём на печать и видим, как из удалённого принтера выползает документ.

Ссылки

Пост, по сути, более подробное изложение вот этой заметки. Всё, конечно, просто как грабли - после того, как один раз это проделаешь.

19 комментариев: |высказаться!| RSS-лента дискуссии.|
serhiy cherevko комментирует...

вот здесь уже было описание подъёма принтера
Имелась ввиду ссылка? На счет статьи. Действительно все просто, но как ты сказал, только после того, как сам пройдешь через это. Можно бы было упомянуть и как подключаться с линуха на виндовс принтер. В современном мире это более актуально.

virens комментирует...

2 serhiy cherevko

вот здесь уже было описание подъёма принтера
Имелась ввиду ссылка?

Да, спасибо - забыл вставить. Увлёкся вставкой рисунков и забыл. Исправлено.

Действительно все просто, но как ты сказал, только после того, как сам пройдешь через это.
Именно. Все пишут об этом так, типа это детский лепет и все об этом знают. Долго не получалось - потом наткнулся на заметку Романа Лагунова по этому поводу. Потерзав его немного, я понял, как это делается - ну и решил запостить, чтоб самому не забыть.


Можно бы было упомянуть и как подключаться с линуха на виндовс принтер. В современном мире это более актуально.
Я не стал бы так глобально. У меня дома все три машины под Дебиан - так что это кому как :-) Но на работе винда (это пока...), и скоро будет пост на эту тему. Безусловно, это актуально.

Igor комментирует...

Мне кажется, что подключение на Windows принтер менее актуально, чем наоборот. Так как сервера на Windows мало, кто держит. Однако, это тоже настраивается. И без samba, кажется, не обойтись.

virens комментирует...

2 Igor
Мне кажется, что подключение на Windows принтер менее актуально, чем наоборот.
Ну, мне тоже актуально: в лаборатории винда, а хочется на расшаренный принтер печатать. Буду ковырять самбу на предмет сего. Буду рад за кинутые сюда полезные ссылки.

Насчёт серверов на винде: сервера МИФИ, например, все на ней. Поэтому нет ничего удивительного в том, что по Skype из МИФИ общаться невозможно: соединение с интернетом западает через 2-3 минуты секунд на 20, а потом опять возобновляется. Почта на mephi.ru вообще легенда: письма теряются, почта может идти от нескольких часов до суток...

Igor комментирует...

http://wiki.archlinux.org/index.php/CUPS_Setup#Linux_to_Windows
сам не пробовал и не попробую - на моём мини-сервере нет Windows =)
Так что это вам на откуп :)

virens комментирует...

2 Igor
http://wiki.archlinux.org/index.php/CUPS_Setup#Linux_to_Windows
Да-да, спасибо. Буду медленно раскуривать два раза перед едой :-)

сам не пробовал и не попробую - на моём мини-сервере нет Windows =)

У меня тоже дома винды нет (только в эмуляторе). А на работе - виндузяций рай :-)

Так что это вам на откуп :)
Оставили меня один на один с виндой? :-) Но мы всё равно прорвёмся!

Спасибо за ссылки и поддержку. Продолжение следует...

Apollon.Theos комментирует...

C Linux (Ubuntu Edgy Eft) на Windows (2003 R2) я подключался так:
"Система" - "Администрирование" - "Принтеры" + "Новый принтер"
на закладке "Соединение" выставил:
"Сетевой принтер" + "Windows принтер (SMB)"
Хост 192.192.1.4
Принтер hp710c
Имя пользователя и пароль не ставил, на винде разрешения печати для всех.
Главное правильно подобрать драйвер на вкладке "Драйвер".
Принтер HP DeskJet 710C, GUI принтер-то, но Linux давно уже умеет на него печатать.
Даже в цвете печатает.

Анонимный комментирует...

Сам недавно поднимал печать с Линуховой машины на принтера Винды (у меня вся сеть виндовая - и только на моём компе(шлюз в инет) стоит Slackware Linux). Не поднял тока 1 принтер (hp3650). Почему-то у него башню сносит от задания, посланного с моей машины. Принтера, которые поднял - hp1015, 1018, xerox docuprint P8e. Поднимал используя самбу(smb). К сожалению не все драйвера есть в CUPSe, но я с лёгкостью их нашёл на http://openprinting.org/driver_list.cgi
Если кому интересно - могу помочь
Обращатся по мейлу:sysand(всем известный знак)rambler(точка)ru

Анонимный комментирует...

Для того чтобы CUPS "слушал" другие адресса , надо добавить ip клиента ,
у меня без этого не заработало .

Listen IP-address:631(port)

serhiy cherevko комментирует...

Поставил Debian и опять же пришлось подключаться к принтеру винды. В общем нужны пакеты samba, smbclien, cups и пакеты с драйверами. В моем случае для hp.

Анонимный комментирует...

У меня не работает ниф... печатать из Ubuntu в Windows по сети через Samba в домене. Уже с бубном прыгал. Ищет все какие-то локальные сертификаты около 100 раз.
E [22/May/2007:19:25:58 +0700] cupsdAuthorize: Local authentication certificate not found!
Где их взять?
Ну и немного в начале:
NT_STATUS_BAD_NETWORK_NAME

Анонимный комментирует...

Здравствуйте! Поздравляю с наступающим Новым Годом! На работе на старом PC настроил принт сервер на Debian. К принт серверу подключен HP LaserJet 1005. Все работает нормально. Однако есть нерешенный вопрос. Если печатается многостраничный документ и необходимо перевернуть лист для печати на второй странице листа возникает необходимость как то дать команду на продолжение печати. Заранее благодарен за совет!!!

Анонимный комментирует...

Сам задал вопрос, сам и отвечаю!
Печатать сначало нечетные страницы а потом четные.

Анонимный комментирует...

У меня не печатало из под винды пока не добавил в cups'e в Set Allowed учетную запимь винды

Анонимный комментирует...

народ, у меня вот какая проблема: у нас в офисе на всех рабочих станциях винХР стоит, есть принтеры подключенные напрямую к рабочим станциям (большинство не расшаренные), есть сетевые (в основном принтеры НР и Кэнон). Мне сказали, что через CUPS можно отслеживать кто, когда и сколько страниц печатал на интересующем принтере. На винду все проги платные - нашел только HP Web jetadmin, но отчет по пользователям (кто сколько печатал) не выдает - выдает только сколько страниц и в какое время напечатано + видит не все принтеры.

Собственно, если кто через CUPS делал что-то подобное - подскажите как или ссылочку на how-to киньте (не нашел в сети :0( )

контакты:
icq: 4семь4-4шесть5-0один0
e-mail: rico(dog)inbox(dot)ru

Анонимный комментирует...

У нас на работе Debian 5.01 Lenny. Сделали, как было сказано, может нужно сделать что-то еще? Принтер после указанных процедур не появился у клиента.

Анонимный комментирует...

походу не актуальна.
на стороне сервера надо /etc/cups/cups.d/ports.conf редактировать.
читаю https://help.ubuntu.com/6.10/ubuntu/serverguide/ru/cups.html

FancyWriter комментирует...

Не получается что-то настроить... вот мой конфиг (дистрибутив gentoo, почти дефолтный) http://bpaste.net/show/39883/

Добавил строку Listen *.631 (было Listen localhost:631), и добавил строку Allow from 192.168.1.*

К слову... принтер подключён к машине с ip 192.168.1.2, расшарить хочу на всю подсеть 192.168.1.* (ну например на 192.168.1.3). Принтер Samsung SCX-4200, кстати... локально норм работает, а по сети не получается.


На машине клиенте прописал в client.conf адрес 192.168.1.2 - но это не помогло... принтер никакой не появился. Кроме того, если я захочу с клиентской машины по адресу 192.168.1.2:631 вижу крупными буквами написано "запрещено" на веб-странице, и всё... она пустая. До того как отредактировал конфиг вообще порт 631 по этому адресу был недоступен...

Анонимный комментирует...

Спасибо.
Коротко, доходчиво и по делу.

Отправить комментарий

Подписаться на RSS-ленту комментариев к этому посту.