Rework of shutdown policy in inittab
authorMaxime Ripard <maxime.ripard@free-electrons.com>
Wed, 11 Jan 2012 17:09:22 +0000 (18:09 +0100)
committerPeter Korsgaard <jacmet@sunsite.dk>
Wed, 11 Jan 2012 17:33:03 +0000 (18:33 +0100)
This commit follows commit ad501b66. Start up of the busybox logging
daemons were moved to an init script but the shutdown were still
performed in inittab. This commit moves the shutdown policy to an
rcK script that calls the stop function of all the init scripts in
a reversed order.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
fs/skeleton/etc/init.d/rcK [new file with mode: 0755]
fs/skeleton/etc/inittab

diff --git a/fs/skeleton/etc/init.d/rcK b/fs/skeleton/etc/init.d/rcK
new file mode 100755 (executable)
index 0000000..59e9c54
--- /dev/null
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+
+# Stop all init scripts in /etc/init.d
+# executing them in reversed numerical order.
+#
+for i in $(ls -r /etc/init.d/S??*) ;do
+
+     # Ignore dangling symlinks (if any).
+     [ ! -f "$i" ] && continue
+
+     case "$i" in
+       *.sh)
+           # Source shell script for speed.
+           (
+               trap - INT QUIT TSTP
+               set stop
+               . $i
+           )
+           ;;
+       *)
+           # No sh extension, so fork subprocess.
+           $i stop
+           ;;
+    esac
+done
+
index ac410d6e4e62857610e296551b2c4e2a72ec424a..85881f4607a11341675bc7d053ed4c524802a86e 100644 (file)
@@ -30,8 +30,7 @@ null::sysinit:/bin/hostname -F /etc/hostname
 ::ctrlaltdel:/sbin/reboot
 
 # Stuff to do before rebooting
-null::shutdown:/usr/bin/killall klogd
-null::shutdown:/usr/bin/killall syslogd
+null::shutdown:/etc/init.d/rcK
 null::shutdown:/bin/umount -a -r
 null::shutdown:/sbin/swapoff -a