14.6. Совместный доступ к принтерам в смешанной сети с использованием Samba
Проблема
В локальной сети принтеры установлены на компьютерах с системами Linux и Windows. Требуется обеспечить доступ к ним для клиентов обоих типов (Linux и Windows).
Решение
Чтобы это стало возможным, вам потребуются Samba и CUPS. Обращайтесь к разделам 23.22 и 23.23. The Official Samba-3 Howto and Reference Guide (http://samba.org).
Первым шагом при настройке общего доступа к принтерам через Samba будет установка и настройка пакетов CUPS (Common Unix Printing System). CUPS является универсальной системой печати, которая поддерживается большинством современных принтеров и сетевых систем. Это позволяет легко интегрировать печать в сети, состоящие из компьютеров на базе Linux, Windows и других операционных систем.
После установки CUPS, следующим этапом будет настройка Samba для обеспечения доступа к принтерам. Samba выступает в роли "мостика" между различными операционными системами в сети, обеспечивая совместимость между ними. С её помощью можно делиться принтерами, установленными на компьютерах с Linux, и предоставить к ним доступ с машин на Windows.
Настройка общего доступа через Samba начинается с редактирования файла конфигурации Samba — smb.conf. Этот файл содержит параметры, которые определяют, как сервер будет взаимодействовать с клиентами, и включают такие важные аспекты, как доступ к принтерам, пользователям и файлам. Для того чтобы разрешить совместный доступ к принтерам, нужно добавить соответствующую секцию в файл конфигурации.
[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
guest ok = yes
writable = no
printable = yes
В этом примере секция [printers] определяет общие параметры для всех принтеров. Путь /var/spool/samba указывает на директорию, в которой временно сохраняются задания на печать. Параметр browseable = no скрывает принтеры от общего списка доступных ресурсов, но пользователи всё ещё могут подключаться к ним, зная их имена. Опция guest ok = yes позволяет анонимным пользователям отправлять задания на печать, а writable = no запрещает запись, обеспечивая безопасность системы. Наконец, параметр printable = yes указывает, что это принтер, доступный для печати.
Далее нужно перезапустить службы Samba и CUPS, чтобы изменения вступили в силу. Команды для этого:
sudo systemctl restart smbd
sudo systemctl restart nmbd
sudo systemctl restart cups
На этом настройка Samba завершена. Теперь принтеры, установленные на компьютерах с Linux, доступны для клиентов в сети, работающих на Windows. Обратная совместимость также возможна: принтеры, установленные на компьютерах с Windows, могут быть доступны для Linux-клиентов через те же настройки Samba.
Если возникают проблемы с доступом к принтерам, обязательно проверьте файлы журналов, чтобы найти возможные ошибки. Журналы Samba находятся в каталоге /var/log/samba. Также проверьте, что порты, используемые для связи с принтерами (139 и 445 для Samba, 631 для CUPS), не заблокированы брандмауэром.