Bug#915095: udev: Please improve container check in initscript

Pierre Ynard linkfanel at yahoo.fr
Fri Nov 30 12:40:04 GMT 2018


Package: udev
Version: 239-13
Severity: wishlist

Dear Maintainer,

I looked for old bug reports about this and was surprised not to
find anything filed against udev. My issue is with this snippet in
/etc/init.d/udev:

if ! ps --no-headers --format args ax | egrep -q '^\['; then
  log_warning_msg "udev does not support containers, not started"
  exit 0
fi

I use a separate /usr without an initramfs, so since /bin/ps depends
through libsystemd on liblz4 residing in /usr, udev start wrongly aborts
and the system fails to boot.

I've taken note, for example in #848204 and #830829, that Debian
maintainers have decided not to take action to support this use case
anymore.

However, I was rather surprised to find `ps` used there in udev's
initscript, and the check looks rather awkward to me. I don't work with
containers so I wouldn't know, but is this really the best way to check
for being in a container?... Also, #691847 enigmatically states:

> /etc/rcS.d/S02udev uses ps (incorrectly but that's not relevant here)

All the other pre-start checks in that series merely look at filesystem
entries. Also, how do systemd services handle this? I can't see
equivalents to those checks in .service files, are they even still
really needed?

So I thought that maybe the check could be looked at again. If that does
away with `ps` or make it failsafe, good for me. Or maybe maintainers
will see other reasons than just the /usr thing to strive for robustness
in one of the most critical bootstrap elements - as seen above, bugs
happen.

Best regards,

-- Package-specific info:

-- System Information:
Debian Release: buster/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)

Versions of packages udev depends on:
ii  adduser      3.118
ii  libacl1      2.2.52-3+b1
ii  libblkid1    2.32-0.1
ii  libc6        2.27-8
ii  libkmod2     25-1
ii  libselinux1  2.8-1+b1
ii  libudev1     239-13
ii  lsb-base     10.2018112800
ii  procps       2:3.3.12-3
ii  util-linux   2.32-0.1

udev recommends no packages.

udev suggests no packages.

Versions of packages udev is related to:
pn  systemd  <none>

-- Configuration Files:
/etc/init.d/udev changed [not included]

-- debconf information excluded



More information about the Pkg-systemd-maintainers mailing list