Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

In my gnome GUI desktop of Ubuntu 12.04, Ctrl+Alt+Delete will log out instead of rebooting.

But I was told that

Switching to a text-based virtual console and pressing Ctrl+Alt+Delete will reboot the machine. It will shut down cleanly and reboot, which is much better than Alt+SysRq+REISUB.

So I wonder if the above two different meanings of Ctrl+Alt+Delete are right?

What commands Ctrl+Alt+Delete is binded to in these two cases?

share|improve this question
up vote 6 down vote accepted

Ctrl+Alt+Delete is actually a "magic" keystroke for the IBM PC-compatible hardware architecture that would call a BIOS reset.

Since this kind of thing is dangerous for a system like Linux the decision was made to hook those keystrokes and do something else instead. This is controlled by init and you can see what it does by looking in /etc/inittab.

On my Debian Squeeze system:

ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

Windows NT later followed suit and turned Ctrl+Alt+Delete into the secure key entry mode*.

In the case of X, it is similarly hooking the keystrokes but it simply kills the display server (which will automatically respawn if you're using a display manager).

Some systems (perhaps all, I haven't tried in a while) you can still press Ctrl+Alt+Delete before the OS loads to trigger a BIOS reset.

*I'm not sure what they actually call it.

share|improve this answer
Thanks! What is /etc/inittab used for? – Tim Jul 8 '12 at 12:07
@Tim: /etc/inittab is more or less the config file for init. – bahamat Jul 8 '12 at 18:01
On my Ubuntu 12.04, there is no /etc/inittab. What might possibly be the alternative? – Tim Jul 8 '12 at 21:08
Mm, that's right. Ubuntu uses upstart rather than init. The equivalent on Ubuntu is the etc/init directory. (Note not /etc/init.d). – bahamat Jul 8 '12 at 22:29
@Tim /etc/init/control-alt-delete.conf As for upstart, upstart is still called init, but it's not the traditional init. See the Wikipedia article and the project page. – Eliah Kagan Jul 9 '12 at 1:43

Your Answer


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.