UnixNoob писал: ↑07.12.2020 01:31
Нашел я вот такое руководство
Вы его выполнили полностью по шагам или частично? Или не выполняли вообще, а только просмотрели?
Здесь нужно понимать, что несколько драйверов на одно устройство будут конфликтовать.
Поэтому перед выполнением инструкции нужно удалить Ваш пакет.
UnixNoob писал: ↑07.12.2020 01:31
В файле /etc/sane.d/xerox_mfp.conf есть мой сканер:
UnixNoob писал: ↑07.12.2020 01:31
Еще он есть в файле sudo gedit /lib/udev/rules.d/80-libsane.rules
А вот это уже интересно.
Вы пробовали выполнять sane-find-scanner ДО ТОГО, как начали ставить фирменный драйвер?
Интересно, находил ли он что-нибудь и в каком виде.
Может статься, что это xerox находит Ваше устройство, а не smfp.
Находит, пытается с ним работать, не получается, тогда пробуется smfp.
Конфликтуют, одним словом.
Здесь вопрос в том, чей вот это результат:
device `smfp:usb;04e8;3409;6758-04020434815' is a Samsung SCX-4x16 Series on USB Scanner
Какой из двух драйверов это выдал?
UnixNoob писал: ↑07.12.2020 01:31
Почему он тогда не работает без драйвера вообще?
Потому что драйвер - это не файл конфигурации и не правило udev,
а это в первую очередь бинарный файл - этот вот самый libsane-smfp.so,
который содержит специфический для аппарата код.
UnixNoob писал: ↑07.12.2020 01:31
Зачем его добавлять, при этом указывать что он не поддерживается.
Наоборот. Сначала указали, что не поддерживается, а потом попытались добавить. Чтобы поддерживался.
Если бы удалось, запись в таблице была бы другой.
UnixNoob писал: ↑07.12.2020 01:31
Во вложении то что он написал.
Там всё хорошо, за исключением одного:
sane пытается для Вашего устройства задействовать два драйвера - xerox и smfp.
Причем, xerox по списку идет раньше.
Как я уже сказал, высока вероятность того, что они конфликтуют.
Нужно пробовать "отключать" xerox. Или smfp.
И не плохо бы, конечно, задействовать для smfp нужную переменную окружения.
Но тут надо выяснить, какую именно.
SANE_DEBUG_XEROX_MFP - это всё-таки от другого драйвера.
UnixNoob писал: ↑07.12.2020 01:31
Этого никогда не делал, надо разбираться.
Здесь всё довольно просто:
ldd полный_путь_к_файлу
в Вашем случае как-то так:
ldd /opt/smfp-common/scanner/lib/libsane-smfp.so.1.0.1
путь к файлу уточните.
В выводе будет список вызываемых данной библиотекой модулей (других библиотек).
Если какая-то из них отсутствует, будет написано 'not found',
поэтому в принципе можно сразу так:
ldd /opt/smfp-common/scanner/lib/libsane-smfp.so.1.0.1 |grep 'not found'.
То же самое нужно проделать для других бинарных файлов, входящих в пакет.
Впрочем, данный файл без отладочной информации, и вообще ldd его не переваривает, но попробуйте.
UnixNoob писал: ↑07.12.2020 01:31
Если устали - давайте заканчивать.
Да я не устал. С чего мне уставать-то?
Просто на расстоянии сложно понимать, что у Вас там происходит.
Идеи, в принципе, кончились.
С учетом сказанного выше, остается проработать вариант с конфликтом драйверов.
Вообще, обсуждения в Сети данного драйвера сводятся к тому, что драйвер кривой.
Правда, там обсуждались другие версии (более старые). И для других устройств (в том числе снятых с производства и потому не поддерживаемых). И вроде как предполагается более старое ядро.
У Вас версия драйвера чуть новее, хотя аппарат старый. Но вообще, да - неплохо бы разобраться с версиями.
Обидно. Фирменный драйвер - и не работает. Казалось бы, кому, как не производителю знать все нюансы своего аппарата?
Но увы.