1.9 KiB
Configuring saned
as a service
To launch saned
automatically in response to an incoming connection,
configure it as a service managed by inetd
, xinetd
, or systemd
.
First verify that /etc/services contains a line of the following form:
sane-port 6566/tcp # SANE network scanner daemon
If not, then add it. (The name "sane-port" has been assigned by IANA.)
The examples below assume there is a "saned" group and a "saned" user.
Make sure that the ACLs on the scanner device files are set such that
saned
can access them for reading and writing.
inetd
Configuration
Configure inetd
if your platform does not use systemd
or xinetd
.
Not all inetd
implementations support IPv6; check its documentation.
Add a line in /etc/inetd.conf like the following:
sane-port stream tcp nowait saned.saned /usr/local/sbin/saned saned
xinetd
Configuration
Copy frontend/saned.xinetd.conf into the xinetd
configuration files
directory (as /etc/xinetd.d/saned.conf).
systemd
Configuration
Copy frontend/saned.socket and frontend/saned@.service into one of the system-wide directories for unit files (/etc/systemd/system/).
The recommended way to adjust the service settings is with the command
systemctl edit saned@
. This opens a file inside a text editor where
overrides may be entered. As an example, environment variables can be
set which are used to control debug logging in individual backends:
[Service]
Environment=SANE_DEBUG_DLL=255
Environment=SANE_DEBUG_BJNP=5
(Refer to the man pages of the appropriate backends for more details.)
It is recommended to build SANE with explicit systemd
support, which
allows log messages from saned
to be written to the journal. If SANE
is built without this support, the following override must be used:
[Service]
StandardInput=socket