diff options
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/live-bottom/22serialtty | 52 | ||||
| -rwxr-xr-x | scripts/live-bottom/25configure_init | 4 |
2 files changed, 54 insertions, 2 deletions
diff --git a/scripts/live-bottom/22serialtty b/scripts/live-bottom/22serialtty new file mode 100755 index 0000000..23ca8f0 --- /dev/null +++ b/scripts/live-bottom/22serialtty @@ -0,0 +1,52 @@ +#!/bin/sh + +#set -e + +# initramfs-tools header + +PREREQ="" + +prereqs() +{ + echo "${PREREQ}" +} + +case "${1}" in + prereqs) + prereqs + exit 0 + ;; +esac + +# live-initramfs header + +# this bottom script currently only works with upstart +if [ ! -d /root/etc/init ] +then + exit 0 +fi + +. /scripts/live-functions + +# live-initramfs script + +for ARGUMENT in $(cat /proc/cmdline) +do + case ${ARGUMENT} in + serialtty=*) + tty="${ARGUMENT#serialtty=}" + + log_begin_msg "Setting up a serial tty..." + +cat > /root/etc/init/${tty}.conf <<EOF +start on stopped rc RUNLEVEL=[2345] +stop on runlevel [!2345] + +respawn +exec /sbin/getty 115200 ${tty} +EOF + + log_end_msg + ;; + esac +done diff --git a/scripts/live-bottom/25configure_init b/scripts/live-bottom/25configure_init index f55dd0e..b90a7db 100755 --- a/scripts/live-bottom/25configure_init +++ b/scripts/live-bottom/25configure_init @@ -73,9 +73,9 @@ 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*)" ] + if [ "/root/etc/init/tty*" != "$(echo /root/etc/init/tty*)" ] then - for f in /root/etc/event.d/tty* + for f in /root/etc/init/tty* do sed -i -e "/^respawn$/!s|^respawn.*|respawn /bin/login -f ${USERNAME} </dev/$(basename ${f}) > /dev/$(basename ${f}) 2>\&1|" ${f} sed -i -e "s|^exec.*|exec /bin/login -f ${USERNAME} </dev/$(basename ${f}) > /dev/$(basename ${f}) 2>\&1|" ${f} |
