55

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).

14
  • 8
    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, 2014 at 3:22
  • 15
    @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, 2014 at 3:35
  • 8
    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. Jul 21, 2014 at 5:25
  • 6
    @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, 2014 at 9:52
  • 6
    @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, 2014 at 13:59

3 Answers 3

36

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.

8
  • 3
    You're right. I have used this feature this way in the situation you described.
    – ewwhite
    Jul 21, 2014 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, 2014 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. Jul 21, 2014 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.) Jul 21, 2014 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, 2014 at 10:36
7

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.

4

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.

1
  • 1
    How do you disable the ctrl-alt-delete option in the VM machine hosted on the Esx Server?
    – kvivek
    Jul 24, 2015 at 8:59

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .