Ran sudo reboot. Server went down. Server did not come back up. No Telegram notification. Website offline. VPN dead. Just... silence.
Had to walk to the basement, open the laptop lid, and find a black screen. Completely powered off. Not frozen, not stuck at GRUB — just off. Had to press the power button manually to bring it back.
What Happened
Checked the logs from the previous boot:
sudo journalctl -b -1 -e
The shutdown was clean — all services stopped properly, filesystems unmounted, everything orderly. But right at the end:
systemd[1]: Reached target reboot.target - System Reboot.
systemd[1]: Shutting down.
kernel: watchdog: watchdog0: watchdog did not stop!
The system reached the reboot target (meaning the OS did its part correctly), but the hardware failed to restart. The kernel told the hardware "reboot now" and the hardware responded by... turning off. The watchdog error confirms it — the system expected to come back, but the laptop's BIOS didn't cooperate.
This is a known issue with older laptops. The default reboot method the kernel uses doesn't work on all hardware. The laptop powers off instead of restarting.
The Fix
Told the kernel to use a different reboot method by adding reboot=pci to the GRUB configuration. While I was at it, I also realized my GRUB was missing the C-State idle freeze fix from a few chapters ago (I must have forgotten to apply it on the new install), so I added everything at once:
GRUB_CMDLINE_LINUX_DEFAULT="quiet modprobe.blacklist=nouveau processor.max_cstate=1 intel_idle.max_cstate=1 reboot=pci"
sudo update-grub
What each flag does:
reboot=pci— uses PCI reboot method instead of the default, works better on older hardwareprocessor.max_cstate=1andintel_idle.max_cstate=1— prevents the CPU from entering deep sleep states that cause the idle freeze (Chapter 2 flashback)modprobe.blacklist=nouveau— disables the GPU driver, unnecessary on a headless server
I also checked the BIOS for a "Restore on AC Power Loss" setting that would auto-boot the laptop whenever power is available. Unfortunately, this old ASUS doesn't have it — that feature is mostly found on desktop motherboards and server hardware. Laptop BIOS is more limited.
Lesson Learned
Don't reboot a production server unless you absolutely need to. Most configuration changes (systemctl reload, ufw reload, service restarts) don't require a full reboot. And when you do need to reboot, make sure you have physical access just in case. I got lucky that the server is in my basement and not at a remote location — otherwise I would have had to wait until I could physically reach it.
Also: always apply your GRUB fixes before the first reboot. I had the C-State fix documented in my own blog from the old server and still forgot to apply it on the new install. Read your own documentation, people.