summaryrefslogtreecommitdiff
path: root/scripts/live-bottom/25configure_init
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/live-bottom/25configure_init')
-rwxr-xr-xscripts/live-bottom/25configure_init58
1 files changed, 58 insertions, 0 deletions
diff --git a/scripts/live-bottom/25configure_init b/scripts/live-bottom/25configure_init
new file mode 100755
index 0000000..1274990
--- /dev/null
+++ b/scripts/live-bottom/25configure_init
@@ -0,0 +1,58 @@
+#!/bin/sh
+
+PREREQ=""
+DESCRIPTION="Setting up init..."
+
+. /scripts/live-functions
+
+prereqs()
+{
+ echo "$PREREQ"
+}
+
+case $1 in
+# get pre-requisites
+prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+log_begin_msg "$DESCRIPTION"
+
+# Arrange for shells on virtual consoles, rather than login prompts
+
+if [ -n "$USERNAME" ]; then
+ if [ -f /root/etc/inittab ]; then
+ sed -i -e "s|^\([^:]*:[^:]*:[^:]*\):.*getty.*\<\(tty[0-9]*\).*$|\1:/bin/login -f $USERNAME </dev/\2 >/dev/\2 2>\&1|" /root/etc/inittab
+ fi
+ if [ "/root/etc/event.d/tty*" != "$(echo /root/etc/event.d/tty*)" ]; then
+ for f in /root/etc/event.d/tty*; do
+ sed -i -e "s|^exec.*|exec /bin/login -f $USERNAME </dev/$(basename $f) > /dev/$(basename $f) 2>\&1|" $f
+ done
+ fi
+fi
+
+# This has the nice side effect of the cron.{daily,weekly,monthly} jobs in
+# /etc/crontab remaining disabled, yet also not run by anacron
+if [ -x /root/etc/init.d/anacron ]; then
+ for f in /root/etc/rc?.d/S??anacron; do
+ mv ${f} ${f%/*}/K00anacron
+ done
+fi
+
+# No point, really
+rm -f /root/etc/rc?.d/[SK]??postfix
+
+# Avoid clobbering the user's clock
+rm -f /root/etc/rc?.d/K??hwclock.sh
+
+# Disable readahead since it doesn't play well with squashfs + unionfs
+# use chmod instead of mv to not trigger unionfs bugs.
+if [ -e /root/sbin/readahead-list ]; then
+ chmod -x /root/sbin/readahead-list
+fi
+
+log_end_msg
+
+exit 0