summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaxime Ripard2011-06-29 15:46:20 +0200
committerPeter Korsgaard2011-07-04 20:57:10 +0200
commitad501b6634dc9d974da7e86299041fe441d58088 (patch)
treeed920584fcdfda959f12d9fda940a466026644f0
parentRemove obsolete code in busybox.mk (diff)
downloadbuildroot-ad501b6634dc9d974da7e86299041fe441d58088.tar.gz
buildroot-ad501b6634dc9d974da7e86299041fe441d58088.tar.xz
buildroot-ad501b6634dc9d974da7e86299041fe441d58088.zip
Rework the logging daemons startup
The logging mechanism startup being in inittab, it isn't easy to overcharge the default policy. With this patch, the startup of the syslog daemon is moved to an init.d script, that can easily be overwritten. [Peter: use install -D] Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-rw-r--r--fs/skeleton/etc/inittab2
-rw-r--r--package/busybox/S01logging26
-rw-r--r--package/busybox/busybox.mk6
3 files changed, 32 insertions, 2 deletions
diff --git a/fs/skeleton/etc/inittab b/fs/skeleton/etc/inittab
index 0e504679b..191c52590 100644
--- a/fs/skeleton/etc/inittab
+++ b/fs/skeleton/etc/inittab
@@ -28,8 +28,6 @@ null::sysinit:/bin/hostname -F /etc/hostname
# Logging junk
null::sysinit:/bin/touch /var/log/messages
-null::respawn:/sbin/syslogd -n -m 0
-null::respawn:/sbin/klogd -n
tty3::respawn:/usr/bin/tail -f /var/log/messages
# Stuff to do for the 3-finger salute
diff --git a/package/busybox/S01logging b/package/busybox/S01logging
new file mode 100644
index 000000000..6badebe1a
--- /dev/null
+++ b/package/busybox/S01logging
@@ -0,0 +1,26 @@
+#!/bin/sh
+#
+# Start logging
+#
+
+case "$1" in
+ start)
+ echo -n "Starting logging :"
+ start-stop-daemon -S -q -p /var/run/syslog.pid --exec /sbin/syslogd -- -m 0
+ start-stop-daemon -S -q -p /var/run/klogd.pid --exec /sbin/klogd
+ echo "OK"
+ ;;
+ stop)
+ echo -n "Stopping logging :"
+ start-stop-daemon -K -q -p /var/run/syslog.pid
+ start-stop-daemon -K -q -p /var/run/klogd.pid
+ echo "OK"
+ ;;
+ restart|reload)
+ ;;
+ *)
+ echo $"Usage: $0 {start|stop|restart}"
+ exit 1
+esac
+
+exit $?
diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk
index d2ba22625..4931b0744 100644
--- a/package/busybox/busybox.mk
+++ b/package/busybox/busybox.mk
@@ -122,6 +122,11 @@ define BUSYBOX_DISABLE_MMU_APPLETS
endef
endif
+define BUSYBOX_INSTALL_LOGGING_SCRIPT
+ $(INSTALL) -m 0755 -D package/busybox/S01logging \
+ $(TARGET_DIR)/etc/init.d/S01logging
+endef
+
# We do this here to avoid busting a modified .config in configure
BUSYBOX_POST_EXTRACT_HOOKS += BUSYBOX_COPY_CONFIG
@@ -152,6 +157,7 @@ define BUSYBOX_INSTALL_TARGET_CMDS
$(TARGET_DIR)/usr/share/udhcpc/default.script; \
fi
$(BUSYBOX_INSTALL_MDEV_SCRIPT)
+ $(BUSYBOX_INSTALL_LOGGING_SCRIPT)
endef
define BUSYBOX_UNINSTALL_TARGET_CMDS