/etc/init.d/udev-finish does not get cleaned up on upgrade

Bug #1498310 reported by glitsj16 on 2015-09-22
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
systemd (Ubuntu)
Undecided
Unassigned

Bug Description

$ lsb_release -rd
Description: Ubuntu Wily Werewolf (development branch)
Release: 15.10

$ apt-cache policy udev
udev:
  Installed: 225-1ubuntu4
  Candidate: 225-1ubuntu4
  Version table:
 *** 225-1ubuntu4 0
        500 http://archive.ubuntu.com/ubuntu/ wily/main amd64 Packages
        100 /var/lib/dpkg/status

The udev package in wily is missing /lib/udev/udev-finish, hence systemd reports the udev-finish.service as failed.
Placing this script , which is in udev package 219-7ubuntu6 (vivid-updates), into the correct location rectifies this.

Martin Pitt (pitti) wrote :

udev-finish.service is gone, together with /lib/udev/udev-finish. That's quite deliberate, we don't need it any more.

Please give me the output of "sudo systemctl status -l udev-finish.service". Thanks!

affects: udev (Ubuntu) → systemd (Ubuntu)
Changed in systemd (Ubuntu):
status: New → Incomplete
summary: - udev is missing /lib/udev/udev-finish in wily
+ udev-finish.service still present in wily

$ sudo systemctl status -l udev-finish.service
● udev-finish.service - LSB: Copy rules generated while the root was ro
   Loaded: loaded (/etc/init.d/udev-finish)
   Active: failed (Result: exit-code) since Tue 2015-09-22 08:42:49 CEST; 2min 43s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 544 ExecStart=/etc/init.d/udev-finish start (code=exited, status=127)

Sep 22 08:42:49 lab16 systemd[1]: Starting LSB: Copy rules generated while the root was ro...
Sep 22 08:42:49 lab16 udev-finish[544]: /etc/init.d/udev-finish: 21: exec: /lib/udev/udev-finish: not found
Sep 22 08:42:49 lab16 systemd[1]: udev-finish.service: Control process exited, code=exited status=127
Sep 22 08:42:49 lab16 systemd[1]: Failed to start LSB: Copy rules generated while the root was ro.
Sep 22 08:42:49 lab16 systemd[1]: udev-finish.service: Unit entered failed state.
Sep 22 08:42:49 lab16 systemd[1]: udev-finish.service: Failed with result 'exit-code'.

Confirming that udev-finish.service is gone in udev 225-1ubuntu4 as compared to 219-7ubuntu6 (vivid-updates). Yet several files that should be removed (if I understand the udev package preinst/postinst/prerm/postrm scripts) aren't.. The output below is obtained after manually reinstalling the udev 225-7ubuntu6 deb via sudo dpkg -i

$ ls -l /etc/init | grep udev
-rw-r--r-- 1 root root 337 Jun 17 23:24 udev.conf
-rw-r--r-- 1 root root 645 Jun 17 23:24 udev-fallback-graphics.conf
-rw-r--r-- 1 root root 651 Jun 17 23:24 udev-finish.conf
-rw-r--r-- 1 root root 360 Jun 17 23:24 udevmonitor.conf
-rw-r--r-- 1 root root 352 Jun 17 23:24 udevtrigger.conf
-rw-r--r-- 1 root root 553 May 18 12:20 upstart-udev-bridge.conf

$ ls -l /etc/init.d | grep udev
-rwxr-xr-x 1 root root 6084 Jun 17 23:24 udev
-rwxr-xr-x 1 root root 461 Jun 17 23:24 udev-finish

Hope this helps ..

Martin Pitt (pitti) wrote :

Can you please attach /etc/init.d/udev-finish? Did you perhaps modify this? This file is usually cleaned up on upgrade from versions earlier than 225-2.

Martin Pitt (pitti) wrote :

Ah well, it seems you downgraded to 219-7ubuntu6 again? If you upgrade to wily again with

  sudo apt-get install udev

can you please copy&paste the entire output?

summary: - udev-finish.service still present in wily
+ /etc/init.d/udev-finish does not get cleaned up on upgrade
glitsj16 (glitsj16) wrote :

$ cat /etc/init.d/udev-finish
#!/bin/sh -e
### BEGIN INIT INFO
# Provides: udev-finish
# Required-Start: udev $local_fs
# Required-Stop:
# Default-Start: S
# Default-Stop:
# Short-Description: Copy rules generated while the root was ro
### END INIT INFO

PATH="/sbin:/bin"

. /lib/lsb/init-functions

case "$1" in
  start) ;;
  stop|restart|force-reload) exit 0 ;;
  *) echo "Usage: $0 {start|stop|restart|force-reload}" >&2; exit 1 ;;
esac

exec /lib/udev/udev-finish

$ sudo apt-get install udev
Reading package lists... Done
Building dependency tree
Reading state information... Done
udev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

No, I did not downgrade to 219-7ubuntu6. I manually downloaded that .deb file to compare it with 225-1ubuntu4. That was when I noticed that 219-7ubuntu6 had the /lib/udev/udev-finish script, which I copied over. I did restore a recent wily backup though, so these now obsolete udev files in /etc/init & /etc/init.d files might stem from that. I can confirm that these did not get removed when manually installing udev 225-1ubuntu4 though.

After manually removing /etc/init/udev-fallback-graphics.conf, /etc/init/udev-finish.conf & /etc/init.d/udev-finish and reinstalling udev 225-1ubuntu4 everything seems to be in perfect order again.

Might be one of those glitches, I can't be sure, but systemd no longer reports anything as failed and the system looks a ok :)

My apologies for the mixup, and many thanks for your kind and speedy replies!

Martin Pitt (pitti) wrote :

> did restore a recent wily backup though, so these now obsolete udev files in /etc/init & /etc/init.d files might stem from that

Ah, this would explain it then.

I just did a dist-upgrade from vivid to current wily, and it works as intended:

Setting up udev (225-1ubuntu4) ...
Installing new version of config file /etc/init.d/udev ...
Installing new version of config file /etc/init/udevmonitor.conf ...
addgroup: The group `input' already exists as a system group. Exiting.
A chroot environment has been detected, udev not started.
update-initramfs: deferring update (trigger activated)
Removing obsolete conffile /etc/init.d/udev-finish ...
Removing obsolete conffile /etc/init/udev-finish.conf ...
Removing obsolete conffile /etc/init/udev-fallback-graphics.conf ...

And /etc/init.d/udev-finish is gone. So let's chalk this up as "your backup restored the file". (It's by far *not* a good idea to backup /etc/ in its entirety and restore it! Please just backup files that you actually changed).

Changed in systemd (Ubuntu):
status: Incomplete → Invalid
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers