Use a customized emergency shell
Resolves: bz1901024
Upstream: Fedora
Conflict: None
commit 41980f30d9
Author: Kairui Song <kasong@redhat.com>
Date: Mon Apr 26 17:09:57 2021 +0800
Use a customized emergency shell
Use a modified and minimized version of emergency shell.
The differences of this kdump shell and dracut emergency shell are:
- Kdump shell won't generate a rdsosreport automatically
- Customized prompts
- Never ask root password
- Won't tangle with dracut's emergency_action. If emergency_action is
set, dracut emergency shell will perform dracut's emergency_action
instead of kdump final_action on exit.
- If rd.shell=no is set, kdump shell will still work, dracut emergency
shell won't, even if kdump failure_action is set to shell.
Signed-off-by: Kairui Song <kasong@redhat.com>
Acked-by: Coiby Xu <coxu@redhat.com>
Signed-off-by: Kairui Song <kasong@redhat.com>
This commit is contained in:
parent
06aa5b897f
commit
50d77e1989
@ -237,10 +237,35 @@ dump_to_rootfs()
|
|||||||
|
|
||||||
kdump_emergency_shell()
|
kdump_emergency_shell()
|
||||||
{
|
{
|
||||||
echo "PS1=\"kdump:\\\${PWD}# \"" >/etc/profile
|
ddebug "Switching to kdump emergency shell..."
|
||||||
ddebug "Switching to dracut emergency..."
|
|
||||||
/bin/dracut-emergency
|
[ -f /etc/profile ] && . /etc/profile
|
||||||
rm -f /etc/profile
|
export PS1='kdump:${PWD}# '
|
||||||
|
|
||||||
|
. /lib/dracut-lib.sh
|
||||||
|
if [ -f /dracut-state.sh ]; then
|
||||||
|
. /dracut-state.sh 2>/dev/null
|
||||||
|
fi
|
||||||
|
|
||||||
|
source_conf /etc/conf.d
|
||||||
|
|
||||||
|
type plymouth >/dev/null 2>&1 && plymouth quit
|
||||||
|
|
||||||
|
source_hook "emergency"
|
||||||
|
while read _tty rest; do
|
||||||
|
(
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo 'Entering kdump emergency mode.'
|
||||||
|
echo 'Type "journalctl" to view system logs.'
|
||||||
|
echo 'Type "rdsosreport" to generate a sosreport, you can then'
|
||||||
|
echo 'save it elsewhere and attach it to a bug report.'
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
) > /dev/$_tty
|
||||||
|
done < /proc/consoles
|
||||||
|
sh -i -l
|
||||||
|
/bin/rm -f -- /.console_lock
|
||||||
}
|
}
|
||||||
|
|
||||||
do_failure_action()
|
do_failure_action()
|
||||||
|
Loading…
Reference in New Issue
Block a user