2013/8/21 Wilhelm <wilhelm.meier at fh-kl.de> > Hi Sander, > > Am 21.08.2013 00:40, schrieb Sander Devrieze: > > Hello, >> >> I am trying to convert a WD MyBook into a scanner server. Sane detects >> the scanner and I was able to scan, but I cannot get scanbd to work. >> > > Which options did you use for configure?
None, I just did a plain "./configure". > > >> May this be related to the fact that I am using a *very* old udev >> version (0.125-7+lenny3) which cannot be upgraded? >> > > On Lenny you should try usind hal instead of udev. But this is only > resonsible for detecting removable devices. As a fallback scanbd can be > signaled (using some udev-rule, e.g.), please check the docu. > I am running Debian Squeeze. Only the udev package is from Lenny. This is needed because otherwise the special "MyBook Linux kernel" will not boot. > > Check the debug >> output below. How can I get scanbd running on my system? >> > > First of all scanbd doesn't detect any scanner. There may be various > reasons. But most likely scanbd uses a wrong dll.conf. > > Did you > export SANE_CONFIG_DIR=/usr/local/etc/scanbd ? > Yes, and I also run scanbd like this to be sure: /usr/local/sbin/scanbd -d7 -f -c /usr/local/etc/scanbd/scanbd.conf When running scanbm, one of the lines reads like this: scanbm: Setting environment: SANE_CONFIG_DIR=/usr/local/etc/scanbd/sane.d please show your configs: > > /etc/sane/dll.conf > # /etc/sane.d/dll.conf - Configuration file for the SANE dynamic backend loader # # Backends can also be enabled by configuration snippets under # /etc/sane.d/dll.d directory -- packages providing backends should drop # a config file similar to dll.conf in this directory, named after the package. # # The next line enables the network backend; comment it out if you don't need # to use a remote SANE scanner over the network - see sane-net(5) and saned(8) net #abaton #agfafocus #apple <snip all lines commented out below this> > /usr/local/sbin/scanbd/dll.**conf > Ok, that seems to help. Maybe the readme file should be more clear that you need to copy the config files and not the directory "sane.d" in here. scanbd seems to work. However, sane does not recognize the scanner: scanimage: no SANE devices found Any idea what can be wrong? > /usr/local/etc/scanbd/scanbd.**conf > > # global settings global { # turn on debugging # log to console debug = true # debug logging # 1=error, 2=warn, 3=info, 4-7=debug debug-level = 7 # drop priviliges to this user #============================= # Linux: # user = saned # root # *BSD # user = root user = saned # Group to be used #================= # Linux (most distributions use the lp group to access scanners) # group = lp # ArchLinux (ArchLinux uses the scanner group) # group = scanner # # *BSD (no group lp here, use daemon instead) # group = daemon # root # group = saned # the saned executable for manager-mode saned = "/usr/sbin/saned" saned_opt = {} # string-list saned_env = { "SANE_CONFIG_DIR=/usr/local/etc/scanbd" } # list of environment vars for saned # Scriptdir specifies where scanbs normally looks for scripts. # The scriptdir option can be defined as: # - a path relative to the configuations (<path>/etc/scanbd) directory # - an abosolute path # Examples: # scriptdir = scripts # sets scriptdir to <path>/etc/scripts. # scriptdir = /some/path # sets scriptdir to the specified absolute path # Default scriptdir is <path>/etc/scanbd, this is normally appropriate # scriptdir = # scanbuttond_backends_dir sets the path where scanbd looks for the scanbuttond backends # It can be defined as relative path, starting from the scanbd config directory or # as an absolute path # Default is <libdir>/scanbd/scanbutond/backends # Example # scanbuttond_backends_dir = "/usr/local/lib/scanbd/scanbuttond/backends" # poll timeout in [ms] # (for polling the devices) timeout = 500 pidfile = "/var/run/scanbd.pid" # env-vars for the scripts environment { # pass the device label as below in this env-var device = "SCANBD_DEVICE" # pass the action label as below in this env-var action = "SCANBD_ACTION" } # function definitions # values of the options are simply passed via env-vars function function_knob { filter = "^message.*" desc = "The value of the function knob / wheel / selector" env = "SCANBD_FUNCTION" } function function_mode { filter = "^mode.*" desc = "Color mode" env = "SCANBD_FUNCTION_MODE" } multiple_actions = true # allow multiple actions per option (up to the total amount of options) # action definitions # if the filter matches and the value changes # from from-value to to-value, # <script> is executed # <script> is the full pathname (do not include any parameters) # if parameters are needed, write a script # since we can have only a most one action for each option, the action-script # can use the function definition (see above) to distinguish different tasks # (e.g. use the env-var SCANBD_FUNCTION defined above) action scan { filter = "^scan.*" numerical-trigger { from-value = 1 to-value = 0 } desc = "Scan to file" # script must be an relative path starting from scriptdir (see above), # or an absolute pathname. # It must contain the path to the action script without arguments # Absolute path example: script = "/some/path/foo.script script = "test.script" } action email { filter = "^email$" string-trigger { from-value = "" to-value = "^email.*" } desc = "Scan to email" # script must be an relative path starting from scriptdir (see above), # or an absolute pathname. # It must contain the path to the action script without arguments # Absolute path example: script = "/some/path/foo.script script = "test.script" } action copy { filter = "^copy$" string-trigger { from-value = "" to-value = "^copy.*" } desc = "Copy to printer" # script must be an relative path starting from scriptdir (see above), # or an absolute pathname. # It must contain the path to the action script without arguments # Absolute path example: script = "/some/path/foo.script script = "test.script" } action preview { filter = "^preview$" numerical-trigger { from-value = 1 to-value = 0 } desc = "Preview" # script must be an relative path starting from scriptdir (see above), # or an absolute pathname. # It must contain the path to the action script without arguments # Absolute path example: script = "/some/path/foo.script script = "test.script" } action globaltest { filter = "^message.*" desc = "Test (print all env vars)" # script must be an relative path starting from scriptdir (see above), # or an absolute pathname. # It must contain the path to the action script without arguments # Absolute path example: script = "/some/path/foo.script script = "test.script" } } # include # include another file at this point. This may only occur outside general and devices blocks # an include statement may be relative (to the direcory where scanbd.conf is located or aboslute # include("scanner.d/myscanner.conf") # include("/my/long/path/myscanner.conf") # devices # each device can have actions and functions, you can disable not relevant devices include(scanner.d/avision.conf) include(scanner.d/fujitsu.conf) include(scanner.d/hp.conf) include(scanner.d/pixma.conf) include(scanner.d/snapscan.conf) include(scanner.d/canon.conf) > and show the env-vars for the user starting the scanbd (root). > > TERM=xterm SHELL=/bin/bash OLDPWD=/root SSH_TTY=/dev/pts/0 USER=root MAIL=/var/mail/root PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin PWD=/usr/local/etc/scanbd LANG=en_US.UTF-8 SHLVL=1 HOME=/root LOGNAME=root SANE_CONFIG_DIR=/usr/local/etc/scanbd _=/usr/bin/env > > > >> Thanks for helping me out! >> >> /usr/local/sbin/scanbd: foreground >> /usr/local/sbin/scanbd: config-file: /usr/local/etc/scanbd/scanbd.**conf >> /usr/local/sbin/scanbd: reading config file >> /usr/local/etc/scanbd/scanbd.**conf >> /usr/local/sbin/scanbd: debug on: level: 7 >> /usr/local/sbin/scanbd: dropping privs to uid saned >> /usr/local/sbin/scanbd: dropping privs to gid saned >> /usr/local/sbin/scanbd: drop privileges to gid: 109 >> /usr/local/sbin/scanbd: Running as effective gid 109 >> /usr/local/sbin/scanbd: drop privileges to uid: 104 >> /usr/local/sbin/scanbd: Running as effective uid 104 >> /usr/local/sbin/scanbd: dbus_init >> /usr/local/sbin/scanbd: dbus match >> type='signal',interface='org.**freedesktop.Hal.Manager' >> /usr/local/sbin/scanbd: sane version 1.0 >> /usr/local/sbin/scanbd: Scanning for local-only devices >> /usr/local/sbin/scanbd: start_sane_threads >> /usr/local/sbin/scanbd: start dbus thread >> /usr/local/sbin/scanbd: timeout: 500 ms >> /usr/local/sbin/scanbd: Iteration on dbus call >> /usr/local/sbin/scanbd: udev init >> /usr/local/sbin/scanbd: get udev monitor >> libudev: udev_monitor_enable_receiving: bind failed: Operation not >> permitted >> /usr/local/sbin/scanbd: Can't enable udev receiving >> /usr/local/sbin/scanbd: Can't init udev >> /usr/local/sbin/scanbd: Iteration on dbus call >> /usr/local/sbin/scanbd: Iteration on dbus call >> /usr/local/sbin/scanbd: Iteration on dbus call >> >> -- >> Kind Regards, >> Sander Devrieze >> >> >> > > -- > Wilhelm > w.meier at unix.net > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.alioth.debian.org/pipermail/sane-devel/attachments/20130821/a47ecd4d/attachment-0001.html>