Linux не видит принтер epson

Обновлено: 05.07.2024

Современная версия сервера печати CUPS, входящая в состав Astra Linux, поддерживает автоматическое объявление и обнаружение принтеров с помощью стандартных протоколов DNS-SD/Bonjour, а также обнаружение принтеров LDAP и Socket.

Для подключения принтеров производства компании Hewlett Packard следует использовать инструмент hp-setup (см. ниже).

Дополнительные действия для подключения принтеров Windows см. Подключение разделяемых Windows-принтеров

При этом работа с обнаруженными и подключенными принтерами может осуществляться с помощью стандартных протоколов : AppSocket (JetDirect/HP JetDirect), Internet Printing Protocol (IPP), Line Printer Daemon (LPD) и пр. Использование стандартных протоколов даёт возможность использовать удалённые принтеры, подключенный к другим, расположенным в той же сети компьютерам с Astra Linux или с любыми другими операционными системами, поддерживающими работу с указанными протоколам. В данной статье будет рассмотрен пример подключения удалённого принтера с использованием операционных система Astra Linux CE и Astra Linux SE. Данная возможность позволяет работать на одном компьютере как с удалёнными, так и с локальными принтерами.

  • Как подключить (установить) принтеры на сервере и клиенте;
  • Как настроить сервер принтеров CUPS;
  • Как использовать инструмент hp-setup;

Первым шагом в настройке как сервера, так и клиента печати Astra Linux является подключение принтера (принтеров), т.е. регистрация принтера в системе управления печатью CUPS. При этом к серверам печати обычно подключаются реальные физические принтеры, подключенных к непосредственно серверу, к клиентам - обычно подключение удалённых разделяемых принтеров, доступных через сервер(ы) печати, однако процедура подключения принтеров одинакова и для сервера и для клиента, а клиент всегда может быть превращён в сервер и наоборот.

Добавление принтера через графический инструмент fly-admin-printer

  1. Запустить менеджер печати fly-admin-printer ("Пуск" - "Панель управления" - "Оборудование" - Принтеры");

Обнаружить доступные принтеры, для чего выбрать в меню:

После этого будет осуществлён автоматический поиск доступных принтеров.

  • Политика операций "default";
  • Нулевые минимальные и максимальные уровни заданий.

Добавление принтера через web-интерфейс принт-сервера CUPS

Автоматическое добавление сетевых принтеров через cups-browsed

Для автоматизации подключения разделяемых/сетевых принтеров, в том числе принтеров, не поддерживающих современный протокол объявления DNS-SD/Bonjour (например, принтеры, предоставляемые серверами печати LDAP или принтеры, предоставляемые серверами печати с устаревшими версиями CUPS), можно использовать пакет cups-browsed.

cups-browsed имеет четыре независимо используемых функции:

3. Отслеживание принтеров, предоставляемых принт-серверами LDAP, и создание/удаление локальных очередей печати к этим принтерам.

4. Широковещательная рассылка локальных очередей по протоколу CUPS.

Пакет может быть установлен командой:

Для установки пакета cups-browsed в OC Astra Linux Special Edition требуется подключение диска со средствами разработки.

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

На сервере печати необходимо:

  • отдельно разрешить общий доступ к каждому принтеру (в свойтствах принтера);
  • разрешить общий доступ к серверу CUPS и, через него, к разделяемым принтерам, , для чего

    либо выполнить на сервере печать в консоли команды:

    sudo /usr/sbin/cupsctl --remote-admin --remote-any
    sudo systemctl restart cups

    либо с помощью WEB-браузера

    Важно: для редакций Astra Linux SE убедиться, что опция MacEnable в файле /etc/cups/cupsd.conf установлена в значение "on":



    Для подключения принтеров HP следует использовать инструмент hp-setup. Этот инструмент входит в состав пакета hplip и устанавливается автоматически при стандартной установке ОС Astra Linux. Инструмент доступен через графичеcкое меню

    "Пуск" - "Панель управления" - "Оборудование" - "Установка принтеров, факсов и сканеров HP"

    или из командной строки. При этом из командной строки инструмент может быть запущен в графическом режиме:

    или в текстовом интерактивном режиме:

    Для подключения принтера HP следует запустить инструмент hp-setup. После запуска инструмента в открывшейся форме "Обнаружение устройств" выбрать вариант подключения принтера, и нажать кнопку "Далее" .

    Инструмент осуществит поиск подключенных принтеров и выведет форму "Выбор из обнаруженных устройств" со списоком обнаруженных устройств:


    Для установки устройства выбрать его в списке, и нажать кнопку "Далее", после чего в форме "Настройка устройства" внести дополнительную информацию об устройстве (не обязательно), и, при желании напечатать тестовую страницу, отметить соответствующий check-box. После заполнения формы нажать кнопку "Завершить":


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


    Добавление принтера производится через графический инструмент fly-admin-printer, или через web-интерфейс (все действия должны выполняться пользователем с правами администратора печати).

    Добавление через графический инструмент fly-admin-printer производится следующим образом:
    "Очереди" → Правая кнопка мыши → "Добавить" → "Принтер" → "Другой" → "Протокол печати ipp" → "Сканировать" → "Узел" → 192.168.1.7 → "Сканировать".
    Далее в списке "Обнаруженные устройства" должен появиться адрес сервера, например "192.168.1.7:631". После его выбора нажать кнопку "Да", после чего появится диалог выбора очереди печати IPP:


    В диалоге выберать нужный принтер и нажать "Да", затем нажать "Далее" и ввести информацию о принтере. Драйвер принтера должен быть указан такой же, как и на сервере. После завершения настройки принтер готов к работе. Для редакций SE дистрибутива также надо выставить политику операций и желаемую минимальную/максимальную метку заданий. Следует также учесть, что метки безопасности принтера и политика операций распространяются только на подключения к серверу печати клиента.

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

    Большинство производителей принтеров не выпускали отдельных драйверов для Linux, поэтому при выборе принтера, сначала нужно смотреть поддерживается ли он вашей операционной системой. В этой статье мы разберем как подключить принтер к Ubuntu на примере принтера Canon Pixma e414 и дистрибутива Ubuntu 18.04, однако общий алгоритм действий подойдет и для других дистрибутивов Linux.

    Как подключить принтер к Ubuntu

    1. Добавление принтера в систему

    Статья ориентирована в первую очередь на современные принтеры, которые подключаются к компьютеру по USB. Сначала подключите принтер к питанию, включите его, а потом подключите USB провод от принтера к компьютеру.

    Сначала нужно проверить не определяет ли ваша система принтер автоматически. Как я уже говорил, современные принтеры поддерживают универсальный протокол обмена данными и он поддерживается в новых версиях дистрибутивов. Для этого откройте утилиту Настройки, затем пункт Устройства и Принтеры:


    Здесь нажмите кнопку Добавить принтер:


    Система выполнит поиск принтеров, а затем выведет список найденных устройств. Если принтер был обнаружен, выберите его и нажмите кнопку Добавить.

    Когда принтер появится в основном окне вы можете нажать на шестеренку и установит галочку Использовать по умолчанию, чтобы всегда применять этот принтер для печати. Более точная настройка принтера ubuntu может быть выполнена с помощью пункта Параметры печати. Здесь же можно посмотреть очередь печати. Теперь можете что-то напечатать, например, с помощью LibreOffice, чтобы убедиться, что все работает.

    2. Поиск и установка драйверов

    Если первый способ не сработал, вам придется попытаться найти драйвера для этого принтера в интернете. Даже если принтер заработал, но в нём есть встроенный сканер, то без драйверов вы не сможете заставить его работать.

    Драйвера можно найти с помощью Google или на официальном сайте. Для поиска драйверов также можно использовать Vendor ID вашего принтера, который вы можете посмотреть с помощью команды lsusb:


    Чтобы понять какая из записей принадлежит принтеру можно выполнить команду с подключенным принтером и без него, а потом сравнить или же искать в выводе название принтера. Например, у меня это Canon. Для этого принтера можно найти драйвера на официальном сайте. Отдельно для Canon e414 драйверов нет, но он будет работать с драйверами e410.


    Загрузите версию драйвера для Linux в формате deb, а также утилиту для сканирования ScanGear. Затем распакуйте архивы с пакетами и установите сами пакеты. Разработчики поставляют в архиве не только пакет, но и скрипт для установки, поэтому после распаковки достаточно запустить скрипт .sh:

    tar xvzf cnijfilter2-5.10-1-deb.tar.gz
    sudo sh ./cnijfilter2-5.10-1-deb/install.sh

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

    Аналогичные действия надо проделать для утилиты сканирования:

    tar xvzf scangearmp2-3.10-1-deb.tar.gz
    sudo sh ./scangearmp2-3.10-1-deb/install.sh

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

    Установка принтера Ubuntu завершена. В моем Canon E414 сканер настроить так и не удалось, а печать прекрасно работает. Если этот драйвер у вас не сработал для Canon, то можно попробовать UFRII драйвер, тот драйвер устарел и не обновляется, зато драйвер UFR регулярно получает обновления. Загрузить его можно по ссылке. Установка аналогична предыдущему варианту, только после завершения установки надо добавить принтер через CUPS. Как это делается смотрите ниже.

    3. Ручная настройка CPUS

    Common Unix Printer Service - это служба для настройки и управления принтерами, разработанная в Apple для MacOS и других операционных систем на базе Unix. Она может использоваться для подключение принтера в linux локально, а также для группы компьютеров и имеет веб-интерфейс для удобного управления. Если в вашей системе программа ещё не установлена, вы можете установить её командой:

    sudo apt install cups

    Затем нужно добавить текущего пользователя в группу lpamin и перевойти в систему:

    sudo usermod -aG lpadmin $USER

    Теперь, откройте веб-интерфейс, который доступен по адресу localhost:631:

    Стоит отметить, что работать интерфейс будет только в Firefox, в Chromium утилита будет сообщать о проблемах с доступом. Затем перезапустите сервис. В интерфейсе надо открыть вкладку Администрирование, затем нажать кнопку Добавить принтер:


    В следующем окне появится список обнаруженных принтеров. Выберите нужный и нажмите кнопку Continue:


    Далее будет выведена информация о принтере, здесь можно настроить его имя и выбрать нужно ли делать принтер доступным по сети.


    На этом шаге вы можете выбрать версию модели вашего принтера, если она была определена неверно.


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

    Выводы

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

    Нет похожих записей


    Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.

    Если ваш принтер не определяется автоматически, эта статья научит вас, как добавить принтер в Linux вручную.

    Несмотря на то, что сейчас будущее, и мы все должны использовать электронные гаджеты, принтер все еще может пригодиться. Производители принтеров еще не стандартизировали способы взаимодействия своих периферийных устройств с компьютерами, поэтому существует необходимый набор драйверов принтеров, независимо от того, на какой платформе вы работаете. Рабочая группа по принтерам IEEE-ISTO (PWG) неустанно работают над тем, чтобы сделать печать как можно проще. Сегодня многие принтеры определяются автоматически, без участия пользователя.

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

    Драйверы принтера

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

    Существует три разновидности драйверов принтера:

    1. Драйверы Gutenprint с открытым исходным кодом, поставляемые в комплекте с Linux и в виде устанавливаемого пакета.
    2. Драйверы, предоставляемые производителем принтера
    3. Драйверы, созданные третьей стороной.

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

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

    Возможно, в вашем дистрибутиве Linux они уже установлены, но если нет, вы можете установить их с помощью менеджера пакетов. Например, в Fedora, CentOS, Mageia и подобных:

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

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

    В случае, если ваш принтер не поддерживается производителем, существуют сторонние авторы драйверов, которые могут поддерживать ваш принтер. Эти драйверы не имеют открытого исходного кода, но и большинство драйверов производителей тоже. Обидно, когда приходится тратить дополнительные 45 долларов, чтобы получить поддержку принтера, но альтернатива - выбросить принтер в мусор, и теперь вы знаете по крайней мере одну марку, которую следует избегать при покупке следующего принтера!

    Общая система печати Unix (CUPS)

    Common Unix Printing System (CUPS) была разработана в 1997 году компанией Easy Software Products и приобретена Apple в 2007 году. Это основа с открытым исходным кодом для печати в Linux, но большинство современных дистрибутивов предоставляют для нее специализированный интерфейс. Благодаря CUPS ваш компьютер может найти принтеры, подключенные к нему с помощью USB-кабеля, и даже общий принтер по сети.

    После установки необходимых драйверов вы можете добавить принтер вручную. Сначала подключите принтер к компьютеру и включите их оба. Затем откройте приложение "Принтеры" на экране "Деятельность" или в меню приложений.

    Настройки принтера

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

    Если вы видите свой принтер в списке, значит, все готово, и вы уже можете печатать из Linux!

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

    Ваш компьютер ищет подключенные принтеры (также называемые локальными принтерами). Чтобы компьютер искал общий сетевой принтер, введите IP-адрес принтера или его хост.

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

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

    Правильно сформулированный вопрос и его грамотное оформление способствует высокой возможности извлечения достаточно содержательного и по существу ответа. Отметим и другой момент, что большинство периферических механизмов (Canon, HP, Epson) ставится без дополнительной подготовки, но при этом существуют примеры, когда стандартными лекарствами этого сделать не удается.

    Аппарат принтеров Epson в Ubuntu

    Обычно в Ubuntu встроены драйверы на разные принтеры, но бывает что принтера все же нет в перечне или он некорректно работает. Это легко поправимо проприетарным драйвером от Epson. Нехорошо обновляет тэги розыска, но драйверы обновляет. Поэтому иногда модели принтеров, сканеров и МФУ не находтся (пример XP-207 на момент сочинения этого текста найти нельзя было). Поэтому если подобное происходит введите номер серии заместо номера модели (XP-200 вместо XP-207). Дальше можно увидеть, что модель именно 207 удерживается.

    Переходим в папку с драйвером и по теплому клику мышкой устанавливаем .deb пакет.

    Далее Система → Администрирование → Печать, Двойной клик по свому принтеру → Пробная страница

    Как подключить принтер EPSON на Linux Mint 18.3

    Описание проблемы: Поселил Linux Mint 18.3 (64бит) и не могу подключить принтер. Такая же проблема была и с 17.3, но в заключительном итоге я переключался на Windows если надо было что напечатать. Сейчас такой возможности нет, поэтому надо как-то настроить на Linux. Пытался подключиться через wi-fi и через шнур, предпочичаю рекомендуемые драйверы и ничего. Точнее печатает следующую фразу:

    *****************************************************************************
    If you can read this, you are using the wrong driver for your printer
    *****************************************************************************
    0 setgray
    2 setlinewidth
    initclip newpath clippath gsave stroke grestore pathbbox
    exch pop exch pop exch 9 add exch 9 sub moveto
    /Courier findfont 12 scalefont setfont
    0-12 rmoveto gsave product show grestore
    0-12 rmoveto gsave version show ( ) show revision 20 string cvs show grestore
    0-12 rmoveto gsave serialnumber 20 string cvs show grestore showpage

    sudo apt-get install-f

    Инструмент драйвера Epson XP-202/XP-203/XP-206 для Linux

    Для начала необходимо скачать драйвер с официознного веб-сайта по этой ссылочке. Выбираем драйвер под разрядность операционной системы, в моем случае это файл: epson-inkjet-printer-escpr_1.6.10-1lsb3.2_amd64.deb.

    Пакет .deb в Ubuntu устанавливается с помощью менеджера приложений, поэтому клацаем двойной клик по файлику и нажимаем «установить». Инструмент драйвера Epson через менеджер приложений Ubuntu. Чтобы проверить корректность установки драйвера может быть зайти в «Параметры системы -> Принтеры» и убедиться, что Epson появился в списке.

    Установка драйвера Epson XP-202/XP-203/XP-206 для Linux через терминал

    tar xvzf ./iscan-bundle-1.0.4.x64.deb.tar.gz

    Установим необходимые зависимости

    sudo apt-get install xsltproc

    Инструмент самой утилиты в три шага

    sudo dpkg -i ./iscan-bundle-1.0.4.x64.deb/data/iscan-data_1.39.0-1_all.deb
    sudo dpkg -i ./iscan-bundle-1.0.4.x64.deb/core/iscan_2.30.3-1_amd64.deb
    sudo dpkg -i ./iscan-bundle-1.0.4.x64.deb/plugins/iscan-network-nt_1.1.1-1_amd64.deb

    На этом все, в этом можно убедиться открыв программу через «пуск» или набрав в терминале: iscan.

    Инструмент драйверов принтера Epson L800 под Linux

    Предполагается, что драйвер для принтера Epson L800 закатывает в состав общего пакета Linux-драйверов на принтеры Epson. Эта модель даже перечислена в списке сдерживаемых драйвером моделей принтеров. Но по-факту, после установки этого универсального драйвера, в списке сдерживаемых принтеров появляются какие угодно принтеры, кроме Epson L800. Взять свежий драйвер (на момент фантазирования статьи это версия 1.1.1 от 07.2020) можно на следующей странице:

    Пакет с драйвером ясен в виде RPM и DEB пакетов для 32-х и 64-х битных архитектур. Так же есть исходники для возможности установки на экзотические дистрибутивы.

    epson-printer-utility-1.1.1-1lsb3.2.i486.rpm
    epson-printer-utility_1.1.1-1lsb3.2_i386.deb
    epson-printer-utility-1.1.1-1lsb3.2.x86_64.rpm
    epson-printer-utility_1.1.1-1lsb3.2_amd64.deb
    epson-printer-utility-1.1.1-1lsb3.2.src.rpm

    Перед установкой драйвера обязательно надо поставить пакет lsb. Он есть в новых Ubuntu и в Debian Linux как минимум в версии Debian 9:

    apt-get install lsb

    Установка принтера EPSON EPL-6200L в Ubuntu

    tar zxvf epsoneplijs-0.4.1.tgz cd epsoneplijs-0.4.1 ./configure --prefix=/usr make sudo make install

    Откройте: Система -> Администрирование -> Печать. Далее: добавьте принтер, укажите принтер и продолжить, переключатель в Provide PPD file, представьте путь к EPL-6200L-Hardy.ppd и продолжить. После применения все готово. Можете напечатать многоопытную страницу.

    Как подключить принтеры и МФУ Epson в Linux?

    Находится МФУ Epson L355 с возможностью подключения по Wi-Fi. Скачиваем официальный драйвер под Linux в виде rpm-пакета epson-inkjet-printer-201207w-1.0.0-1lsb3.2.i486.rpm в каталог /tmp. Устанавливаем данный пакет из консоли под пользователем root:

    sudo -s
    pkg install -r latest rpm2cpio
    cd /compat/linux/
    /usr/local/bin/rpm2cpio /tmp/epson-inkjet-printer-201207w-1.0.0-1lsb3.2.i486.rpm | cpio -idv

    Пробуем, какие дополнительные библиотеки необходимы для установленного пакета

    Узнается, что не берёт библиотеки libcupsimage.so.2. Данная библиотека есть в пакетах. Устанавливаем её:

    pkg install -r latest linux-c6-cups-libs

    Вновь проверяем, не нужны ли еще какие-либо библиотеки. Выясняется, что не хватает библиотеки libdbus-1.so.3. Также устанавливаем её из пакета:

    pkg install -r latest linux-c6-dbus-libs

    service cupsd restart

    Так как Epson L355 это МФУ, то данное устройство можно использовать для сканирования документов, причем даже если это МФУ подключено по WiFi. Когда IP-адрес МФУ 192.168.1.101, то достаточно в файл /usr/local/etc/sane.d/epson2.conf добавить строку:

    Специфические черты печати на Epson L100 в Linux

    В общем-то, написанное ниже актуально и для любой иной струйчатой модели Epson — они все имеют похожу конструкцию и различаются в основном деталями. Определить степень помощи струйного принтера Epson в ОС Linux можно следующими методами: Ищём модель на OpenPrinting и видим информацию для нашего принтера.

    Смотрим список поддерживаемых моделей на сайте Gutenprint — крупнейшего толковища открытых драйверов для Linux.

    Обращаемся к «почти» официальному ресурсу Epson Download Center. Драйверы в нём ранее разрабатывались японской фирмой Avasys Corp. Модель L100 достаточно новая (хотя это спорно — уже больше года прошло с момента анонса в сентябре 2011 года). L100 — необычная и специальная модель для Epson. И дело даже не в том, что тут СНПЧ, а в некоторых других странностях. Чего стоит отсутствие официальной поддержки Mac OS X.

    Много лет Seiko Epson поставляла со своими устройствами фирменный драйвер для OS X, а тут запускает маководов в сторону всё того же Gutenprint. Обеспечить полную поддержку принтера означает, что в драйвере может быть будет вводить коды от бутылочек — без этой функции невозможно прокачка шлангов и ПГ при заливе новой партии чернил. Пока что функция реализована только в драйвере для Windows.

    Далее я много гуглил, читал форумы, и вот что выяснил. Если 6-цветный принтер L800 есть точная копия T50 с налепленной СНПЧ, то L100 — копия бюджетной модели Epson S21/S22 (в разных регионах Epson продваёт равновеликие принтеры под слегка разными названиями). Бюджетность модели особо и не видна, разве что выдаёт её скорость печати: как я не старался, но больше 12 страниц в минуту L100 не печатает (а заявлено 27 стр/мин).

    Сходственным образом, Epson L100 гарантированно работает с драйвером от S21 и S22. Попутно выяснилось, что есть ещё изменения, драйверы от которых подходят для L100. Среди них есть Epson N10, N11, NX127 и обязательно ряд других. Я остановился на драйвере S21 (Cups+Gutenprint). Проверил — всё работает, принтер печатает во совершенно всех режимах. Казалось бы, вопрос закрыт… Но нет. Если для повседневной офисной печати возможностей приоткрытого драйвера Gutenprint больше чем хватает, то при печати фотографий на фотобумаге вылезла проблема: принтер ошибочно интерпретирует серый краска, оттенки кожи становятся слишком жёлтыми. Это особенно обидно, когда учесть, что Gutenprint в прочем выжимает из принтера все возможности и умеет печатать фото с высочайшим позволением 5760х1440 т/д.

    Я распробовал бороться с желтизной, в частности последовал совету одного перца и вручную проградуировал баланс цветов.

    Увы, данный трюк сработал только для собственно серых оттенков, а на цветном фото вылезли некоторый проблемы: теперь жёлтые цвета стали блёклыми, земляно-серыми. Короче, этот способ не подходится.После данного я пропробовал попечатать с драйвером от самой Epson (эти драйверы раньше делала Avasys). Закачал файл для S21, водворил. С этим драйвером вышла уже другая история, если вкратце, то подобная: цвета перевраны, но иначе. Цветокоррекция помогает, но лишь отчасти.

    Также невозможно добиться наибольшего разрешения (режим Best отпечатывает c 1440×1440 т/д, зато очень быстро).

    И вот, постепенно я пришёл к подобному выводу: надо брать Turboprint. Когда кто не знает, это пакет коммерческих драйверов от немецкой фирмы ZEDONet, включающий поддержку сотен модификаций HP, Canon и Epson. Turboprint включает в себя не лишь драйверы, но и удобный монитор печати, состоятельные средства настройки и калибровки принтера (если забавно, можете посмотреть мой скриншот на ЛОРе).

    Но основная killer feature этого самого Turboprint в последующем: этот драйвер корректно интерпретирует краски, а также умеет работать с профилями ICC. Этот факт значит, что с Turboprint можно делать следы с точной и профессиональной цветопередачей. Например, можно использовать контурные профили от компании Lomond, какие разработаны специально для L100 под разные типы фотобумаги.

    Как ни удивительно, но по опыту я могу заявить, что установка драйверов на Linux в тысячи и тысячи раз проще, чем для Windows. И это не сможет не радовать, ореол загадочной сложности потихоньку улетучивается. Как видите, все может работать по умолчанию, без нужды установки драйверов. А когда все же понадобятся драйвера, то теперь вы знаете, что нужно делать. Для принтеров от иных производителей последовательность усилий будет такой же, только драйвера будут другие и в другом формате.

    Итак, исторически в Linux было 2 системы печати LPRng и BSD LPD. Данные системы постепенно устаревают и на смену им приходит система печати CUPS, которая разработана как замена вышеуказанных систем и возможности которой гораздо шире. При использовании GUI интерфейса GNOME, KDE или другого, управление принтерами с помощью CUPSосуществляется не сложнее, чем в Windows. В статье я же сделаю упор на работу в консольном режиме и GUI инструменты рассматривать практически не буду (клавиши Ctrl+P (печать в GUI) есть на всех клавиатурах и работают одинаково как в Windows, так и в Linux ). Отмечу только, что при использовании графической оболочки, запускаются те же команды, что мы рассмотрим далее.

    Как система печати Linux обрабатывает файлы

    В Linux только пользователь root имеет возможность прямого доступа к устройствам (в нашем случае - к принтеру), остальным пользователям операционная система не дает возможности обращаться напрямую к физическим устройствам, чтобы избежать появления конфликтных ситуаций. Вместо этого, утилиты обращаются к фоновым системным процессам, которые ставят задания в очередь на печать. Кроме всего прочего, данные процессы выполняют преобразование содержимого исходных файлов, подготавливая его к выводу на определенный принтер. Для этого используются язык принтера и протоколы обмена, на основании которых настраивается разрешение печати, формируются страницы, если необходимо, убираются/добавляются колонтитулы, нумеруются страницы.

    Система печати Linux находится под контролем демона cupsd, который обладает всеми необходимыми привилегиями, чтобы обращаться к принтерам от имени пользователя. Данный демон автоматически загружается при запуске Linux и настраивает систему для корректной работы печати. Все необходимые параметры демон берет из каталога /etc/cups.

    В Linux, где установлен CUPS, для печати используются два основных метода. В основе первого лежат команды lpr и lp (в более новых версиях CUPS). Которые в качестве аргумента принимают имя печатаемого файла и отправляют его на печать на принтер по умолчанию. Данные команды являются "мостиком" ко второму способу печати. В основевторого способа лежат обращения к системным вызовам CUPS. Приложения, использующие данный метод могут не только посылать cupsd информацию, но и получать от демона информацию, о возможностях принтера. В ответ на такой запрос, CUPS возвращает приложению файл в формате PPD (PostScript Printer Definition - описание принтера PostScript). Данные файлы описывают возможности, которыми обладают принтеры (размер страницы, разрешение, ориентация и т.п.). Файлы PPD являются ключевыми компонентами впакете драйверов для принтеров. Для принтеров, которые не поддерживают язык PostScript, предоставляются PPD-файлы, описывающие возможности через GhostScript.

    Совершенно не важно, поддерживает приложение CUPS или нет - после того, как демон cupsd примет задание печати, он поместит его в каталог буфера печати - спулер (обычно -/var/spool/cups) вместе с файлом, описывающим данное задание. Далее cupsd сортирует список заданий и отправляет на принтер одно за другим.

    Управление печатью в Linux

    Система печати в Linux довольно сложна и настройка обычно происходит либо очень просто (потому что CUPS все сам обнаружит и настроит), либо очень сложно (к примеру попробуйте быстро заставить работать принтер Canon LBP-810 с Linux). Работа печати в Linux основана на нескольких различных пакетах. Основной - это пакет cups, содержащий демон печати. В большинстве дистрибутивов имеется пакет cups в репозитории. Право выбора, каким образом устанавливать ПО в Linux оставляю вам. Я установил так: apt-get install cups. Данный пакет отлично подхватывает все необходимые зависимости.

    Давайте немного разберемся, что же такое PostScript, а что такое GhostScript? Как показывает практика, приложения Linux и UNIX в большинстве случаев генерируют на выходе файлы двух форматов:

    Простой текст

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

    PostScript

    Язык Adobe PostScript - это один из многих языков принтеров. Большинство приложений, использующих сложное форматирование на выходе всегда создают файл формата PostScript.

    К сожалению, современные принтеры не все поддерживают язык PostScript (особенно бюджетные модели для дома и малого бизнеса). В связи с этим, файл, полученный от приложения, должен пройти обработку GhostScript. GhostScript - это интерпретатор PostScript, который может размещаться в компьютере, а не в принтере.

    Следует заметить, что GhostScript рассматривает все принтеры, как графические устройства. Таким образом, при выводе на печать обычного текстового документа GhostScriptпреобразует текст в растровый рисунок и отправляет этот рисунок принтеру. Это означает, что GhostScript не может использовать шрифты, встроенные в принтер. Это так же означает, что печать документов через GhostScript иногда выполняется более медленно, чем печать тех же документов на драйверах Windows. Хотя в большинстве случаев эта разница практически не заметна, бывают и большие задержки.

    Стандартная установка CUPS поддерживает довольно узкий спектр принтеров (хотя, это довольно спорный момент ). Обычно, это модели с поддержкой PostScript и принтеры компаний HP и Epson. Если принтер автоматически не определился, то необходимо посетить сайт производителя принтера для получения пакета драйверов и инструкций об установке принтера в системе Linux.

    Подключение и настройка принтеров в Linux

    Для подключения принтеров существует несколько интерфейсов, таких как: USB, Ethernet, LPT и COM (последний безбожно устарел). Данным интерфейсам соответствуют устройстваLPT - /dev/lp*, COM - /dev/ttyS* (вместо звездочек, естественно - цифра, обозначающая номер порта, к которому подключено устройство), для взаимодействия с USB используется дерево каталогов /proc/bus/usb, для Ethernet, естественно - IP.

    Прежде чем настроить службы печати в Linux, необходимо убедиться, что соединение с принтером действительно установлено. Наверное, лучше всего это проверить из операционной системы windows, если она у вас установлена 2ой системой. Если нет такой возможности, то давайте попробуем обнаружить наш принетр средствами Linux. Если принтер подключен к LPT, либо COM, то можно выполнить команду для LPT: cat /etc/fstab > | /dev/lp0 или для com: cat /etc/fstab > | /dev/ttyS0. При этом, на устройстве в лучшем случае должно напечататься содержимое файла, в худшем - мигнуть индикаторы состояния. Если используется порт USB, то можно проверить подключение устройства с помощью командыlsusb, вывод которой должен содержать маркировку принтера. Для Ethetnet соединения, думаю достаточно проверить доступность IP принтера командой ping.

    Настройка безопасности CUPS

    В отличии от старых систем LPD, управлять системой печати CUPS удобнее через Web. Однако, по умолчанию, настройка доступа к web интерфейсу может быть настроена не корректно. Некоторые дистрибутивы предоставляют свои инструменты управления CUPS. Все настройки CUPS хранятся в файле /etc/cups/cupsd.conf. Данный файл смоделирован по образу файла Веб сервера Apache. Данному веб серверу я обязательно посвящу обзор. Файл конфигурации cupsd.conf начинается с ряда глобальных параметров директив, которые оформлены в виде пар имя - значение. Для примера, чтобы изменить имя сервера, отправляемое другим системам, необходимо ввести директиву:

    Данная строка определяет имя сервера как my.printserver.local. Файл конфигурации обладает огромным количеством директив, описание которых выходит далеко за рамки данной статьи. К сожалению, на русском языке я так и не нашел полного описания конфигурационного файла. Могу сказать одно - полный пакет документации можно будет почитать на английском прямо из настроенного веб интерфейса. А так же, документация по конфигурационному файлу доступна тут. Приведу Вам начало своего конфигурационного файла, содержащего глобальные директивы:

    Давайте разберем каждый параметр.Как уже упоминалось выше, ServerName указывает имя сервера печати. LogLevel указывает подробность журналирования (по умолчанию при установке параметр равен info, если возникли какие-то проблемы с CUPS, а в протоколе нет ничего информативного, можно поднять уровень до максимального — debug2), Portуказывает на каком порту будет доступен веб-интерфейс, Listen позволяет указать на каком IP адресе будет доступен веб-интерфейс, а так же прослушиваемый сокет.

    Параметры, начинающиеся на Browsing требуют отдельного разговора, они задают настройки "просмотра". В данном случае, под термином просмотр необходимо понимать возможность CUPS обнаруживать принтеры в сети. Данная возможность поддерживается на уровне протокола IPP. Обнаружение происходит посредством широковещательных рассылок, что при большом количестве серверов CUPS или при частом отключении/подключении принтеров может порождать дополнительную нагрузку на сеть. Так же, включение просмотра влечет за собой определенное бремя безопасности. Например, систему настроенную на автоматический поиск легко обмануть, предоставив поддельную информацию о принтерах, а при наличии недочетов в коде CUPS это может привести к негативным последствиям. Давайте разберем указанные параметры:

    BrowseAllow и BrowseDeny

    Указывают CUPS на стороне клиента адреса, от которых может приниматься или отвергаться, соответственно, информация о принтерах. Формат директив соответствует директивам Allow и Deny. В качестве аргумента для данной директивы может быть как отдельный IP, так и подсеть в формате 10.0.0.0/24 или 10.0.0.0/255.255.255.0 или 10.0.0.0-10.0.0.255, так и значение @LOCAL - обозначающее локальную сеть, а так же имена хостов. Возможно использование нескольких данных директив.

    Browsing

    Указывает CUPS предоставлять свои серверы в общий доступ, либо нет. Значения может принимать On или Off соответственно.

    BrowseAddress

    Аналогична BrowseAllow. за исключением того, что она задает КОМУ посылать пакеты, а не от кого принимать.

    Далее в конфигурационном файле указана директива DefaultAuthTape, которая указывает механизм аутентификации, который будет использоваться для организации доступа по умолчанию. Basic - указывает использовать логины/пароли от локальной системы. None - указывает не использовать аутентификацию. При указании параметра Digest все пароли будут передаваться в зашифрованном виде, но тогда необходимо создать пользователей CUPS с помощью команды lppasswd, пользователи будут добавлены в файл/etc/cups/passwd.md5.

    Существует так же директива AuthClass, которая не присутствует в моем конфигурационном файле. Данная директива определяет, какие группы пользователей могут иметь доступ к подсистеме. Может принимать значения: Anonymous, User, System, Group. Параметр Anonymous указывает, что аутентификация производиться не должна. Параметр User говорит, что любой пользователь системы, корректно указавший имя/пароль может иметь доступ. System - говорит, что доступ к подсистеме могут получить только пользователи - члены системной группы cups. Group указывает возможность пользоваться подсистемой только членам группы, которая должна быть указана в последующей директиве AuthGroupName.

    Директива Order определяет порядок предоставления доступа к CUPS по умолчанию. Значение Deny,Allow определяет - отвергать попытки доступа, если право на доступ не указано явно. Если директива имеет значение Allow,Deny, то доступ будет предоставлен, если явно не запрещен.

    В конфиге можно заметить, что после DefaultAuthType идут параметры, сгруппированные в разделы . Такие директивы определяют доступ к определенным функциям сервера.

    Особенности использования Веб интерфейса

    Долго о Веб-интерфейсе описывать не буду. Последняя версия CUPS 1.4 практически полностью русифицирована. Управление принтерами через веб-морду не сложнее процесса установки принтера в операционной системе Windows. Единственный нюанс в Linux - это то, что фактически, "принтер" есть очередь печати. То есть фактически мы посылаем документ в определенную очередь печати с определенными настройками. Очередь привязана к конкретному принтеру-устройству. Таким образом, к одному принтеру может быть привязано несколько очередей с разными настройками. Это как в Windows установить несколько "принтеров" с разными версиями драйвера, но привязанными к одному физическому устройству.

    Кроме веб-интерфейса, существуют так же консольные команды управления CUPS.

    Параметры принтеров CUPS хранит в файле /etc/cups/printers.conf. В данный файл руками лезть не стоит. Он заполняется при настройке в веб интерфейсе. Пример файла:

    Описание каждого установленного принтера (соответствующий PPD-файл) находится в каталоге /etc/cups/ppd/<имя_принтера>.ppd.

    Управление демоном CUPS ничем не отличается от управления любой другой службой. То есть запуск, остановка, перезапуск можно выполнить командами:

    Хочу еще отметить такой нюанс. CUPS разрабатывался как замена системе печати LPD. В LPD источником информации о имеющихся принтерах очередях печати был файл/etc/printcap. CUPS обратно совместим с данной системой печати и если мы посмотрим на файл printcap, то увидим, что:

    файл printcap является символьной ссылкой на /var/run/cups/printcap. Т.о. CUPS сама следит за корректностью данного файла и тем самым обеспечивает обратную совместимость с LPD.

    Устранение неполадок в системе печати

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

    • Постарайтесь проверить работоспособность принтера на другой ОС. Естественно, если он не заработает в другой ОС, то проблема скорее всего в аппаратной части.
    • Проверьте все физические соединения. Питание, информационный провод. Проверьте включен ли принтер и имеется ли бумага в лотке, а так же нет ли сигнализации об ошибках на принтере.
    • Если принтер подключается по USB, LPT, COM, то посмотрите выводы команд lsusb, dmesg на наличие записей о принтере. Если принтер с Ethernet-интерфейсом, проверьте связь с ним командой ping.
    • Если все вышеперечисленные проверки завершились успехом - тщательно проверьте настройки CUPS.
    • Проверьте в Веб-интерфейсе, не остановлена ли очередь печати принтера.
    • Если в статусе принтера написано waiting for job copmlete, то что-то мешает CUPS очистить очередь печати принтера (например отсутствие физического соединения с принтером или нехватка прав доступа).
    • Если при печати на бумаге выводится всякий мусор, то скорее всего выбраны неверные параметры/модель принтера.
    • Так же, для поиска неисправности необходимо просмотреть логи принтера в каталоге /var/log/cups/
    • Ну и как всегда, вам в помощь яндэкс и гугл.

    Файлы и каталоги CUPS

    В статье я уже приводил некоторые каталоги и файлы CUPS. В большинстве случаев, ручное редактирование каких-либо файлов CUPS, кроме /etc/cups/cupsd.conf, требуется довольно редко. Но для общего развития я расскажу о расположении файлов. Итак, как уже говорилось, для хранения настроек CUPS использует каталог /etc/cups/. Основной файл, имеющий для нас интерес - это cupsd.conf, который хранит глобальные настройки, так же существует printers.conf, хранящий настройки принтеров очередей печати. Подкаталог ppdсодержит файлы PPD для локальных принтеров. Файл passwd.md5 хранит зашифрованные пароли пользователей CUPS.

    Большой объем данных лежит в /usr/share/cups/, в котором хранятся служебные файлы. Особый интерес представляет каталог /usr/share/cups/model/ (который в последней версии CUPS был перемещен в /usr/share/ppd/), который хранит описания для принтеров. При каждом старте сервер сканирует каталог /usr/share/cups/model на предмет появления новых описаний принтеров (PPD-файлов).

    В процессе работы CUPS использует каталог /var/spool/cups/ для хранения описаний заданий печати и самих файлов заданий. Владельцем данного каталога должен быть пользователь root и группа lp. Права доступа определены, как 0710 (rwx--x---).

    Так же используется каталог /var/run/cups/ для хранения информации о работе демона, такой как сокет, файл printcap и др.

    Читайте также: