Для настройки принтера M3040DN на Astra Linux, Вам нужно выполнить несколько шагов. (все действия производит под тем пользователем для которого настраиваем доступ, в противном случае распечатать и сканировать сможет только админ ).
Заходим под пользователем, для кого надо настроить мфу.
Настройка принтера:
Либо скачиваем PPD файл. (Linux driver (LinuxDrv_8.1709_Ecosys M3x4xdn_idn_35x0idn.zip)
2. Перейти в каталог со скачанным архивом и распаковать его:
cd ~/Загрузки
sudo unzip Linux_Universal_Driver.zip
3. Распаковать tar-архив:
sudo tar xvf KyoceraLinuxPackages-20230720.tar.gz
4. Перейти в распакованный каталог и установить драйвер:
cd Debian/Global/kyodialog_amd64/
sudo dpkg -i kyodialog_9.3-0_amd64.deb
5. Добавить принтер согласно статье Справочного центра Подключение принтеров к Astra Linux.
6. Установить пакет libcupsimage2 (если он не установлен чтобы не было проблем с ошибкой "Задание остановлено из-за ошибок фильтра"):
sudo apt install libcupsimage2
7. Перезагрузить службу CUPS и компьютер:
sudo systemctl restart cups
sudo reboot
8. Проверить работоспособность принтера.
Настройка сканирования:
- Установить пакеты sane, sane-utils:
sudo apt install sane sane-utils
2. Загрузить с сайта разработчика пакет драйверов SANE:
3. Распаковать загруженный архив:
unzip SANE_Driver_zip.download.zip
4. Установить DEB-пакет для архитектуры AMD64:
sudo dpkg -i kyocera-sane_2.1.4406_amd64.deb
5. Добавить (для сетевого сканирования) в конфигурационный файл /etc/sane.d/kyocera_devices.conf следующую запись:
<IP-адрес_МФУ> ECOSYS M3040dn
5.1 Для подключений через USB, чтобы система легче распознавала мфу, необходимо прописать в конфигурационный файл /etc/sane.d/kyocera.conf следующую запись в конец :
# ECOSYS M3040DN
usb 0x0482 0x0610
6. Проверить список доступных устройств:
scanimage -L
sane-find-scanner -q
Ожидаемый вывод:
device `kyocera_wc3_usb:libusb:001:002' is a Kyocera ECOSYS M3040dn multi-functional device - для подключения по usb
device 'kyocera_wc3:<IP-адрес_МФУ>' is a Kyocera ECOSYS M2040dn A4 - для подключенных по сети
Запустить утилиту "Сканирование" (fly-scan или naps2) и проверить сканирование с сетевым (драйвер kyocera_wc3) или локально (драйвер kyocera_wc3_usb) подключенным устройством.
Не забываем добавить пользователя в группы lpadmin и scanner.
ВАЖНЫЙ МОМЕНТ:
Ситуация когда мфу виден в системе но сканирование и печать не работает то один из вариантов это когда USB-контроллер переходит в режим энергосбережения.
Временно отключить режим энергосбережения и проверить корректность работы МФУ:
echo "-1" | sudo tee -a /sys/module/usbcore/parameters/autosuspend
Данный параметр примет стандартное значение после перезагрузки компьютера.
Чтобы usb-контроллеры не уходили в режим энергосбережения необходимо:
Добавить в файле /etc/default/grub в строку GRUB_CMDLINE_LINUX_DEFAULT опцию usbcore.autosuspend=-1.
Обновить настройки загрузчика GRUB:
sudo update-grub
Перезагрузить компьютер.
Выполнить команду:
cat /sys/module/usbcore/parameters/autosuspend
Значение -1 — режим энергосбережения для USB-портов отключен.
Переподключить USB-устройства повторно и проверить корректность работы устройства.
Возможны случаи когда принтер виден в системе по команде lsusb, scanimage -L, дает возможность выбрать себя в списке устройств, но выдает ошибку, что "Принтер выключен" либо "Ожидание подключения к принтеру". В таком случае помогает еще переподключение usb провода. Возможно также перезагрузить систему. Либо попробовать использовать usbreset — это утилита для сброса настроек USB-устройств. Она заставляет систему инициализировать устройство, как если бы его отключали и подключали заново, но без физического действия. Это может помочь решить такие проблемы, как устройство не распознаётся, ошибки при передаче файлов или проблемы с управлением питанием.
Синтаксис команды:
usbreset (option)
Option:
PPPP:VVVV - указываем ProductID и VendorID.
BBB/DDD - Указываем bus и номер устройства.
"Product" - Указываем имя продукта.
Для перезагрузки USB устройства первым шагом узнаем ProductID и VendorID нашего устройства, в данном случае USB модема. Для этого в терминале наберем следующую команду:
lsusb
Вот такой ответ вывела у меня данная команда:
Bus 001 Device 003: ID 12d1:14db Huawei Technologies Co., Ltd. E353/E3131
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 0482:0610 Kyocera ECOSYS M3040dn multi-functional device
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 0627:0001 Adomax Technology Co., Ltd QEMU USB Tablet
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
- 0482:0610 — ProductID и VendorID нашего устройства.
- Bus 001 Device 003 — bus и номер устройства.
- Введём по ID продукту.
usbreset 0482:0610
Resetting Kyocera ECOSYS M3040dn multi-functional device ... can't open [No such device]
2. Введём по номеру устройства:
usbreset 004/001
Resetting Kyocera ECOSYS M3040dn multi-functional device ... ok
3. Введём по названию:
usbreset "Kyocera ECOSYS M3040dn multi-functional device"
Resetting Kyocera ECOSYS M3040dn multi-functional device ... ok