diff options
author | Thomas Bächler <thomas@archlinux.org> | 2010-02-15 16:19:04 +0100 |
---|---|---|
committer | Thomas Bächler <thomas@archlinux.org> | 2010-02-15 16:19:04 +0100 |
commit | 049712038da250f1436373ae62e2d611f1edfb49 (patch) | |
tree | 0d21be2954b7b6369069776fedb356ec787a47de /init_functions | |
parent | 9ce0669a892c5e6608e215a38768f2b65dbd7ec9 (diff) | |
download | mkinitcpio-049712038da250f1436373ae62e2d611f1edfb49.tar.gz mkinitcpio-049712038da250f1436373ae62e2d611f1edfb49.tar.xz |
If we could not mount the real root device, or the init program did not exist on it, bail out instead of panicing
In these cases, we will exec /bin/sh, such that manual recovery is still possible as sh has PID 1
An expert might be able to mount and switch_root manually. In any case, this is less scary than a panic and a useless trace.
Diffstat (limited to 'init_functions')
-rw-r--r-- | init_functions | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/init_functions b/init_functions index c0f10e9..72bf6ae 100644 --- a/init_functions +++ b/init_functions @@ -23,5 +23,7 @@ poll_device() { } launch_interactive_shell() { - PS1='[ramfs \W]\$ ' /bin/sh -i + PS1='[ramfs \W]\$ ' + [ "$1" = "--exec" ] && exec /bin/sh -i + /bin/sh -i } |