aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2009-08-20 07:54:35 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2009-08-20 07:54:35 +0000
commitf97090ab1539ee680d4040b17ca54368879f6d62 (patch)
tree49248233ec624aef54f2eca959fb2c760fcd0e52
parentd7a45796d5997150b969500c41067e1de010e5b3 (diff)
downloadmkinitfs-f97090ab1539ee680d4040b17ca54368879f6d62.tar.bz2
mkinitfs-f97090ab1539ee680d4040b17ca54368879f6d62.tar.xz
init: setup serial login in inittab if console=ttyS*
-rwxr-xr-xinitramfs-init.in16
1 files changed, 16 insertions, 0 deletions
diff --git a/initramfs-init.in b/initramfs-init.in
index 8b0f749..afcc979 100755
--- a/initramfs-init.in
+++ b/initramfs-init.in
@@ -147,6 +147,17 @@ find_ovl_dev() {
done
}
+setup_inittab_serial(){
+ local tty=$1
+ local speed=$2
+
+ # do nothing if inittab already have the tty set up
+ grep -q "^$tty:" $sysroot/etc/inittab && return 0
+ echo "# enable login on serial console" >> $sysroot/etc/inittab
+ echo "$tty::respawn:/sbin/getty -L $tty $speed vt100" \
+ >> $sysroot/etc/inittab
+}
+
# gotta start from somewhere :)
echo "Alpine Init $VERSION"
@@ -366,6 +377,11 @@ fi
apk add --root $sysroot $repo_opt $apkflags $pkgs >/dev/null
eend $?
+# fix inittab if serial console
+case "$KOPT_console" in
+ ttyS*) setup_inittab_serial $(echo "$KOPT_console" | tr ',' ' ')
+esac
+
# copy alpine release info
cp $ALPINE_MNT/.alpine-release $sysroot/
ln -sf /.alpine-release $sysroot/etc/alpine-release