#!/bin/sh mount -t proc proc /proc mount -t sysfs sysfs /sys /bin/busybox --install -s mdev -s modprobe snd-pcsp # /proc/cmdline parser (from Gentoo Wiki) cmdline() { local value value=" $(cat /proc/cmdline) " value="${value##* $1=}" value="${value%% *}" [ "$value" != "" ] && echo "$value" } # Get some command line options USER_LOGIN=$(cmdline adlin.login) USER_PKEY=$(cmdline adlin.key) # Define hostname hostname adlin-${USER_LOGIN} # Launch some TTYs for i in `seq 2 4` do while true do /usr/bin/setsid /sbin/agetty -l /sbin/fakelogin 38400 "tty${i}" linux done & done # Hide us! /bin/rm -f /init /linuxrc # Randomize time at boot /bin/date -s 197001010101 > /dev/null /sbin/sysctl -w net.ipv4.ip_default_ttl=4 > /dev/null # Launch some daemons /usr/bin/setsid /usr/sbin/crond > /dev/null & # Launch requested init if grep init= /proc/cmdline > /dev/null 2> /dev/null then INIT=$(cmdline init) [ -z "${INIT}" ] while true do sleep $((10 + $RANDOM % 49)) beep -f 1000 -r 2 -n -r 5 -l 10 --new done & exec /usr/bin/setsid sh -c "exec '${INIT}' /dev/tty1 2>&1" else while true do /usr/bin/setsid /sbin/agetty -l /sbin/fakelogin 38400 tty1 linux done fi