Установка драйвера принтера на Linux часто кажется пользователям сложной задачей — особенно тем, кто недавно перешёл с Windows или macOS. На самом деле процесс можно разбить на несколько логичных шагов, а современные дистрибутивы (Ubuntu, Fedora, Debian) предлагают полуавтоматические решения для большинства популярных моделей. Однако есть нюансы: некоторые производители (например, Canon или Brother) требуют ручной установки проприетарных драйверов, а старые или редкие принтеры могут потребовать компиляции из исходников.
В этой статье мы разберём все актуальные способы установки — от стандартного менеджера печати CUPS до ручной компиляции драйверов из .ppd-файлов. Особое внимание уделим типичным ошибкам (например, принтер не определяется или печать идёт с артефактами) и способам их устранения. Если вы используете принтер HP, Epson, Xerox или Kyocera — здесь найдёте конкретные рекомендации для вашей модели.
Прежде чем начинать, убедитесь, что принтер физически подключён к компьютеру (по USB или сети) и включён. Для сетевых принтеров проверьте, что они находятся в той же подсети, что и ваш Linux-ПК. Если принтер беспроводной — подключите его к Wi-Fi через панель управления на устройстве.
1. Автоматическая установка драйвера через CUPS
Система печати CUPS (Common Unix Printing System) встроена в большинство дистрибутивов Linux и поддерживает тысячи моделей принтеров. Она пытается автоматически определить устройство и подобрать драйвер из своей базы. Вот как это работает:
Откройте браузер и перейдите по адресу http://localhost:631 — это веб-интерфейс CUPS. Если страница не открывается, убедитесь, что служба запущена:
sudo systemctl start cups
sudo systemctl enable cups
В интерфейсе CUPS выберите Administration → Add Printer. Система предложит ввести логин и пароль администратора (используйте ваши данные от Linux). Далее:
- 🔌 Если принтер подключён по USB, он должен появиться в списке
Local Printers. Выберите его. - 🌐 Для сетевого принтера укажите его IP-адрес или выберите из списка
Network Printers(если поддерживается автообнаружение). - 📄 На следующем шаге CUPS предложит выбрать драйвер. Если ваша модель есть в списке — выберите её. Если нет, попробуйте универсальные драйверы (например,
HP LaserJet 4для многих лазерных принтеров).
После добавления принтера распечатайте тестовую страницу через Maintenance → Print Test Page. Если печать прошла успешно — драйвер установлен корректно.
Если принтер не определяется в CUPS, попробуйте переподключить его к другому USB-порту или перезагрузить компьютер. Иногда помогает отключение модуля usb_storage (если принтер определяется как флешка).
2. Установка проприетарных драйверов от производителя
Многие производители (особенно Canon, Brother и Epson) выпускают закрытые драйверы для Linux в виде .deb или .rpm пакетов. Эти драйверы часто обеспечивают лучшую совместимость, чем универсальные решения CUPS. Где их скачать и как установить?
Перейдите на официальный сайт производителя принтера в раздел поддержки. Например:
- 🖨️ HP:
https://developers.hp.com/hp-linux-imaging-and-printing(проект HPLIP) - 🖨️ Brother:
https://support.brother.com/g/b/downloadlist.aspx - 🖨️ Epson:
https://epson.com/Support(ищите раздел "Linux Drivers")
Скачайте драйвер для вашей модели и архитектуры системы (amd64 для 64-битных систем, i386 для 32-битных). Установка обычно сводится к запуску скрипта или установке пакета:
# Для .deb (Debian/Ubuntu)
sudo dpkg -i имя_файла.deb
sudo apt install -f # Установит зависимости
Для .rpm (Fedora/OpenSUSE)
sudo rpm -ivh имя_файла.rpm
Убедиться, что скачан драйвер для правильной модели принтера|
Проверить совместимость с версией вашего дистрибутива|
Отключить принтер от USB (если подключён)|
Закрыть все программы, использующие печать-->
Внимание! Проприетарные драйверы могут конфликтовать с открытыми аналогами. Если после установки принтер перестал работать, удалите старые драйверы:
sudo apt remove printer-driver-foo # Для Debian/Ubuntu
sudo dnf remove foo-driver # Для Fedora
3. Ручная установка драйверов через PPD-файлы
Если ваш принтер не поддерживается ни CUPS, ни производителем, можно попробовать установить драйвер вручную через .ppd-файл (PostScript Printer Description). Этот метод подходит для старых или редких моделей, а также для принтеров, которые эмулируют PostScript.
Сначала найдите .ppd-файл для вашей модели. Источники:
- 🔍 OpenPrinting (
https://www.openprinting.org/printers) — база данных драйверов с открытым исходным кодом. - 🔍 Архивы производителя (иногда
.ppdвходит в состав драйвера для Windows). - 🔍 Форумы пользователей Linux (например, Arch Wiki или Ubuntu Forums).
Скачав .ppd-файл, установите его через CUPS:
- Откройте
http://localhost:631→Administration → Add Printer. - Выберите ваш принтер (если он уже добавлен, удалите его и добавьте заново).
- На шаге выбора драйвера нажмите
Choose Fileи загрузите.ppd-файл. - Завершите настройку и распечатайте тестовую страницу.
Если принтер печатает, но с ошибками (например, неправильные цвета или обрезанные края), попробуйте другой .ppd-файл или отредактируйте текущий в текстовом редакторе (ищите параметры *DefaultResolution или *ColorModel).
Как редактировать PPD-файл?
PPD-файлы — это текстовые файлы с описанием возможностей принтера. Откройте его в любом редакторе (например, nano или gedit) и найдите строки, начинающиеся с *OpenUI или *Default. Например, чтобы изменить разрешение по умолчанию, найдите блок:
*OpenUI *Resolution/Resolution: PickOne
*DefaultResolution: 600dpi
*Resolution 300dpi/300 dpi: ""
*Resolution 600dpi/600 dpi: ""
Изменив *DefaultResolution на 300dpi, вы установите разрешение по умолчанию в 300 точек на дюйм.
4. Установка драйверов для принтеров HP (HPLIP)
Притерны HP — одни из самых распространённых, и для них существует отдельный проект HPLIP (HP Linux Imaging and Printing). Он поддерживает большинство моделей HP, включая многофункциональные устройства (МФУ) с функцией сканирования.
Установить HPLIP можно двумя способами:
- Через репозитории дистрибутива (рекомендуется для большинства пользователей):
# Debian/Ubuntu
sudo apt install hplip hplip-gui
Fedora
sudo dnf install hplip hplip-gui
Arch Linux
sudo pacman -S hplip
- С официального сайта (если нужна самая свежая версия):
Скачайте установщик с https://developers.hp.com/hp-linux-imaging-and-printing и запустите:
sh hplip-*.run
После установки подключите принтер и запустите утилиту настройки:
hp-setup
Следуйте инструкциям мастера. Если принтер не определяется, проверьте, что служба hp запущена:
sudo systemctl start hpd
sudo systemctl enable hpd
Для МФУ HP утилита hp-setup автоматически настраивает не только печать, но и сканирование через SANE. Это избавляет от необходимости устанавливать отдельные драйверы для сканера.
5. Решение распространённых проблем
Даже после успешной установки драйвера могут возникать ошибки. Вот самые частые из них и способы их устранения:
| Проблема | Возможная причина | Решение |
|---|---|---|
| Притер не определяется в CUPS | Отсутствует драйвер или принтер не подключён | Проверьте подключение по USB/сети. Установите драйвер вручную (см. раздел 3). |
| Печать идёт, но с артефактами | Неправильный PPD-файл или драйвер | Попробуйте другой PPD или обновите драйвер. Для HP используйте hp-clean -a и переустановите HPLIP. |
| Притер печатает пустые листы | Закончился тонер/чернила или проблема с картриджем | Проверьте уровень чернил через панель принтера. Для Epson может помочь сброс счётчика чернил (escputil). |
| CUPS не запускается (ошибка 403) | Права доступа или конфликт портов | Проверьте, что служба запущена: sudo systemctl status cups. Если порт 631 занят, измените его в /etc/cups/cupsd.conf. |
Если принтер подключён по сети, но не определяется, проверьте брандмауэр:
sudo ufw allow 631 # Разрешить порт CUPS
sudo ufw allow from [IP_принтера] to any port 631
Внимание! Некоторые принтеры (особенно старые Canon или Lexmark) требуют фирменных картриджей с чипами. Сторонние картриджи могут блокировать печать. В этом случае поможет прошивка принтера или сброс чипа (инструкции ищите на профильных форумах).
6. Настройка печати по умолчанию и дополнительные утилиты
После установки драйвера полезно настроить принтер по умолчанию и изучить дополнительные утилиты для управления печатью.
Чтобы сделать принтер основным, выполните:
lpoptions -d имя_принтера
Посмотреть список доступных принтеров можно командой:
lpstat -p -d
Для управления очередью печати используйте:
- 📄
lpq— показать очередь печати. - 🖨️
lprm— удалить задание из очереди (например,lprm 15, где 15 — ID задания). - 🔄
cancel— альтернативаlprm(например,cancel имя_принтера-15).
Для настройки параметров печати (разрешение, дуплекс, ориентация) удобно использовать графические утилиты:
- 🖼️
system-config-printer(для GNOME/KDE). - 📑
gtklp— лёгкий графический интерфейс для CUPS.
Если вы часто печатаете PDF-файлы, установите cups-pdf — виртуальный принтер, который сохраняет "распечатки" в PDF:
sudo apt install cups-pdf # Debian/Ubuntu
sudo dnf install cups-pdf # Fedora
Виртуальный принтер cups-pdf полезен для создания PDF из любых документов, даже если у вас нет физического принтера. Он появляется в списке принтеров как PDF или Virtual PDF Printer.
7. Совместимость принтеров с Linux: что нужно знать перед покупкой
Если вы только планируете покупать принтер для использования с Linux, обратите внимание на уровень поддержки модели. Не все принтеры одинаково хорошо работают с открытыми драйверами. Вот что важно учитывать:
- 🏆 Лучшая совместимость: принтеры HP (благодаря HPLIP), Brother (хорошие открытые драйверы), Epson (особенно модели с поддержкой ESC/P-R).
- ⚠️ Проблемные модели: многие принтеры Canon (особенно новые струйные) требуют проприетарных драйверов. Некоторые Lexmark и Xerox могут не работать без фирменного ПО.
- 🔧 МФУ и сканеры: для сканирования нужен отдельный драйвер (обычно
SANE). Проверьте поддержку вашей модели наhttps://www.sane-project.org/sane-supported-devices.
Перед покупкой проверьте принтер на сайте OpenPrinting (https://www.openprinting.org/printers). Там каждому устройству присвоен статус:
- 🟢 Perfectly — полная поддержка открытыми драйверами.
- 🟡 Mostly — работают основные функции, но могут быть мелкие баги.
- 🔴 Partially/Paperweight — ограниченная поддержка или не работает вовсе.
При покупке принтера для Linux избегайте моделей с проприетарными системами защиты картриджей (например, некоторые Canon Pixma или Epson EcoTank). Они могут блокировать печать при использовании совместимых картриджей, а обход защиты требует неофициальных прошивок.
FAQ: Частые вопросы по установке драйверов принтера на Linux
🖨️ Мой принтер определяется, но не печатает. Что делать?
Проверьте следующие моменты:
- Убедитесь, что принтер не находится в режиме
Offline(в настройках CUPS или через панель управления принтера). - Проверьте очередь печати:
lpstat -o. Если есть зависшие задания, удалите их:cancel -a. - Перезапустите службу CUPS:
sudo systemctl restart cups. - Если используется сетевой принтер, проверьте, что его IP-адрес не изменился (иногда роутер назначает новый адрес после перезагрузки).
Если ничего не помогает, попробуйте удалить и добавить принтер заново в CUPS.
🐧 Как установить драйвер для принтера Canon на Ubuntu?
Для большинства принтеров Canon потребуется скачать драйвер с официального сайта:
- Перейдите на
https://www.usa.canon.com/support, найдите свою модель. - Скачайте
.deb-пакет для Linux (обычно в разделе "Drivers & Downloads"). - Установите зависимости:
sudo apt install libpopt0 libc6. - Установите драйвер:
sudo dpkg -i скачанный_файл.deb. - Добавьте принтер через CUPS (
http://localhost:631).
Для МФУ Canon может потребоваться отдельный драйвер для сканера (scangearmp2).
🔄 Как обновить драйвер принтера на Linux?
Способ обновления зависит от типа драйвера:
- Для драйверов из репозиториев:
sudo apt update && sudo apt upgrade(Debian/Ubuntu) илиsudo dnf upgrade(Fedora). - Для проприетарных драйверов: скачайте новую версию с сайта производителя и установите её поверх старой.
- Для HPLIP:
sudo apt install --only-upgrade hplipили скачайте свежий установщик сhttps://developers.hp.com/hp-linux-imaging-and-printing.
После обновления перезапустите службу CUPS: sudo systemctl restart cups.
📡 Мой сетевой принтер то появляется, то исчезает. В чём дело?
Проблема обычно связана с:
- Динамическим IP-адресом принтера (решение: назначьте статический IP в настройках роутера).
- Сонным режимом принтера (отключите его в настройках принтера).
- Проблемами с протоколом
mDNS(если принтер использует.local-адрес). Установитеavahi-daemon:
sudo apt install avahi-daemon # Debian/Ubuntu
sudo systemctl enable avahi-daemon
sudo systemctl start avahi-daemon
Также проверьте, что в настройках принтера включён протокол LPD или IPP.
🖥️ Можно ли использовать один принтер с Linux и Windows в сети?
Да, но есть нюансы:
- Если принтер подключён к Linux-ПК, настройте его как сетевой через CUPS (включите опцию
Share This Printerв настройках). - На Windows установите принтер как сетевой, указав IP-адрес Linux-машины и порт
631(протоколIPP). - Если принтер подключён к Windows-ПК, на Linux добавьте его как сетевой принтер
SMB(используйте адрес видаsmb://IP_компьютера/имя_принтера).
Убедитесь, что на Windows включено совместное использование принтера (Панель управления → Устройства и принтеры → Свойства принтера → Доступ).