Как расшарить принтер по сети в Ubuntu Linux (IPP)

Общий доступ к принтеру в Ubuntu Linux (через IPP)

Шаг первый

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

Шаг второй

В Linux печатью управляет служба CUPS. В Ubuntu, доступ к настройкам службы CUPS возможен через любой браузер — нужно открыть адрес «localhost:631» и в панели, на вкладке «Администрирование» включить опции «Разрешить совместный доступ ..», «Разрешить печать из Интернета»:

Это нужно сделать на том компьютере к которому принтер подключен локально! Это будет компьютер-сервер.

Шаг третий

Нужно узнать IP адрес компьютера-сервера. Сделать это можно например через консоль, командой «ifconfig -a».

Шаг четвертый

Подключение принтера по сети, на компьютере-клиенте. Выполняется через стандартный GUI интерфейс, для GNOME это апплет «Печать» (Printing). Нажимаете кнопку добавить принтер, затем в диалоговом окне выбираете «Найти сетевой принтер», вводите IP адрес компьютера-сервера и нажимаете кнопку «Найти»:

В результате будет найден принтер (или несколько принтеров) выделяете его и жмете кнопку «Вперед»:

После установки сетевого принтера нужно проверить его работу.

Метод 2 (CUPS):

Если вы ищете что-то более общее для других дистрибутивов, мы предоставим вам шаги процедуры установки с использованием CUPS:

  1. Прежде всего, убедитесь, что ваш принтер правильно подключен и настроен в сети, в которой вы будете его использовать. Вам может быть интересно установить такие пакеты, как Samba, для совместного использования ресурсов в гетерогенных сетях, если у вас также есть компьютеры с Windows. Если нет, переходите к следующему шагу…
  2. Теперь откройте часто используемый браузер, несмотря ни на что.
  3. В адресной строке введите: «localhost: 631» без кавычек и нажмите ENTER, чтобы перейти к этому адресу, который будет вашим IP-адресом на порту 631.
  4. Теперь вы увидите веб-интерфейс конфигурации CUPS и щелкните вкладку «Администрирование».
  5. Затем перейдите в Добавить принтер, чтобы добавить новый принтер.
  6. Теперь вам нужно ввести имя пользователя и пароль администратора и нажать ENTER.
  7. Выберите, хотите ли вы принтер в списке «Обнаруженные сетевые принтеры», или выберите «Протокол печати через Интернет» и нажмите, чтобы продолжить.
  8. Теперь пора ввести адрес сетевого принтера в появившееся для него текстовое поле. URL-адрес, как я объяснил ранее, будет IP-адресом принтера как «http://192.168.1.11» и нажмите «Подключиться» и «Продолжить».
  9. Теперь введите правильное имя принтера, описание и местоположение в соответствующие поля. Наконец, добавьте принтер и продолжайте».
  10. пришло время выбрать производителя принтера в Makes and Continue.
  11. Затем мы выбираем нашу модель принтера из списка драйверов и «Добавить принтер».

 Попробуйте распечатать тестовую страницу.

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

Для того, чтоб подключить общедоступный принтер в linux, в локальной сети, нам необходимо знать ip адрес компьютера к которому он подключен.

Теперь открываем браузер на компьютере, которому будем настраивать принтер.

Не зависимо от того какая операционная система на нем стоит, для всех систем это работает одинаково.

Пишем путь к системе управления принтером, указав вместо localhost, IP адрес компьютера к которому принтер подключен.

Например, если пк с принтером имеет адрес 192.168.1.41

http://192.168.1.41:631/printers

Перед вами откроется страница сервиса печати компьютера с общедоступным принтером.

Вам необходимо зайти на вкладку принтеры и выбрать нужный вам принтер.

В результате в адресной строке браузера вы увидите полный путь к нашему общедоступному принтеру.

сетевой путь до общедоступного принтера в linux

Теперь открываем мастер установки принтеров, на компьютере в котором нужно его настроить.

Для этого открываем панель управления, выбираем принтеры и устройства , установка сетевого принтера.

Внизу нажимаем — нужный принтер отсутствует в списке и в поле Выбрать общий принтер по имени — вставляем или прописываем этот путь.

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

Нажимаем далее, если спросит какой принтер указываем его из списка и далее.

Так же если нет вашего принтера в списке можно выбрать установить с диска и указать, на заранее подготовленный, файл — драйвер вашего принтера.

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

Пример №1

Печать из Ubuntu 12.04 пользователя, вошедшего в систему как gacanepa (на сервере принтера существует учетная запись с таким же именем).

После того, как будет выполнена печать на принтере PDF, давайте проверим на сервере принтера содержимое каталога /home/gacanepa/PDF:

Файлы PDF создаются с набором прав доступа 600 (-rw——-), что означает, что только владелец (gacanepa, в данном случае) может к ним иметь доступ. Мы можем изменить эту настройку, отредактировав значение переменной UserUMask в файле /etc/cups/cups-pdf.conf. Например, если с помощью команды umask установить значение 0033, то принтер PDF будет создавать файлы со всеми разрешениями для владельца, но всех остальных только с правами на чтение.

Для тех, кто незнаком с командой umask (маска режима создания пользовательских файлов) — она действует как набор прав доступа, которые используются для установки прав доступа к файлам, задаваемые для новых файлов при их создании. Для конкретного значения umask результирующие права доступа к файлам вычисляются путем выполнения побитовой логической операции AND между базовыми правами доступа на файл (0666) и унарного побитового дополнения к umask. Таким образом, для umask, заданного как 0033, права доступа для новых файлов будет NOT (0033) AND 0666 = 644 (права на чтение/запись/выполнение для владельца и только на чтение для всех остальных).

Пример №2

Печать из Ubuntu 12.04 пользователя, вошедшего в систему как jdoe (пользователь с таким именем не существует на сервере).

Файлы PDF создаются с правами, установленными в 666 (-rw-rw-rw-), что означает, что каждый имеет к ним доступ. Мы можем изменить это, отредактировав значение переменной AnonUMask в файле /etc/cups/cups-pdf.conf.

Вы можете этим быть удивлены: Зачем устанавливать сетевой принтер PDF, когда большинство (если не все) в настоящее время настольных дистрибутивов Linux поставляются с встроенной утилитой «Print to file» (Печать в файл), которая позволяет пользователям создавать на лету файлы PDF?

Есть несколько преимуществ использования сетевого принтера PDF:

  • Сетевой принтер (любого рода) позволяет печатать напрямую из командной строки без необходимости сначала открывать файл.
  • В сети с другой операционной системой, установленной на клиентских машинах, сетевой принтер PDF избавляет системного администратора от необходимости устанавливать утилиту создания PDF на каждом отдельном компьютере (а также уменьшая безопасность системы, позволяя конечным пользователям установить такие инструменты).
  • Как мы видели, сетевой принтер PDF позволяет печатать непосредственно на сетевом ресурсе с настраиваемыми правами доступа к файлам.

Установка необходимых драйверов для Linux

1. Используйте драйверы, предлагаемые производителем

В первую очередь, для подключения принтера в Linux следует посетить сайт производителя устройства и скачать соответствующие драйверы под вашу версию Linux. Многие производители предоставляют драйверы для Linux на своих сайтах, что делает установку драйвера намного проще и удобнее.

2. Используйте драйверы, встроенные в ядро Linux

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

Установка сетевых принтеров в настольном компьютере с Ubuntu

На нашей клиентской машине с Ubuntu 12.04 мы открываем меню «Printing» (Печать), т. е. «Dash» -> «Printing» (Панель управления -> Печать). Обратите внимание, что в других дистрибутивах название может немного отличаться, например, «Printers» (Принтеры) или «Print & Fax» (Принтер и факс):

В нашей клиентской машине с Ubuntu принтеры еще не добавлялись:

Ниже перечисляются шаги установки сетевого принтера на настольной клиентской машине с Ubuntu.

1) После нажатия кнопки «Add» (Добавить) будет запущено меню «New Printer» (Новый принтер). Мы выберем вариант «Network printer» -> «Find Network Printer» (Сетевой принтер -> Найти сетевой принтер) и введем адрес IP нашего сервера, а затем нажмем кнопку «Find» (Найти):

2) Внизу мы увидим имена доступных принтеров. Давайте выберем принтер Samsung и нажмем кнопку «Forward» (Далее):

3) Нам будет предложено добавить некоторую информацию о нашем принтере. По окончанию мы нажимаем кнопку «Apply» (Применить):

4) Нам будет задан вопрос о том, хотим ли мы, чтобы распечатать тестовую страницу. Давайте нажмем на кнопку «Print test page» (Печать тестовой страницы):

Было создано задание на печать с локальным идентификатором 2:

5) С помощью веб-интерфейса пакета CUPS мы можем увидеть, что задание печать было успешно принято. Используйте Printers -> SamsungML1640Series -> Show completed jobs (Принтеры -> Серия SamsungML1640 -> Показать завершенные задания):

Мы также можем получить эту же информацию, выполнив на сервере печати следующую команду:

root@debian:~# cat /var/log/cups/page_log | grep -i samsung SamsungML1640Series root 27 [13/Aug/2014:22:15:34 -0300] 1 1 — localhost Test Page — — SamsungML1640Series gacanepa 28 [18/Aug/2014:11:28:50 -0300] 1 1 — 192.168.0.105 Test Page — — SamsungML1640Series gacanepa 29 [18/Aug/2014:11:45:57 -0300] 1 1 — 192.168.0.105 Test Page — —

В файле журнала page_log указана каждая страница, которая была распечатана, причем вместе с пользователем, отправившим задание на печать, датой и временем и адресом IPv4 клиентской машины.

Чтобы установить струйный принтер Epson и принтер PDF, мы должны повторить шаги с 1 по 5, и каждый раз выбирать соответствующую очередь печати. Например, на рисунке, приведенном ниже, мы выбираем принтер PDF:

Тем не менее, обратите внимание, что согласно по умолчанию:

«Файлы PDF будут помещены в подкаталогах с именами, соответствующими именам владельца задания на печать. В случае, если владелец не может быть идентифицирован (т.е. не существует на сервере), результирующий файл помещается в каталог для анонимных работ (если в файле cups-pdf.conf не отключена настройка по умолчанию, то используется var/spool/cups-pdf/ANONYMOUS/)».

Эти каталоги, используемые по умолчанию, можно изменить с помощью изменения значения переменных Out и AnonDirName в файле /etc/cups/cups-pdf.conf. Здесь переменная ${HOME} заменяется домашним каталога пользователя:

Out ${HOME}/PDF AnonDirName /var/spool/cups-pdf/ANONYMOUS

Добавление сетевого принтера

Как и при использовании кабеля USB, если вы уже настроили принтер для подключения к локальной сети

поэтому он должен появиться при поиске доступных принтеров.

LinuxPrintUSBNetwork-GNOME-Printers-Добавить

Если нет, то пора запачкать руки. Веб-интерфейс CUPS выглядит одинаково независимо от того, какую среду рабочего стола Linux вы предпочитаете (также работает на Raspbian), так что пойдем туда.

В веб-интерфейсе CUPS нажмите «Добавить принтеры и классы» или вкладку «Администрирование» вверху.

LinuxPrintUSBСеть-администрирование-CUPS

Затем щелкните Добавить принтер. CUPS предложит вам root-доступ.

На следующей странице будут перечислены принтеры, которые вы уже настроили для своего компьютера, другие машины, доступные в сети, и варианты добавления принтера, который CUPS не смог обнаружить. Если вы знаете IP-адрес вашего принтера, самый простой способ — использовать протокол Интернет-печати, затем введите

ipp: // IP-адрес / принтер / имя_принтера

… Изменяя ip_address и printer_name на правильные значения.

LinuxPrintUSBNetwork-CUPS-IPP

Большинство сетевых принтеров позволяют установить IP-адрес с помощью встроенной панели управления, но эта опция может быть недоступна или вы можете не захотеть назначать адрес удаленно. В любом случае это можно сделать с помощью DHCP. Это звучит сложно, но вам просто нужно добавить строку ниже в конец файла /etc/dhcpd.conf, указав свои имена или номера для hostname, mac_address и ip_address.

host имя хоста {mac_address аппаратный Ethernet-адрес;fixed_ip адрес;}

Убедитесь, что используемое вами имя хоста также указано в файле / etc / hosts или зарегистрировано на вашем DNS-сервере.

CUPS поддерживает другие методы, если вы не хотите использовать DCHP.

Этот процесс работает, только если принтер уже подключен к сети. Если у вас есть старое проводное устройство, вы можете превратить его в беспроводное устройство с помощью Raspberry Pi

Выбор марки и модели принтера

Какой принтер выбрать

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

Основные производители

Среди основных производителей принтеров, поддерживаемых Linux, можно выделить HP, Canon, Epson, Brother, Samsung, Xerox.

Формат подключения

Одним из важных факторов при выборе принтера является формат его подключения. В Linux можно подключить принтер как через USB, так и через сеть – Ethernet или Wi-Fi.

Ресурс картриджа

При выборе принтера важен и ресурс картриджа. Необходимо учитывать его вместимость и стоимость замены. Также стоит обратить внимание на затраты на обслуживание и ремонт.

Рекомендации

  • При выборе принтера обращайте внимание на отзывы и рейтинги на специализированных сайтах.
  • Выбирайте принтер с хорошей поддержкой в Linux, чтобы избежать проблем с установкой и настройкой.
  • Для офисных целей рекомендуется выбирать лазерные принтеры, для домашнего использования – струйные.

Установка драйвера

Если ваш компьютер не распознает ваш принтер автоматически, вам нужно поискать драйвер. В частности, вам нужен файл описания принтера PostScript (PPD). Это описание возможностей принтера, необходимых для его работы.

Использование базы данных Foomatic

ваш дистрибутив Linux, вероятно, будет поставляться с базой данных драйверов программного обеспечения, известной как Footmatic. .

Чтобы найти драйвер Foomatic в Ubuntu, например, перейдите в Системные настройки> Принтеры. Оттуда нажмите кнопку + или добавить. Выберите свой последовательный порт и нажмите Далее. Затем вы должны увидеть экран с просьбой выбрать марку и модель вашего принтера.

LinuxPrintUSBNetwork-Ubuntu-New-printer

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

Установка поставляемого производителем PPD

Если в базе данных Foomatic нет того, что вам нужно, вы можете проверить веб-сайт производителя принтера. Там вы можете найти файл PPD для CUPS.

LinuxPrintUSBNetwork-Ubuntu-Provide-PPD

Производители могут предоставить другие инструкции по установке или инструменты, которые помогут вам в этом процессе. Brother предоставляет драйверы и команды для запуска ваших принтеров в Linux. HP предоставляет программное обеспечение для печати и обработки изображений Linux (HPLIP).

Как все должно работать

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

Чтобы убедиться, что принтер был добавлен автоматически, перейдите в «Настройки»> «Принтеры». Вы должны увидеть название вашего принтера слева.

LinuxPrintUSBNetwork-GNOME-Printers

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

В Linux печатью управляет CUPS.

CUPS (Common UNIX Printing System) — сервер печати для UNIX-подобных операционных систем. Компьютер с запущенным сервером CUPS представляет собой сетевой узел, который принимает задания на печать от клиентов, обрабатывает их и отправляет на соответствующий принтер.

Состав CUPS:

диспетчер печати

планировщик

система фильтрации, преобразующая данные печати в формат, понятный принтеру

Back-end — система, отправляющая данные на устройства печати.

Чтоб сделать принтер общедоступным нам необходимо зайти в настройки службы CUPS .

Для этого вам необходимо в браузере зайти по адресу: localhost:631

Открыть вкладку Администрирование и поставить галочку в чек боксе — разрешить совместный доступ

принтер в linux - служба управления печатью

При внесении различных изменений, система может спросить логин и пароль — нужно вводить логин и пароль администратора этой системы Linux.

Теперь ваш принтер будет доступен для остальных компьютеров в локальной сети.

Проверка поддержки установленным дистрибутивом Linux

1. Проверка установки CUPS

CUPS (Common Unix Printing System) — это стандартная система печати в Linux. Перед проверкой сетевого принтера необходимо убедиться, что CUPS установлен на вашем компьютере. Для этого можно выполнить следующую команду:

dpkg -s cups

Если CUPS установлен, то вы увидите информацию о текущей версии и о том, что пакет установлен. Если же CUPS не установлен, выполните команду:

sudo apt-get install cups

2. Проверка поддержки сетевого принтера

После того как CUPS установлен на вашем компьютере, следующим шагом является проверка поддержки сетевого принтера. Для этого можно выполнить команду:

lpinfo -v

Эта команда покажет доступные способы подключения к принтерам. Если вы видите протоколы, такие как SMB, IPP, LPD или JetDirect, то ваш дистрибутив Linux поддерживает сетевую печать и вы можете подключить свой принтер к сети.

IPP через локальную сеть

Общий (сетевой) доступ к принтеру через IPP имеет плюсы в сравнении с доступом через Samba:

  • Печать через IPP выполняется быстрее чем через Samba.
  • Некоторые «Windows-принтеры» очень сложно или даже невозможно заставить работать через Samba.

При использовании IPP через локальную сеть нужно обеспечить чтобы компьютер-сервер имел постоянный IP адрес. Если сетевые настройки раздаются через DHCP сервер (очень распространенный вариант роутер с DHCP сервером), тогда в настройках DHCP сервера нужно указать постоянный IP адрес для компьютера-сервера (через MAC адрес).

Если доступа к DHCP серверу нет, тогда можно указать ручные настройки для сетевой карты на компьютере-сервере.

Источники

  • https://ru.d-ws.biz/articles/share-printer-linux-ipp.shtml
  • https://www.dvenashka.ru/2021/11/kak-rassharit-printer-po-seti-v-ubuntu-linux-ipp.html
  • https://propk.ru/obshhij-dostup-printer-linux/
  • https://rus-linux.net/MyLDP/lvs/nastroika-setevoi-pechati.html
  • https://bojsya.ru/gadzhety/kak-podklyucit-setevoi-printer-v-linux

[свернуть]