МФУ Panasonic KX-MB2051 на Kubuntu 16, 18

В первый раз пришлось столкнуться с настройкой устройства фирмы Panasonic для работы в GNU/Linux (если не считать подключение домашнего фотоаппарата Panasonic DMC-LZ5, который автоматом распознаётся). Сначала закрались подозрения, что МФУ Panasonic KX-MB2051 не имеет родных драйверов для Linux. Но оказалось, что драйвера есть, хоть и запрятаны в недрах официального сайта.
Итак, поиск драйверов нужно выполнять на сайте https://www.panasonic.com (а не в официальных залежах CUPS). Прямая ссылка, которую я приведу может вам не помочь, т.к. наверняка она формируется динамически и нет гарантии, что это долгосрочная прямая ссылка (все указанные в статье ссылки в любой момент могут перестать существовать, но есть шанс, что останется логика переходов). Переходим: Support -> Download / Business / Consumer FAX. Далее Download for PC interface software. Тут внизу есть карта.

Кликаем на "Europe" и попадаем в перечень МФУ. Выбираем нужную модель и попадаем автоматически на страницу с драйверами. Для KX-MB2051 у меня получилась ссылка https://panasonic.net/cns/pcc/support/fax/europe/table/mb2060ru.htm Тут в перечне поддерживаемых ОС есть неприметная ссылка Click here for Linux® - это как раз нужная страница. Тут есть драйвер для принтера и сканера, а также инструкция по установке для обоих драйверов. Инструкцию реально нужно прочесть, - установка не типична!

Установка принтера

Для установки принтера, подключенного через USB (можно ещё через LAN подключать), нужно:
1. Скачать, распаковать и перейти в каталог драйвера принтера
2. Запустить консоль в каталоге драйвера принтера.
3. запустить установку драйвера:
sudo ./install-driver
4. В системной настройке принтеров добавить принтер. Новый подключенный (и включенный) принтер отобразится среди локальных.
5. В процессе установки подсунуть специальный драйвер от производителя. В моём случае это - /usr/share/ppd/panasonic/L_Panasonic-MB2000-gdi.ppd
6. В добавленном принтере настроить параметры печати: как минимум указать формат бумаги - A4.

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

Процедура аналогична установке принтера.
1. Скачать, распаковать и перейти в каталог драйвера принтера
2. Запустить консоль в каталоге драйвера принтера.
3. запустить установку драйвера:
sudo ./install-driver
4. Дописать в конфиг устройств пару строк:
sudo nano /lib/udev/rules.d/60-libsane.rules
Вставляем перед строкам:
ENV{libsane_matched}=="yes", RUN+="/bin/setfacl -m g:scanner:rw $env{DEVNAME}"

LABEL="libsane_rules_end"
строки:
# Panasonic MFS scanners 
ATTRS{idVendor}=="04da", ENV{libsane_matched}="yes"
4.1 Устанавливаем ещё один пакет:
sudo apt-get install libusb-0.1-4
5. Перезагружаем компьютер.
6. Запускаем программу для сканирования, например, Skanlite и сканер должен определиться в ней.

Кривой init-скрипт

В процессе эксплуатации были замечены проблемы с установкой/обновлением программ через apt-get. Возникали странные ошибки например, такой вывод:

insserv: warning: script 'S80panasoniclpd-init' missing LSB tags and overrides
insserv: warning: script 'panasoniclpd-init' missing LSB tags and overrides
insserv: There is a loop between service plymouth and networking if started
insserv:  loop involving service networking at depth 3
insserv:  loop involving service procps at depth 2
insserv:  loop involving service rpcbind at depth 6
insserv:  loop involving service urandom at depth 4
insserv: There is a loop between service panasoniclpd-init and mountdevsubfs if started
insserv:  loop involving service mountdevsubfs at depth 2
insserv:  loop involving service udev at depth 1
insserv: There is a loop at service plymouth if started
insserv: Starting panasoniclpd-init depends on plymouth and therefore on system facility `$all' which can not be true!
В результате поиска, выяснилось, что есть кривой init-скрипт /etc/init.d/panasonicltd-init. Немного стало легче (хотя бы последующие init-скрипты не ломаются) после добавления в скрипт строк:

### BEGIN INIT INFO
# Provides:         
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Example initscript
# Description:       This file should be used to construct scripts to be
#                    placed in /etc/init.d.  This example start a
#                    single forking daemon capable of writing a pid
#                    file.  To get other behavoirs, implemend
#                    do_start(), do_stop() or other functions to
#                    override the defaults in /lib/init/init-d-script.
### END INIT INFO
Добавляем сразу после первой строки, где объявляется интерпретатор скрипта.

Полезные файлы

На всякий случай оставлю тут полезные файлы для Ubuntu (и производных) и Panasonic KX-MB2051 (на май 2018 года, - но вряд ли на это устройства будут какие-то обновления):
Инструкция к МФУ на русском
Драйвер принтера mccgdi-2.0.10-x86_64.tar.gz
Драйвер сканера panamfs-scan-1.3.1-x86_64.tar.gz
Инструкция к драйверу принтера
Инструкция к драйверу сканера
Решение проблемы со сканером на форуме 
Документация Ubuntu по сканерам

Комментарии

Популярные сообщения из этого блога

Пропорциональное распределение суммы

Битрикс: своя геолокация

Bitrix24 API - разбор демо приложения третьего типа