Привет, ЛОР!
Centos 7 amd64, локально подключенный SCX-3200
Я уже голову сломал, как мне запустить SANE чтобы оно сканер отдавало в локалку. После некоторых манипуляций добился, чтобы виделся сканер.
scanimage -L
device `xerox_mfp:libusb:001:002' is a Samsung Samsung SCX-3200 Series multi-function peripheral
И тут начинается самое интересное. как я понял из некоторых форумов, толкового юнита sane в centos 7 нынче нет.
Есть ман, в котором сказано так.
SYSTEMD CONFIGURATION
for systemd we need to add 2 configuation files in /etc/systemd/system.
The first file we need to add here is called saned.socket. It shall have the following contents:
[Unit]
Description=saned incoming socket
[Socket]
ListenStream=6566
Accept=yes
MaxConnections=1
[Install]
WantedBy=sockets.target
The second file to be added is saned@.service with the following contents:
[Unit]
Description=Scanner Service
Requires=saned.socket
[Service]
ExecStart=/usr/sbin/saned
User=saned
Group=saned
StandardInput=null
StandardOutput=syslog
StandardError=syslog
# Environment=SANE_CONFIG_DIR=/etc/sane.d SANE_DEBUG_DLL=255
Есть баг в багзилле red hat, в котором помимо всего прочего есть указания для корректировки юнита (коммент 8).
В конечном итоге методом многочисленных экспериментов я собрал из двух примеров себе такой юнит
cat /etc/systemd/system/saned.socket
[Unit]
Description=saned incoming socket
[Socket]
ListenStream=6566
Accept=yes
MaxConnections=3
[Install]
WantedBy=sockets.target
cat /etc/systemd/system/saned.service
[Unit]
Description=Scanner Service
Requires=saned.socket
[Service]
ExecStart=/usr/sbin/saned
User=saned
Group=saned
StandardInput=null
StandardOutput=syslog
StandardError=syslog
Environment=SANE_CONFIG_DIR=/etc/sane.d
# Environment=SANE_DEBUG_DLL=128 SANE_DEBUG_NET=128
Запускаю я # service saned start
и потом вижу в # service saned status
вот такое
Redirecting to /bin/systemctl status saned.service
saned.service - Scanner Service
Loaded: loaded (/etc/systemd/system/saned.service; static)
Active: inactive (dead)
дек 05 21:51:37 maxim-server systemd[1]: Started Scanner Service.
дек 05 21:51:37 maxim-server saned[5814]: saned (AF-indep+IPv6) from sane-backends 1.0.24 starting up
дек 05 21:51:37 maxim-server saned[5814]: check_host: access by remote host: localhost
дек 05 21:51:57 maxim-server saned[5814]: init: bad status=22 or procnum=-1402437236
дек 05 21:55:00 maxim-server systemd[1]: Stopped Scanner Service.
дек 05 21:55:02 maxim-server systemd[1]: Starting Scanner Service...
дек 05 21:55:02 maxim-server systemd[1]: Started Scanner Service.
дек 05 21:55:02 maxim-server saned[5882]: saned (AF-indep+IPv6) from sane-backends 1.0.24 starting up
дек 05 21:55:02 maxim-server saned[5882]: check_host: access by remote host: localhost
дек 05 21:55:22 maxim-server saned[5882]: init: bad status=22 or procnum=1117462924
cat /etc/passwd | grep saned
saned:x:1001:1001::/dev/null:/bin/false
И нихрена не видит клиент расшареного сканера. Порты в файерволе на сервере открыл, в клиенте заполнил и /etc/sane.d/net.conf
и /etc/sane.d/dll.conf
и всё равно клиент сканера не видит.
Да и вообще центось странный предмет. вроде корпоративный стандарт де-факто, а документации толком нет, баг висит кучу времени.
в том же дебиане это всё делалось проще (правда без systemd) и хотя бы в блогах, но мануалы на каждый чих есть.