Debian Squeeze/Wheezy (6.0/7.0) and Xerox Unified Driver v. 7-15

Xerox Unified Driver works very well and you can install it without any problem from console or by the X (gui) wizard. At the moment it doesn’t support officialy Debian >=6.0 (it supports old Debian 3.1, 4.0, 5.0 32/64bit) so this isn’t a real bug in fact but it can be a problem if you use squeeze/wheezy.

insserv: warning: script 'K07smfpd' missing LSB tags and overrides
insserv: warning: script 'smfpd' missing LSB tags and overrides
insserv: There is a loop at service rmnologin if started
insserv: There is a loop between service rmnologin and mountnfs if started
insserv:  loop involving service mountnfs at depth 6
insserv:  loop involving service nfs-common at depth 5
insserv: There is a loop between service rmnologin and checkroot if started
insserv:  loop involving service checkroot at depth 3
insserv:  loop involving service mountdevsubfs at depth 2
insserv: Starting smfpd depends on rmnologin and therefore on system facility `$all' which can not be true!
(...)
insserv: Starting smfpd depends on rmnologin and therefore on system facility `$all' which can not be true!
insserv: Max recursions depth 99 reached
insserv:  loop involving service portmap at depth 4
insserv: There is a loop between service rmnologin and pcmcia if started
insserv:  loop involving service pcmcia at depth 2
insserv:  loop involving service udev at depth 1
insserv:  loop involving service module-init-tools at depth 4
insserv:  loop involving service mountnfs-bootclean at depth 8
insserv:  loop involving service exim4 at depth 8
insserv: There is a loop between service rmnologin and mountoverflowtmp if started
insserv:  loop involving service mountoverflowtmp at depth 3
insserv:  loop involving service mountall-bootclean at depth 2
insserv:  loop involving service avahi at depth 8
insserv: There is a loop between service rmnologin and ifupdown if started
insserv:  loop involving service ifupdown at depth 5
insserv:  loop involving service ifupdown-clean at depth 4
insserv:  loop involving service fuse at depth 11
insserv:  loop involving service networking at depth 7
insserv:  loop involving service mountall at depth 5
insserv:  loop involving service checkfs at depth 4
insserv: There is a loop between service rmnologin and ifupdown-clean if started
insserv: There is a loop at service smfpd if started
insserv:  loop involving service smfpd at depth 1
insserv:  loop involving service hwclockfirst at depth 4
insserv:  loop involving service hostname at depth 5
insserv: There is a loop between service rmnologin and mountall if started
insserv:  loop involving service mtab at depth 7
insserv: exiting now without changing boot order!
update-rc.d: error: insserv rejected the script header

To solve this problem you can:

  1. uninstall Xerox Unified Driver, update your system or install your software and then reinstall the Xerox driver
  2. “If your MFP device is not connected to LPT port, you can safely disable execution of this script” so remove /etc/init.d/smfpd (and its symlinks) from your init.d and rc.X folders
  3. Recommended: “LSBize” the init script to fix the problem (http://wiki.debian.org/LSBInitScripts). Add these lines to your /etc/init.d/smfpd (at EOF is ok because position is not important, so you can also use a combo of cat /patch >> /etc/init.d/smfpd if you want to fix it automatically) create a new file named smfpd in /usr/share/insserv/overrides/ with the following content:
    ### BEGIN INIT INFO
    # Provides:          smfpd
    # Required-Start:    $syslog
    # Required-Stop:     $syslog
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: Xerox Unified Linux Driver LPT Support daemon
    # Description:       Enable support for LPT port service provided by Xerox Unified Linux Driver package.
    ### END INIT INFO

And just request support for Debian -6.0- 7.0 😉

update 2011-08-12: there is another minor bug in install.sh at line 1187 because –reload_rules is wrong, change it to –reload-rules
update 2013-06-14: mmmm, Xerox didn’t fix, so I’ve updated my post for Debian Wheezy 7.0
update 2013-07-02: thanks to darac’s comment I’ve learned a better way to do the work: put an override file in /usr/share/insserv/overrides/ as indicated by insserv man page

Tags: , , , , , , ,

About Giulio Turetta

Sviluppo e curo siti web dal 1998, amo internet e le opportunità che ci offre. Grazie anche a te, che fai parte di questo mondo fantastico.

8 responses to “Debian Squeeze/Wheezy (6.0/7.0) and Xerox Unified Driver v. 7-15”

  1. Vinicius Massuchetto says :

    Thanks! That solved my problem.

  2. Stef says :

    Thanks!! Fixed my problem as well.

  3. francesco says :

    Grazie mille, mi hai salvato! Non riuscivo più a fare gli aggiornamenti…

  4. Alessandro says :

    Ottimo aiuto, grazie, mi hai risparmiato almeno un’ora di sclero! 🙂

  5. Adriano says :

    Muito bom

  6. darac says :

    Rather than modifying the init script (which may cause problems later when you try to upgrade the driver), try writing the headers to “/etc/insserv/overrides/smfpd”.

    • Giulio Turetta says :

      Thank you darac! You’re welcome! Right as reports the insserv manual “for third party boot scripts without LSB header it is possible to add a file with the same name in the directory /usr/share/insserv/overrides/ to make them completely LSB compliant”. I’ll update the post.

Trackbacks / Pingbacks

  1. Reparando problema con apt-get « La Pertenencia - October 9, 2011

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: