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
50 lines
1.2 KiB
Plaintext
# 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
|