You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.2 KiB
Plaintext

7 years ago
# mountall-shell - Recovery shell for filesystem failure
#
# If mountall exits to indicate that manual recovery is required, this
# starts the necessary shell.
description "Recovery shell for filesystem failure"
start on (stopped mountall EXIT_STATUS=[!4]
or stopped mountall EXIT_SIGNAL=?*)
stop on runlevel [06]
task
console owner
script
case "$EXIT_STATUS" in
""|1)
echo "General error mounting filesystems."
echo "A maintenance shell will now be started."
echo "CONTROL-D will terminate this shell and reboot the system."
;;
2)
echo "Filesystem check or mount failed."
echo "A maintenance shell will now be started."
echo "CONTROL-D will terminate this shell and continue booting after re-trying"
echo "filesystems. Any further errors will be ignored"
;;
3)
echo "Root filesystem check failed."
echo "A maintenance shell will now be started."
echo "CONTROL-D will terminate this shell and reboot the system."
;;
esac
/sbin/sulogin
end script
post-stop script
if [ -z "$UPSTART_STOP_EVENTS" ]
then
if [ "$EXIT_STATUS" = "2" ]
then
exec start --no-wait mountall
else
umount -a || :
exec reboot -f
fi
fi
end script