diff options
Diffstat (limited to 'scripts/live-bottom/25configure_init')
-rwxr-xr-x | scripts/live-bottom/25configure_init | 58 |
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 |