[Pkg-sysvinit-devel] Bug#142424: Bug#142424: Please implement a kindler gentler single-user runlevel
Henrique de Moraes Holschuh
hmh at debian.org
Mon Jul 27 23:06:19 UTC 2009
On Sun, 26 Jul 2009, Petter Reinholdtsen wrote:
> An idea occured to me the other day, to make sure single user boots
> actually execute the rc1.d/ scripts. We could add code like this in a
> script at the end of rcS.d/:
> for word in $(cat /proc/cmdline); do
> case "$word" in
> telinit 1
> This way a single user boot would first stop scripts according to
> rc1.d/, and next start sulogin. This way the last runlevel was 1, and
> exiting single user would send people to runlevel 2 which would start
> everything that was stopped in runlevel 1.
> This again would allow us to get a system that recover properly after
> single user, restarting services that was stopped. We would need to
> add/move some start scripts from rcS.d/ to rc#.d/, but that make sense
Well, our rc.S does way too much.
I have found myself in need to use the "emergency" mode quite often because
rcS would do *extremey* annoying things such as bringing up the quota
subsystem (ever tried that while md-raid is syncing?)
IMHO, a LOT of the stuff we have in rc.S should be kicked to rc.1. When
one needs to use the 'emergency' mode outside of a major root filesystem
screwup or massive md-raid/lvm snafu, it means something is not proper.
That reminds me of two issues we have:
1. microcode.ctl is being run too late. It should run in the initrd, and
failing that, as soon as udev is available.
2. update of kernel parameters (/etc/sysctl.conf, /etc/sysfs.conf) needs to
be applied as soon as possible as well (probably right after the udev
That will fix some extremely aggravating failure modes we have. Should I
open separate bugs for these issues?
"One disk to rule them all, One disk to find them. One disk to bring
them all and in the darkness grind them. In the Land of Redmond
where the shadows lie." -- The Silicon Valley Tarot
More information about the Pkg-sysvinit-devel