Подключение принтера к Linux часто вызывает вопросы даже у опытных пользователей. В отличие от Windows или macOS, где драйверы устанавливаются автоматически, в дистрибутивах на базе Linux процесс может потребовать ручных настроек. Эта статья поможет разобраться, как правильно установить локальный принтер через USB, Wi-Fi Direct или Ethernet, избежать типичных ошибок и оптимизировать печать для моделей Canon, HP, Brother и других брендов.
Мы рассмотрим не только базовые шаги через графический интерфейс CUPS (Common Unix Printing System), но и альтернативные методы для серверных версий без GUI, а также способы решения проблем с определением устройства или конфликтами драйверов. Особое внимание уделим совместимости принтеров с открытыми драйверами и проприетарными решениями от производителей.
1. Подготовка системы: проверка совместимости и зависимостей
Прежде чем подключать принтер физически, убедитесь, что ваша система готова к работе с печатными устройствами. Большинство современных дистрибутивов (Ubuntu, Fedora, Debian) включают CUPS по умолчанию, но в минимальных сборках (например, Ubuntu Server или Arch Linux) его может не быть.
Чтобы проверить наличие CUPS, выполните команду:
systemctl status cups
Если служба не активна, установите её:
- 📦 Debian/Ubuntu:
sudo apt install cups - 📦 Fedora/RHEL:
sudo dnf install cups - 📦 Arch Linux:
sudo pacman -S cups
После установки запустите службу и добавьте её в автозагрузку:
sudo systemctl enable --now cups
Если вы используете firewall (например, ufw), откройте порт 631 для доступа к веб-интерфейсу CUPS: sudo ufw allow 631.
Также проверьте список поддерживаемых принтеров на сайте OpenPrinting. Например, модели HP LaserJet Pro M404n или Brother HL-L2350DW имеют отличную поддержку открытыми драйверами, тогда как некоторые Canon PIXMA могут требовать проприетарное ПО.
2. Подключение принтера по USB: базовые шаги
Самый простой способ — подключение через USB. Современные дистрибутивы обычно автоматически определяют устройство, но иногда требуется ручная настройка.
Вот пошаговая инструкция:
- Подключите принтер к компьютеру через
USB-кабель(используйте портUSB 2.0для стабильности). - Включите принтер и дождитесь инициализации.
- Откройте веб-интерфейс
CUPSпо адресуhttp://localhost:631. - Перейдите в раздел
Administration → Add Printer. - Выберите ваше устройство из списка (обычно отображается как
USB Printer #1или с названием модели). - Укажите производителя и модель (если автоматически не определилась).
- Выберите драйвер из предложенных или загрузите его вручную (об этом ниже).
Подключён оригинальный USB-кабель (не удлинитель)|Принтер включён и готов к работе|На компьютере установлены пакеты cups и foomatic-db|Портативные принтеры (например, Canon Selphy) подключены к источнику питания-->
Если принтер не отображается в списке, выполните:
lsusb
Ищите строку с названием производителя (например, Brother Industries, Ltd). Если устройство не определяется, может потребоваться обновление ядра или установка дополнительных модулей.
Что делать, если принтер не определяется по USB?
Если команда lsusb показывает принтер, но CUPS его не видит, попробуйте:
1. Перезагрузить службу sudo systemctl restart cups.
2. Подключить принтер к другому USB-порту (желательно на задней панели ПК).
3. Проверить права доступа: ls -l /dev/usb/lp* — пользователь должен быть в группе lp.
4. Для старых принтеров (например, HP LaserJet 1020) может потребоваться драйвер foo2zjs.
Если проблема остаётся, изучите логи: journalctl -u cups -f
3. Установка драйверов: открытые vs проприетарные решения
Выбор драйвера зависит от модели принтера и ваших предпочтений. Открытые драйверы (например, gutenprint или foo2zjs) подходят для большинства лазерных принтеров, но для струйных моделей (особенно Canon или Epson) может потребоваться ПО от производителя.
| Тип принтера | Рекомендуемый драйвер | Установка | Примечания |
|---|---|---|---|
| Лазерные HP | hplip |
sudo apt install hplip |
Поддерживает большинство моделей, включая HP LaserJet Pro MFP |
| Лазерные Brother | Драйверы с сайта Brother | Скачать .deb/.rpm и установить |
Требуется указать точную модель (например, HL-L2350DW) |
| Струйные Canon | gutenprint или cnijfilter |
sudo apt install printer-driver-gutenprint |
Для PIXMA MG3600 лучше использовать cnijfilter с сайта Canon |
| Универсальные | foomatic-db |
sudo apt install foomatic-db foomatic-db-gutenprint |
Подходит для старых моделей без специализированных драйверов |
Для установки проприетарных драйверов:
- Скачайте драйвер с официального сайта (например, для Brother DCP-L2550DW выберите
Linux (deb)илиLinux (rpm)). - Распакуйте архив и запустите установщик (обычно
./install.sh). - Перезагрузите службу
CUPS.
Для принтеров HP всегда устанавливайте пакет hplip — он включает не только драйверы, но и утилиты для сканирования и обслуживания (например, hp-toolbox).
Важно для струйных принтеров Epson: некоторые модели (например, Epson EcoTank L3250) требуют установки пакета epson-inkjet-printer-escpr вместо универсальных драйверов, иначе печать будет искажённой.
4. Настройка через терминал: альтернатива GUI
Если вы работаете на сервере без графического интерфейса или предпочитаете консоль, настройку можно выполнить через команды lpadmin и lpinfo.
Сначала проверьте доступные принтеры:
lpinfo -v
Затем добавьте принтер (пример для USB):
sudo lpadmin -p HP_LaserJet -E -v usb://HP/LaserJet%20Pro%20M404n -m drv:///sample.drv/generic.ppd
Где:
- 🔹
-p HP_LaserJet— имя принтера (может быть любым). - 🔹
-v usb://...— URI устройства (узнать можно черезlpinfo -v). - 🔹
-m— путь кPPD-файлу(описание драйвера).
Чтобы сделать принтер по умолчанию:
sudo lpadmin -d HP_LaserJet
Проверьте статус:
lpstat -t
Если вы настраиваете принтер на удалённом сервере, используйте ssh -X для перенаправления GUI-интерфейса CUPS на локальную машину: ssh -X user@server, затем откройте localhost:631 в браузере.
5. Решение распространённых ошибок
Даже после правильной установки могут возникать проблемы. Рассмотрим типичные случаи и способы их устранения.
5.1. Принтер определяется, но не печатает
- ❌ Очередь печати заблокирована: выполните
sudo cancel -aиsudo systemctl restart cups. - ❌ Нет прав на устройство: добавьте пользователя в группу
lp:sudo usermod -aG lp $USER - ❌ Неправильный драйвер: удалите принтер в
CUPSи добавьте заново с другимPPD.
5.2. Печать идёт, но с артефактами
- 🖼️ Для струйных принтеров: проверьте настройки качества в драйвере (например,
1200 dpiвместо600 dpi). - 🖼️ Для лазерных: обновите прошивку принтера (для HP используйте
hp-firmware). - 🖼️ Проблемы с цветами: в настройках
CUPSвыберите правильный профильICC.
Как сбросить очередь печати, если задания зависли?
Если команды cancel -a не помогают, удалите файлы вручную:
1. Остановите CUPS: sudo systemctl stop cups.
2. Удалите файлы из /var/spool/cups/: sudo rm -rf /var/spool/cups/*.
3. Запустите службу заново: sudo systemctl start cups.
⚠️ Не удаляйте папку /var/spool/cups целиком — только её содержимое!
Ошибка "Filter failed" часто возникает из-за несовместимости драйвера с версией Ghostscript. Обновите его:
sudo apt install ghostscript
Если принтер Canon выдаёт ошибку cups-filter, установите пакет printer-driver-c2esp — он содержит фильтры для струйных моделей.
6. Оптимизация печати: настройки по умолчанию и профили
После успешной установки настройте принтер для максимальной эффективности. В CUPS можно задать параметры по умолчанию, такие как:
- 📄 Двусторонняя печать: включите в настройках принтера (экономит бумагу).
- 🖨️ Качество печати: для черновиков выберите
Fast Draft(300 dpi). - 🔄 Ориентация: установите
PortraidилиLandscapeв зависимости от задач. - 📦 Источник бумаги: укажите лоток по умолчанию (например,
Tray 1).
Чтобы изменить настройки по умолчанию через терминал:
lpoptions -p HP_LaserJet -o Duplex=DuplexNoTumble -o Resolution=600dpi
Для создания профилей печати (например, для фотографий или документов):
- В
CUPSперейдите вPrinters → [Ваш принтер] → Maintainance → Print Test Page. - Сохраните настройки как новый профиль в меню
Job Options.
Для струйных принтеров Epson или Canon с системой непрерывной подачи чернил (СНПЧ) настройте профиль ICC через утилиту system-config-printer или вручную загрузите профиль с сайта производителя.
Если вы часто печатаете PDF-файлы, установите пакет poppler-utils для лучшей обработки векторной графики: sudo apt install poppler-utils.
7. Подключение по сети: Wi-Fi и Ethernet
Для сетевых принтеров процесс немного отличается. Рассмотрим два варианта: Wi-Fi Direct и Ethernet.
7.1. Подключение по Wi-Fi
- На принтере активируйте режим
Wi-Fi Direct(обычно в менюNetwork Settings). - Запомните
SSIDи пароль, сгенерированные принтером. - На компьютере подключитесь к этой сети (временное подключение).
- Добавьте принтер в
CUPSчерезAdd Printer → Network Printer. - Выберите протокол
DNSSD(Bonjour) илиLPD/LPR.
7.2. Подключение по Ethernet
- Соедините принтер с роутером через
Ethernet-кабель. - Найдите
IP-адреспринтера (обычно печатается на тестовой странице или в меню принтера). - В
CUPSвыберитеAdd Printer → Network Printer → LPD/LPR Host or Printer. - Укажите IP в формате
lpd://192.168.1.100.
Для принтеров HP с поддержкой AirPrint (например, HP OfficeJet Pro 9015e) можно использовать протокол IPP:
ipp://192.168.1.100/ipp/print
Как найти IP-адрес принтера без дисплея?
Если принтер не имеет экрана (например, Brother HL-L2300D), распечатайте страницу самотестирования:
1. Удерживайте кнопку Go (или Power) 5–10 секунд.
2. На листе будет указан IP-адрес, MAC-адрес и модель.
Если принтер подключён к роутеру, найдите его в списке устройств в веб-интерфейсе роутера.
8. Автоматизация и мониторинг: утилиты для управления печатью
Для упрощения работы с принтерами в Linux существует несколько полезных утилит:
| Утилита | Назначение | Установка | Пример использования |
|---|---|---|---|
system-config-printer |
Графический интерфейс для CUPS |
sudo apt install system-config-printer |
Настройка профилей печати и очередей |
hp-toolbox |
Утилита для принтеров HP (уровень чернил, тесты) | Входит в пакет hplip |
hp-toolbox -p HP_LaserJet |
cups-browsed |
Автоматическое обнаружение сетевых принтеров | sudo apt install cups-browsed |
Запуск: sudo systemctl enable --now cups-browsed |
gtklp |
Альтернативный GUI для CUPS |
sudo apt install gtklp |
Удобный интерфейс для управления заданиями |
Для мониторинга уровня чернил в струйных принтерах (например, Canon PIXMA или Epson EcoTank) используйте:
sudo apt install ink
Затем запустите:
ink -p [имя_принтера]
Чтобы настроить автоматическое оповещение о низком уровне тонера (для лазерных принтеров), создайте скрипт на bash, который будет проверять статус через snmp (для сетевых моделей) или hp-toolbox (для HP).
Для принтеров Brother установите утилиту brgenml1 для мониторинга расходников: sudo apt install brgenml1. Она поддерживает модели вроде DCP-L2550DW и MFC-L2710DW.
Критическая информация для серверных систем: если принтер подключён к Linux-серверу, настройте доступ для других пользователей сети через CUPS. Для этого отредактируйте /etc/cups/cupsd.conf, добавив строку Allow @LOCAL в секцию <Location />, затем перезапустите службу.
FAQ: Частые вопросы по установке принтеров на Linux
Мой принтер Canon MG3600 определяется, но печатает пустые листы. Что делать?
Эта проблема типична для струйных принтеров Canon при использовании открытых драйверов. Решение:
- Удалите текущий принтер в
CUPS. - Скачайте официальный драйвер
cnijfilter2с сайта Canon для вашей модели. - Установите его согласно инструкции (обычно
./install.sh). - Добавьте принтер заново, выбрав драйвер от Canon.
Если проблема остаётся, проверьте картриджи — возможно, они не оригинальные или засохли.
Как подключить принтер HP LaserJet Pro M404n по USB, если он не определяется?
Для этой модели требуется пакет hplip с поддержкой plugin:
- Установите
hplip:sudo apt install hplip. - Запустите
hp-setupи следуйте инструкциям. - Если запросит плагин, скачайте его через
hp-plugin.
После установки принтер должен определиться как HP LaserJet Pro M404n, hplip 3.22.10.
Можно ли использовать один принтер Brother DCP-L2550DW на нескольких Linux-ПК?
Да, для этого:
- Подключите принтер к одному из ПК по
USBили к роутеру поEthernet. - На основном ПК настройте общий доступ в
CUPS(вcupsd.confдобавьтеAllow @LOCAL). - На других ПК добавьте принтер через
IPP(например,ipp://192.168.1.100:631/printers/Brother_DCP).
Для удобства используйте статический IP-адрес для принтера в настройках роутера.
Принтер Epson L3250 печатает с полосами. Как исправить?
Полосы при печати на струйных принтерах Epson обычно связаны с:
- Засохшими дюзами печатающей головки (запустите очистку через
epson-inkjet-printer-utility). - Неправильным профилем цвета (установите профиль
ICCдля вашей бумаги). - Низким качеством чернил (используйте оригинальные или сертифицированные СНПЧ).
Также проверьте настройки в драйвере: для фотографий выберите High Quality и 1440 dpi.
Как печатать с Linux на принтер, подключённый к Windows-ПК?
Используйте функцию общего доступа в Windows:
- На Windows-ПК откройте
Панель управления → Устройства и принтеры. - ПКМ по принтеру →
Свойства принтера → Доступ→ включите общий доступ. - Запомните имя принтера (например,
\\WIN-PC\HP_LaserJet). - На Linux добавьте принтер через
SMBвCUPS:
smb://192.168.1.101/HP_LaserJet
Убедитесь, что на Windows включён протокол SMB1.0 (в Включение или отключение компонентов Windows).