From 153d299a41b9be4e15dab1ca29bb93a74bd2445d Mon Sep 17 00:00:00 2001 From: Andrew Cady Date: Fri, 29 Apr 2016 14:36:26 -0400 Subject: fix paths (in progress) --- src/initrd/init.shutdown | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100755 src/initrd/init.shutdown (limited to 'src/initrd/init.shutdown') diff --git a/src/initrd/init.shutdown b/src/initrd/init.shutdown new file mode 100755 index 0000000..6bfce84 --- /dev/null +++ b/src/initrd/init.shutdown @@ -0,0 +1,30 @@ +#!/bin/sh +read omitpids < /run/sendsigs.omit.d/samizdat +for pid in $omitpids; do + if [ -e /proc/$pid/root ]; then + initroot=/proc/$pid/root + break + fi +done + +warn() { echo "$*" >/dev/console; } +error() { umount /sbin/init; exec /sbin/init; } + +[ -e "$initroot" ] || error + +if [ $$ != 1 ]; then + exec $initroot/init "$@" +else + set -- + for pid in $omitpids; do + set -- "$@" -o $pid + done + if killall5 -15 "$@"; then + sleep 5 + killall5 -9 "$@" + fi + exec <$initroot/dev/console >$initroot/dev/console 2>$initroot/dev/console + exec chroot $initroot umountall.sh + + error +fi -- cgit v1.2.3