Bug#785484: systemd: on Raspberry pi B+, several essential services fail, including systemd-logind

Bernhard Übelacker bernhardu at vr-web.de
Mon May 18 18:04:37 BST 2015


Hello,
as I got the same problem on my raspberry, probably I can give
some details.

This is the situation I started:
- put 2015-05-05-raspbian-wheezy.img on SD-card and booted
- changed sources.list and did the upgrade
- appended "systemd.debug-shell" to /boot/cmdline.txt
- reboot

For some reason it looks like /etc/init.d/cgroup-bin is still
installed even cgroup-bin is a transitional package.

This script tries to mount /sys/fs/cgroup/memory but seems to fail
and it then unmounts /sys/fs/cgroup.
Therefore systemd cannot create new cgroups or spawning
processes cannot attach to them.

By purging just cgroup-bin I got expected booting again.

cgroup-bin[455]: Kernel lacks cgroups or memory controller not available, not starting cgroups. ... (warning).
systemd[1]: Failed to create cgroup /system.slice/ntp.service: No such file or directory
systemd[481]: Failed at step CGROUP spawning /etc/init.d/ntp: No such file or directory


Kind regards,
Bernhard



root at raspberrypi:/# dpkg -l cgroup-bin
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                       Version            Architecture       Description
+++-==========================-==================-==================-=========================================================
ii  cgroup-bin                 0.41-6             all                control and monitor control groups (transitional package)



root at raspberrypi:/# dpkg -L cgroup-bin
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/cgroup-bin
/usr/share/doc/cgroup-bin/changelog.Debian.gz
/usr/share/doc/cgroup-bin/copyright
/etc/init.d/cgroup-bin



root at raspberrypi:/# ls -lisah /etc/init.d/cgroup-bin
36115 4.0K -rwxr-xr-x 1 root root 950 Dec 18  2013 /etc/init.d/cgroup-bin



root at raspberrypi:/# cat /etc/init.d/cgroup-bin
#! /bin/sh                                                                                                                                                                                                                                   
### BEGIN INIT INFO                                                                                                                                                                                                                          
# Provides:          init-cgroups                                                                                                                                                                                                            
# Required-Start:    mountkernfs                                                                                                                                                                                                             
# Required-Stop:                                                                                                                                                                                                                             
# Default-Start:     2 3 4 5                                                                                                                                                                                                                 
# Default-Stop:      0 1 6                                                                                                                                                                                                                   
# Short-Description: Mounts cgroup filesystems                                                                                                                                                                                               
### END INIT INFO                                                                                                                                                                                                                            
                                                                                                                                                                                                                                             
PATH=/sbin:/bin

. /lib/lsb/init-functions

do_start () {
        log_action_msg "Initializing cgroups"
        mount -t tmpfs none /sys/fs/cgroup
        mkdir /sys/fs/cgroup/memory
        if ! mount -t cgroup none /sys/fs/cgroup/memory -o memory 2> /dev/null; then
                umount /sys/fs/cgroup
                log_warning_msg "Kernel lacks cgroups or memory controller not available, not starting cgroups."
                exit 0
        fi
        chmod a+r /sys/fs/cgroup/memory/memory.pressure_level
}

case "$1" in
  start)
        do_start
        ;;
  restart|reload|force-reload)
        echo "Error: argument '$1' not supported" >&2
        exit 3
        ;;
  stop)
        # No-op
        ;;
  *)
        echo "Usage: $0 start|stop" >&2
        exit 3
        ;;
esac



root at raspberrypi:/root# dpkg --purge cgroup-bin
(Reading database ... 100744 files and directories currently installed.)
Removing cgroup-bin (0.41-6) ...
Purging configuration files for cgroup-bin (0.41-6) ...



root at raspberrypi:/root# reboot -f
  # as regular reboot did not work at this point anymore




More information about the Pkg-systemd-maintainers mailing list