If you want the server to get rebooted automatically after kernel hit by a pain error message, try adding panic=N to /etc/sysctl.conf file.
It specify kernel behavior on panic. By default, the kernel will not reboot after a panic, but this option will cause a kernel reboot after N seconds. For example following boot parameter will force to reboot Linux after 10 seconds.
Open /etc/sysctl.conf file
# vi /etc/sysctl.conf
When kernel panic’s, reboot after 10 second delay
kernel.panic = 10
Save and close the file. Alternatively, you may want to enable and use magic system request keys (SysRq).
🐧 Please support my work on Patreon or with a donation.
🐧 Get the latest tutorials on Linux, Open Source & DevOps via:
🐧 Get the latest tutorials on Linux, Open Source & DevOps via:
- RSS feed or Weekly email newsletter
- Share on Twitter • Facebook • 4 comments... add one ↓
Category | List of Unix and Linux commands |
---|---|
File Management | cat |
Firewall | Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 |
Network Utilities | dig • host • ip • nmap |
OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 |
Package Manager | apk • apt |
Processes Management | bg • chroot • cron • disown • fg • jobs • killall • kill • pidof • pstree • pwdx • time |
Searching | grep • whereis • which |
User Information | groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w |
WireGuard VPN | Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 |
It’s important to mention that there is another “key” named “panic_on_oops” that should also be defined to some amount of seconds to reboot kernel on an “oops” kind of panic. I had this situation and the console had frozen and not even SYSRQ could restart the machine. The crash dump couldn’t be saved because I had to remove power from device (embedded device without reset button) to restart it and the power off procedure avoids memory to be saved after panic.
Making “echo 1 > /proc/sys/kernel/panic_on_oops” or “kernel.panic_on_oops=1” on /etc/sysctl.conf solved my problem of restarting after this oops panic.
Thanks for this tip! As indicated by mangoo: To take this change effect right now, issue the command
sysctl -p
to re-read the /etc/sysctl.confOtherwise, this change is not active before the next reboot.
One can also add panic=10 to the kernel command line, it will have exactly the same effect.
Of course, it’s possible to change it later with sysctl, or by writing to /proc:
echo 10 > /proc/sys/kernel/panic
Thanks for this tip. My computer had a kernel panic for the first time a couple of weeks ago and I had no choice but to reboot it manually.