Windows принтер через samba

Windows принтер через samba

by Carla Schroder, author of the Linux Cookbook

Перевод: Сгибнев Михаил

Комбинация Samba и CUPS позволяет довольно просто организовать печать в смешанной Linux/Windows сети. Вы можете совместно использовать принтеры, подключенные к Linux с клиентами Windows, и принтеры, подключенные к Windows совместно с Linux клиентами. Сервер печати, построенный на Linux/Samba/CUPS, надежен, прост в установке и легок в обслуживании.

CUPS без Samba позволяет сделать превосходный сервер печати и для Windows и для Linux, но есть один недостаток: нет возможность использовать сетевой принтер Windows. CUPS автоматически предоставляет сетевые драйверы принтера для Linux машин, а CUPS совместно с Samba может делать тоже самое для Windows машин. Вы должны иметь функционирующую локальную сеть, все ваши Windows машины должны быть в одной рабочей группе, Linux машина, с уже подключенным и настроенным принтером, CUPS и Samba, готовой к работе.

При начальной настройке системы неплохо было бы выполнять команды от пользователя root, подобно примеру ниже, так как это облегчает поиск неисправностей, но после настройки рекомендую использовать учетную запись администратора Samba.

Получение драйверов

Первым делом нам потребуется CUPS driver for Windows или Adobe PostScript driver. В настоящее время драйвет CUPS недоступен, хотя его появление ожидается в ближайшее время.

Adobe driver package работает под всеми версиями Windows, так что вы можете обойтись без драйверов CUPS. Драйверы CUPS лучше устанавливать на Windows NT/2000/XP, так как они лучше работают и предоставляют больше возможностей. Но CUPS не поддерживает Windows 95/98/ME. Итак, нам необходимы файлы: В этой статье мы будем использовать Adobe drivers. Загрузите Adobe driver installer, (английская версия называется winsteng.exe) на Windows PC и запустите установку. Также вы можете скопировать необходимые файлы на Samba сервер. Ищите эти два каталога после инсталляции: w32x86, который содержит файлы для Windows 95/98/ME и WIN40, который содержит файлы для Windows NT/2000/xp.

Следующий шаг — редактирование smb.conf для установки printers и print$. Вы должны использовать именно эти имена, так как они зарезервированы Samba. Сейчас мы разбираем пример не требующий авторизации, учтите, что у вас будут свои имена хостов, имя рабочей группы и сетевые адреса. Сохраните изменения и выполните команду testparm. Если ваш smb.conf был проверен без сообщения об ошибках, то перезапустите Samba: Убедитесь в существовании учетной записи администратора Samba: Теперь копируем каталоги WIN40 и w32x86 в /usr/share/cups/drivers. Если вы используете CUPS, то убедитесь, что имена файлов в нижнем регистре.

Выполните эту команду, для того чтобы связать CUPS и Samba:

Копирование драйверов

Теперь пришло время использовать cupsaddsmb для инсталляции всех CUPS принтеров в Samba. Приведенные ниже команды предполагают, что CUPS, Samba и драйвера находятся на одной машине. Используйте ваш пароль Sambaю Вы должны видеть мелькающие строки, и две последние должны напоминать пример выше. Сделаем еще изменение в файле конфигурации smb.conf: заменим security = user на security = share и затем перезапустим Samba. Искомой цели можно добиться и более изящным способом, просто необходимо лишить пользователя возможности получить привилегии администратора и запустить cupsaddsmb.

Читайте также:  Iso образ windows 10 single language

В идеале, теперь мы можем идти на любую Windows машину, устанавливать сетевой принтер и драйвер устройства автоматически будет скачан.

Сервер печати Linux

Справочный материал

  • Смотрите следующие страницы man:
    cupsaddsmb (8)
    smb.conf (5)
    smbpasswd (5)
  • Глава 23 Linux Cookbook и Глава 14.
  • Ukfdf 19 из The Official Samba-3 HOWTO and Reference Guide

>

Обсуждение [ RSS ]
1.1 , halt ( ?? ), 14:52, 26/12/2006 [ответить] + / –
ИМХО LPD сервер печати удобней и самбу крутить не надо.
1.2 , andrey ( ?? ), 03:49, 22/03/2007 [ответить] + / –
а cups вообще без samba надо использовать!
1.3 , Alex Kato ( ? ), 16:38, 14/01/2008 [ответить] + / –
Народ, помогите а?

Установил на одну машину Mandriva-2008PWP, к ней подключен принтер Canon Pixma ip4500, скачал дрова с сайта для принтера, установил, печать идёт!

Подсоеденил через свитч вторую мшину тоже под Linux, разшарил принтер, — печатает.

ПОдсоеденил через свитч ноут с WindowsXP SP2 b шоб печатать и тут пошли грабли, принтер в сети нашёл, URI прописал, виндосовские дрова поставил, пускаю тестовую страницу — ни фига, пускаю любую (например из Worda) печать ни фига 🙁

Смотрю на Linux машине (к которой подсоеденён принтер) задачи — а там ничего нет, а на Виндовс машине, в диспетчере печати висит ошибка.

Менеджер печати в Линукс — CUPS, версия линуха полная, капс там рабочий. Народ помогите, а? Как печатать с Виндовс-клиентов на линукс-принтере?

p.s Игрался ещё и с Samba, да только смотрел на форумах, говорят шо и без неё можна обойтись.

Заранее благодарен, Alex.

2.5, Phantom ( ?? ), 17:06, 13/03/2008 [^] [^^] [^^^] [ответить] + / –
> ..виндосовские дрова поставил..

вот где у тебя грабли. поставь эти http://www.cups.org/software.php

1.6, casper200 ( ? ), 08:02, 23/04/2008 [ответить] + / –
Настройка ОС Windows XP для печати на принтере.
Настройка принтера в ОС Windows XP. Пуск -> Настройка -> Принтеры и факсы -> Устновка принтера.
После того, как вы запустили Мастера установки принтеров, последовательность действий будет такая:

Нажимаем кнопку Далее.
Выбираем пункт — Сетевой принтер или принтер подключенный к другому компьютеру.
Выбираем пункт — Подключиться к принтеру в Интернете, в домашней сети или интрасети.
Вводим URL: http://192.168.1.2:631/printers/hp695c

168.1.2 — компьютер с OC FreeBSD к которому подключен принтер. hp695c — имя принтера которое Вы вводили при настройке принтера в CUPS. Нажимем кнопку Далее.

Samba print server

Содержание

Вступление

При настройке Samba в качестве сервера печати, клиенты вашей сети смогут отправлять задания на печать на хост Samba, используя протокол SMB. В примерах, приведенных в этой документации, используется бэкэнд raw-принтера. Эта конфигурация требует, чтобы задание на печать обрабатывалось драйвером на клиенте и, следовательно, могло обрабатываться принтером без дальнейшей обработки или фильтрации.

Поддерживаемые сервера печати

Samba поддерживает несколько серверов печати, таких как CUPS и LPRng . Полный список см. в параметре printing на man page smb.conf(5).

Для начала необходимо настроить локальную серверную часть на хосте Samba. Samba не может пересылать задания на печать на удаленный хост. Однако вы можете настроить локальный сервер печати для пересылки задания на удаленный сервер печати.

Подробнее о настройке серверной части см. Документацию сервера печати.

Поддержка бэкэндов CUPS или IPRINT в Samba

При использовании серверной части CUPS или IPRINT Samba должна быть собрана с включенной поддержкой CUPS. Для подтверждения введите:

Если вывод не отображается:

  • Samba была собрана с использованием параметра —disable-cups.
  • Сценарию Samba configure не удалось найти необходимые библиотеки для поддержки CUPS. Для получения дополнительной информации см. Зависимости пакетов, необходимые для сборки Samba.

Добавление принтера в серверную часть сервера печати

Чтобы добавить принтер на сервер печати CUPS:

  • Откройте веб-интерфейс администратора CUPS в своем браузере: http://localhost:631/admin
  • Перейдите на вкладку Администрирование и нажмите Добавить принтер.
  • Выберите тип подключения и введите соответствующий URL-адрес в очередь принтера или в очередь на удаленный сервер печати. Например:
    • Принтеры на основе LPD: lpd://printer_name/queue
    • Принтеры на основе IPP (Internet Printing Protocol): ipp://printer_name/ipp/port
    • Принтеры на основе SMB (Server Message Block): smb://username:password@domain/windows_print_server_host_name/printer_name

Обратите внимание, что для пересылки задания на сервер печати под управлением Windows Vista или более поздней версии или Windows Server 2008 или более поздней версии требуется проверка подлинности.

  • Введите имя для принтера. Это имя используется /etc/samba/smb.conf при совместном использовании принтера с помощью Samba.
  • Выберите Raw поставщика и модель принтера.
  • Сохраните настройки.

LPRng

Чтобы добавить принтер на сервер печати LPRng:

  • Добавьте следующую строку в файл /etc/printcap:

Имя принтера используется в файле /etc/samba/smb.conf при совместном использовании принтера с помощью Samba.

Для получения дополнительной информации об используемых параметрах см. printcap(5) man page.

Чтобы создать каталог spool, введите:

Перезапустите службу LPRng.

Включение службы spoolssd

Samba spoolssd — это служба, которая интегрирована в службу smbd. Если вы настроили Samba в качестве сервера печати, вы можете дополнительно включить spoolssd для повышения производительности на серверах печати с большим количеством заданий или принтеров.

Без spoolssd Samba разветвляет smbd процесс или каждое задание на печать и инициализирует кэш printcap. В случае большого количества принтеров служба smbd может перестать отвечать на запросы в течение нескольких секунд при инициализации кэша. Служба spoolssd позволяет запускать предварительно раздвоенные процессы smbd, обрабатывая задания на печать без каких-либо задержек. Основной spoolssd smbd-процесс использует мало памяти, разветвляется и завершает дочерние процессы.

Чтобы включить службу spoolssd:

  • Отредактируйте раздел [global] в файле /etc/samba/smb.conf:
    • Добавьте следующие параметры:

При желании вы можете установить следующие параметры:

Параметр Значение
по-умолчанию
Описание
spoolssd: prefork_min_children 5 Минимальное количество дочерних процессов
spoolssd: prefork_max_children 25 Максимальное количество дочерних процессов
spoolssd: prefork_spawn_rate 5 Samba разветвляет это число новых дочерних процессов до значения, установленного в spoolssd:prefork_max_children, если установлено новое соединение
spoolssd: prefork_max_allowed_clients 100 Количество клиентов, обслуживаемых дочерним процессом
spoolssd: prefork_child_min_life 60 Минимальное время жизни дочернего процесса в секундах. 60 секунд это минимум.

После перезапуска Samba автоматически запускает smbd-подпроцессы:

Включение поддержки сервера печати в Samba

Чтобы включить поддержку сервера печати:

  • Установите бэкэнд печати в параметре printing раздела [global] в файле /etc/samba/smb.conf.(CONFIGFILE) Например:
  • Добавьте следующий раздел в /etc/samba/smb.conf(CONFIGFILE):
  • Создайте каталог spool, заданный в параметре path:
  • Перезапустите Samba:

Совместное использование принтера

Автоматический общий доступ ко всем принтерам, настроенным на сервере печати

При использовании настроек по-умолчанию все принтеры, настроенные на сервере печати, автоматически открываются для общего доступа.

Отключение автоматического общего доступа к принтеру

Чтобы отключить автоматический общий доступ к принтеру:

  • Добавьте следующий параметр в раздел [global] файла /etc/samba/smb.conf(CONFIGFILE):
  • Перезапустите Samba:

Совместное использование принтеров вручную

Чтобы вручную поделиться принтером:

  • Убедитесь, что автоматический общий доступ к принтеру отключен. См. пункт выше.
  • Добавьте общий ресурс для принтера в файл /etc/samba/smb.conf(CONFIGFILE):

Задайте на параметр printer name имя принтера, используемого в бэкэнде локального сервера печати.

Как подключить Windows Printer via SAMBA

Есть USB принтер HP LaserJet P2055d который подключен через USB шнур к компьютеру с осью Windows 7 Pro x64 Russian и он расшарен. Так вот нужно из рабочей станции Ubuntu Trusty подключить данный принтер дабы не перетыкать USB от компьютера с Windows к Ubuntu.

У меня рабочее окружение: Gnome Classic on Ubuntu Trusty

Запускаю: ПриложенияСистемные утилиты — Параметры системы — (Оборудование) ПринтерыДобавить — разворачиваю «Сетевой принтер» и в выводе почему-то отсутствует строка мастера: Windows Printer via SAMBA которая должна идти после «Узел LPD/LPR или принтер».

Чтобы это дело поправить нужно:

$ sudo apt-get install python-smbc smbclient -y

$ sudo service cups restart

и снова запустив мастер по управлению принтера вижу, что строка/меню теперь доступно для настройки:

Нажимаю на «Принтер Windows через SAMBA» и вписываю значения на подключение к расшаренному принтеру Windows

  • Принтер SMB: smb://10.7.8.178/ITUSB
  • Аутентификация: Запросить у пользователя, если требуется проверка подлинности

После нажимаю «Проверить» и ввожу данные для авторизации на доменной станции где был расшарен принтер HP LaserJet P2055, поля авторизации следующие:

  • Имя пользователя:
  • Домен: .local
  • Пароль:

и нажимаю OK, сразу же последовал ответ: «Общий принтер проверен. Этот общий принтер доступен

Нажимаю OkВперед, после идет поиска драйверов, на выбор дается три варианта:

  1. Выберите принтер из базы данных
  2. Предоставить PPD-файл
  3. Поиск драйвера принтера для загрузки

Выбираю первый вариант.

После указываю драйвер:

Выберите драйвер: LaserJet p2055d

и нажимаю Вперед, Вперед, затем именую принтер:

  • Имя принтера: itusb
  • Описание: itusb

и нажимаю «Применить» — «Печать пробной страницы», но печать почему-то не пошла, открыв снова мастер настройки принтеров в системе: «Принтеры» и на добавленном принтере щелкнув левой кнопкой мыши для перехода в меню «Просмотр очереди печати» обнаружил, что «Состояние» со значением «Отложено до аутентификации»

Щелкаю по данному состоянию посредством правой кнопки мыши и нахожу пункт «Авторизовать» и нажимаю на него, передо мной предстает окно аутентификации уже в текущей системе Ubuntu Trusty, указываю:

  • Имя пользователя: aollo
  • Пароль:
  • Запомнить пароль: отмечаю галочкой

и нажимаю OK

Не помогло, все равно пишет «Отложено до аутентификации».

$ sudo nano /etc/cups/printers.conf

$ sudo service cups restart

И это тоже не сработало, в итоге заново настроил принтер, но

  • П ринтер SMB: smb:// .local/10.7.8.178/itusb
  • Марка и модель: HP LaserJet p2055

после авторизовался и отправляю на печать печать идет, а содержимое файла /etc/cups/printers.conf вернулось к исходному состоянию без правок выше.
Но вот, что да тестовая страница отправляется, но когда мне потребовалось отправить на печать документ у меня снова окно «Проверки доступа», ввел идентификационные данные от моей системы Ubuntu Trusty и документ успешно был распечатан.

Также спустя пару часов, печать пошла и без какого либо запроса ввода логина и пароля для проверки подлинности.

Делаю вывод, что разобрал шаги по добавлению расшаренного принтера с Windows системы которая к тому же имеет место быть в домене. На этом я прощаюсь, с уважением автор блога Олло Александр aka ekzorchik.

Используйте прокси ((заблокировано роскомнадзором, используйте vpn или proxy)) при использовании Telegram клиента:

Поблагодари автора и новые статьи

будут появляться чаще 🙂

Карта МКБ: 4432-7300-2472-8059
Yandex-деньги: 41001520055047

Большое спасибо тем кто благодарит автора за практические заметки небольшими пожертвованиями. С уважением, Олло Александр aka ekzorchik.

Читайте также:  Какие процессы необходимы для windows
Оцените статью