Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Is the default Ctrl-Alt-Delete shutdown -r functionality on Linux systems a dangerous feature?

Years ago, when I deployed physical systems with attached keyboards and monitors, I'd sometimes modify the /etc/inittab on Red Hat systems to disable the reboot trap. This usually happened after a local IT person or Windows admin accidentally used the magic key combination on the wrong terminal/keyboard/window and rebooted their server.

# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now

I haven't done this since the RHEL4 days, but newer systems seem to have a /etc/init/control-alt-delete.conf file for this.

In the years since, most of my systems have been deployed headless or are running as virtual machines. This has reduced the frequency of unintended reboots... however, I've had a recent set of ctrl-alt-delete oopses from:

1). an IP KVM plugged into the wrong server by datacenter staff.
2). a Windows admin using the key combination in a VMware console, thinking it was needed for logon.
3). me using the ctrl-alt-delete macro in an HP ILO console to reboot a live CD... but it was actually the ILO for a very busy production server.

enter image description here


  • Does it make sense to disable Ctrl-Alt-Delete reboot in Linux by default?
  • Is this a common concern, or generally ignored?
  • Are there any downsides to doing so?
  • How do you handle this in your environment?

Edit: In fact, I just encountered this server, a virtual machine running for 1,115 days, root password unknown, and VMware tools were not installed (so Ctrl-Alt-Delete would be the only graceful shutdown option).

share|improve this question
5  
No, because if you can't reboot an arbitrary computer in your network you have bigger problems. See, e.g., the Chaos Monkey. –  dmourati Jul 21 at 3:22
12  
@dmourati That's untrue. Real world line-of-business systems don't always run like web scale applications. It's irresponsible to suggest that's an architectural failing. –  ewwhite Jul 21 at 3:35
4  
Even if you could reboot an arbitrary system, you wouldn't want to. In a real world IT scenario, you would only want to have planned reboots when necessary. Oopsies are always bad, and should be avoided, and this question is all about the oopsies. –  Journeyman Geek Jul 21 at 5:25
4  
@fduff In the case of the production system I rebooted this weekend, it caused about 13 minutes of downtime because the server takes a long time to POST, plus the application did not go down cleanly (it's not controlled via init scripts), which let to ~45 minutes of database repair following the reboot. –  ewwhite Jul 21 at 9:52
4  
@JamesRyan Maybe. But not always. If Windows users/administrators are conditioned to use Ctrl-Alt-Delete to wake a screen or authenticate, it's an understandable mistake. In the ILO/IPMI/KVM situations, yes, more care could be taken to identify systems, but that's not always possible... (e.g. relying on remote hands at a data center) –  ewwhite Jul 21 at 13:59

3 Answers 3

up vote 33 down vote accepted

This can be useful for very, very seldom touched machines. Years after installation, if no-one can remember a login for the host, Ctrl-Alt-Delete will do proper shutdown and then let you use GRUB (or even LiLo!) to supply rw init=/bin/bash to the kernel and thus give you the chance to reset the root password.

The above is also a way that Ctrl-Alt-Delete is dangerous even if physical access to the power/reset switches and power cables is prevented. A boot loader password (and BIOS password plus disabling of USB/CD-ROM boot and the boot menu key) can prevent this but makes legitimate emergency recovery more difficult.

share|improve this answer
1  
You're right. I have used this feature this way in the situation you described. –  ewwhite Jul 21 at 4:25
    
Even then it's easier to load a "rescue" media, mount, and enter the hash of a known password. Over IPMI you load the media from an iso file, making the entire "physical access" issue moot. Or you load from a special configuration tftp/pxe, after enabling boot from net. –  Dani_l Jul 21 at 6:16
    
I believe what I mentioned about BIOS password & options still applies when using IPMI. I'd be pleased to hear if that's incorrect. –  Alastair Irvine Jul 21 at 6:47
1  
I disagree about rescue media. It's not hard to remember the kernel options that I mentioned. Your method requires optical media (or an ISO file under IPMI) and a password hash, which has to be typed in or copied from USB storage. (If you downvoted, please undo.) –  Alastair Irvine Jul 21 at 6:49
1  
@AlastairIrvine I didn't downvote, and you are correct about ipmi - an ipmi console will give you access to machine console during entire boot process, including entering bios so you will face same issues. Not to mention that self respecting server HW should have ability to facilitate parameter change from running OS (e.g IBM's ASU ibm.com/support/entry/myportal/docdisplay?lndocid=TOOL-ASU). –  Dani_l Jul 21 at 10:36

If you have ILO/IPMI/... It makes absolute sense. The only reason for CTRLALTDEL was a magic trap when nothing else would interrupt. With a control card, you don't need that - you can reset the machine anyway. Needless to say, if the machine behaves correctly, you can always 'reboot'/'shutdown -r now'/'init 6'/'systemctl reboot' from console or gui.

share|improve this answer

I feel that the chances of accidental reboot via ctrl-alt-delete are much greater than the chances of a server's root password being forgotten, and therefore in production environments it makes sense to disable ctrl-alt-delete. I personally do this on my production systems.

The chances of a hard powercycle on a running linux host causing unrecoverable data corruption is small. In the hundreds of times I've done this over the years, I can't recall a single instance where the system wasn't able to fix itself (fsck) on boot. So I consider this a valid option on hosts where the root password is unknown, barring the availability of other methods for graceful shutdown.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.