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

Эта статья поможет разобраться, как добавить сетевой принтер в Astra Linux независимо от его модели — будь то HP LaserJet, Canon imageCLASS или Brother HL-L2350DW. Мы рассмотрим два основных способа: через графический интерфейс system-config-printer и вручную с использованием командной строки. Особое внимание уделим типичным ошибкам, таким как неверно указанный IP-адрес принтера или отсутствие драйверов для конкретной модели, которые часто становятся причиной неудачного подключения.

1. Подготовка: проверка сети и принтера

Прежде чем приступать к настройке, убедитесь, что принтер и компьютер находятся в одной сети. Это критично: если принтер подключён к другому роутеру или VLAN, Astra Linux его просто не увидит. Проверить соединение можно с помощью команды:

ping 192.168.1.100

(замените 192.168.1.100 на фактический IP вашего принтера).

Если ответов нет, выполните следующие шаги:

  • 🔌 Проверьте физическое подключение принтера к сети (кабель Ethernet или Wi-Fi).
  • 📡 Убедитесь, что принтер включён и на нём не горят индикаторы ошибок (например, мигающий оранжевый светодиод у HP сигнализирует о проблемах с картриджем).
  • 🖥️ На компьютере отключите фаервол временно: sudo systemctl stop firewalld (если используется firewalld).

Если принтер новый и его IP-адрес неизвестен, найдите его через веб-интерфейс роутера (обычно по адресу 192.168.1.1) или распечатайте тестовую страницу самотестирования (на большинстве принтеров удерживайте кнопку питания 5–10 секунд).

📊 Какой тип подключения использует ваш принтер?
По Ethernet (провод)
По Wi-Fi
Через USB (хочу перевести на сеть)
Не знаю

2. Установка необходимых пакетов

В Astra Linux по умолчанию может отсутствовать графический инструмент для управления принтерами. Установите его командой:

sudo apt install system-config-printer

Также потребуются пакеты для поддержки различных моделей принтеров:

  • 🖨️ cups — система печати (уже предустановлена в большинстве дистрибутивов).
  • 📄 foomatic-db — база данных драйверов для принтеров.
  • 🔧 printer-driver-all — метапакет с драйверами для большинства брендов (HP, Canon, Epson и др.).

Установите их одной командой:

sudo apt install cups foomatic-db printer-driver-all
⚠️ Внимание: Если вы используете Astra Linux Common Edition (бесплатную версию), некоторые проприетарные драйверы могут отсутствовать в репозиториях. В этом случае потребуется скачать драйвер с сайта производителя принтера и установить его вручную.

После установки перезапустите службу cups:

sudo systemctl restart cups

3. Добавление принтера через графический интерфейс

Самый простой способ — использовать утилиту system-config-printer. Запустите её из терминала:

system-config-printer

Или найдите в меню приложений Настройка принтера. Далее следуйте инструкции:

  1. Нажмите Добавить (значок "+").
  2. В списке устройств выберите Сетевой принтер.
  3. Укажите один из протоколов:
    • 🌐 AppSocket/HP JetDirect — для большинства сетевых принтеров (HP, Brother).
    • 🖧 Internet Printing Protocol (ipp) — для современных моделей с поддержкой IPP.
    • 📡 LPD/LPR — устаревший протокол, но ещё встречается в некоторых сетях.
  4. В поле Хост введите IP-адрес принтера (например, 192.168.1.100).
  5. Нажмите Вперёд и выберите драйвер из списка. Если вашей модели нет, нажмите Обновить список или установите драйвер вручную (об этом ниже).
  6. Если принтер успешно добавлен, распечатайте тестовую страницу, чтобы проверить работоспособность.

    Принтер включён и подключён к сети|

    IP-адрес принтера известен и пингуется|

    Установлены пакеты system-config-printer, cups, foomatic-db|

    Служба cups перезапущена (sudo systemctl restart cups)|

    Проприетарные драйверы скачаны (если требуются)-->

    4. Ручное добавление принтера через командную строку

    Если графический интерфейс недоступен или принтер не определяется автоматически, используйте команду lpadmin. Синтаксис:

    sudo lpadmin -p ИМЯ_ПРИНТЕРА -E -v СТРОКА_ПОДКЛЮЧЕНИЯ -m ДРАЙВЕР

    Пример для принтера HP LaserJet P1102w с IP 192.168.1.100:

    sudo lpadmin -p HP_LaserJet_P1102 -E -v socket://192.168.1.100 -m drv:///sample/drivers/foomatic-hpijs.ppd/hp-laserjet_p1102.ppd

    Разберём параметры:

    • -p ИМЯ_ПРИНТЕРА — произвольное имя (латиницей, без пробелов).
    • -E — включить принтер после добавления.
    • -v СТРОКА_ПОДКЛЮЧЕНИЯ — URI принтера. Варианты:
      • socket://IP_АДРЕС — для AppSocket.
      • ipp://IP_АДРЕС/ipp/port1 — для IPP.
      • lpd://IP_АДРЕС/queue — для LPD.
  • -m ДРАЙВЕР — путь к PPD-файлу драйвера. Узнать список доступных драйверов можно командой lpinfo -m.
  • Чтобы найти подходящий драйвер, выполните:

    lpinfo -m | grep -i "hp"  # для принтеров HP
    

    lpinfo -m | grep -i "canon" # для Canon

    ⚠️ Внимание: Если после добавления принтер не печатает, проверьте права доступа. В Astra Linux по умолчанию только пользователь root может управлять принтерами. Чтобы разрешить печать обычным пользователям, добавьте их в группу lpadmin:
    sudo usermod -aG lpadmin ваше_имя_пользователя

    5. Установка проприетарных драйверов

    Некоторые принтеры (например, Canon MF4400 или Xerox Phaser 3020) требуют фирменных драйверов, которых нет в стандартных репозиториях. В этом случае:

    1. Скачайте драйвер с официального сайта производителя (раздел Support → Drivers). Обычно это файл с расширением .deb или .tar.gz.
    2. Установите зависимости:
      sudo apt install libcups2-dev libcupsimage2-dev
    3. Распакуйте архив и следуйте инструкции INSTALL или README внутри.
    4. Для .deb-пакетов используйте:
      sudo dpkg -i имя_файла.deb

    После установки обновите список драйверов в cups:

    sudo lpinfo -m | grep -i "canon"  # проверка

    Если драйвер не появляется, перезапустите cups:

    sudo systemctl restart cups
    Бренд принтера Типичный драйвер Команда установки зависимостей
    HP hplip sudo apt install hplip
    Canon cnijfilter2 или ufr2 sudo apt install libglade2-0 libcairo2
    Brother brgenml1 (для лазерных) sudo apt install libc6 libstdc++6
    Epson epson-inkjet-printer-escpr sudo apt install lsb
    💡

    Если после установки драйвера принтер всё равно не работает, попробуйте указать модель вручную через веб-интерфейс CUPS. Для этого откройте в браузере http://localhost:631, выберите принтер и нажмите Modify Printer.

    6. Настройка печати через веб-интерфейс CUPS

    CUPS (Common Unix Printing System) предоставляет веб-интерфейс для управления принтерами. Чтобы им воспользоваться:

    1. Откройте в браузере адрес: http://localhost:631.
    2. Перейдите в раздел Administration → Add Printer.
    3. Введите логин и пароль пользователя с правами lpadmin.
    4. Выберите сетевой принтер из списка или укажите его URI вручную (например, socket://192.168.1.100).
    5. Назначьте драйвер и сохраните настройки.

    Через этот интерфейс можно:

    • 📋 Просматривать очередь печати (Jobs).
    • 🔧 Модифицировать настройки принтера (Modify Printer).
    • 🚫 Приостанавливать или возобновлять печать (Stop/Resume Printer).

    Если принтер не отображается в списке, проверьте, что служба cups-browsed активна:

    sudo systemctl status cups-browsed

    Если она отключена, запустите её:

    sudo systemctl start cups-browsed

    7. Решение распространённых проблем

    Даже после правильной настройки принтер может не работать. Рассмотрим типичные ошибки и способы их устранения:

    Проблема Возможная причина Решение
    Принтер не найден в сети Неверный IP-адрес или принтер в другой подсети Проверьте IP через ping или веб-интерфейс роутера. Настройте статический IP для принтера.
    Ошибка "Filter failed" Неподходящий драйвер или отсутствуют зависимости Установите правильный драйвер и зависимости (sudo apt install --fix-missing).
    Печать "завиливает" в очереди Сбой службы cups или нехватка прав Перезапустите cups и проверьте права пользователя (lpadmin).
    Принтер печатает пустые листы Несовместимый формат данных (например, PostScript вместо PCL) В настройках принтера выберите другой язык печати (PCL, PostScript).

    Если принтер подключён, но печать идёт с артефактами (полосы, иероглифы), попробуйте:

    • 🔄 Переустановить драйвер с официального сайта.
    • 📑 Изменить формат документа на PDF (в настройках печати).
    • 🖼️ Обновить прошивку принтера (инструкция обычно есть в руководстве пользователя).
    Что делать, если принтер требует аутентификацию?

    Некоторые сетевые принтеры (например, Xerox WorkCentre) запрашивают логин и пароль для печати. В этом случае в строке подключения укажите учётные данные в формате:

    ipp://логин:пароль@IP_АДРЕС/ipp/port1

    Если пароль содержит специальные символы (например, @ или #), закодируйте их с помощью URL-encoding (например, @ становится %40).

    8. Оптимизация печати в Astra Linux

    После успешного подключения принтера можно улучшить его работу:

    • 📄 Двусторонняя печать: В настройках принтера включите опцию Duplex (если принтер поддерживает).
    • 🖼️ Качество печати: Для черновиков выберите режим Draft (экономит тонер).
    • 🔒 Ограничение доступа: Чтобы только определённые пользователи могли печатать, отредактируйте файл /etc/cups/cupsd.conf и добавьте строку:
      AllowUser ваше_имя_пользователя
    • 📊 Логи печати: Для мониторинга активности включите логирование в /etc/cups/cupsd.conf:
      LogLevel debug

      Затем перезапустите cups.

    Для экономии ресурсов можно отключить ненужные фильтры печати. Например, если вы не используете печать из браузера, удалите пакет cups-filters:

    sudo apt remove cups-filters
    ⚠️ Внимание: В корпоративных сетях с активным Active Directory может потребоваться дополнительная настройка CUPS для интеграции с доменом. В этом случае обратитесь к администратору сети или документации по Samba и Kerberos.
    💡

    Если принтер подключён по Wi-Fi, убедитесь, что в настройках роутера отключён режим изоляции клиентов (AP Isolation). В противном случае компьютер не сможет "увидеть" принтер в локальной сети.

    FAQ: Частые вопросы по подключению принтера в Astra Linux

    Мой принтер определяется, но при печати выдаёт ошибку "Unsupported format". Что делать?

    Эта ошибка возникает, когда драйвер принтера не поддерживает формат отправляемого документа. Решения:

    1. В настройках печати выберите формат PDF вместо PostScript.
    2. Обновите драйвер до последней версии с сайта производителя.
    3. Установите универсальный драйвер foomatic:
      sudo apt install foomatic-db-gutenprint
    Как настроить печать по умолчанию в чёрно-белом режиме?

    Откройте настройки принтера через system-config-printer или веб-интерфейс CUPS, перейдите во вкладку Политики (Policies) и установите параметр DefaultColorModel в значение Grayscale. Также можно создать отдельный профиль печати с этими настройками.

    Принтер подключён, но печать идёт очень медленно. В чём причина?

    Возможные причины и решения:

    • 📶 Низкая скорость сети: Подключите принтер по кабелю Ethernet вместо Wi-Fi.
    • 🖨️ Сложный документ: Упростите форматирование (уберите фоновые изображения, шрифты с тенью).
    • 🔧 Неоптимизированный драйвер: Попробуйте драйвер от другого производителя (например, для HP часто подходит драйвер от Samsung).
    • 📡 Перегрузка CUPS: Ограничьте количество одновременно печатаемых документов в /etc/cups/cupsd.conf (параметр MaxJobs).
    Можно ли подключить принтер, который работает через USB, как сетевой?

    Да, для этого нужно:

    1. Подключить принтер по USB к компьютеру с Astra Linux.
    2. Включить общий доступ к принтеру в system-config-printer (галочка Общий).
    3. На других компьютерах в сети добавить принтер по адресу ipp://IP_АДРЕС_КОМПЬЮТЕРА:631/printers/ИМЯ_ПРИНТЕРА.

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

    Как удалить принтер, который больше не используется?

    Удалить принтер можно двумя способами:

    1. Через графический интерфейс: откройте system-config-printer, выберите принтер и нажмите Удалить.
    2. Через командную строку:
      sudo lpadmin -x ИМЯ_ПРИНТЕРА

    После удаления перезапустите cups:

    sudo systemctl restart cups