I don't remember why they did this, but at one point X.org decided that disabling CtrlAltBackspace to kill it was a good idea. I know there's a way to re-enable it but I don't remember how. Can someone refresh my memory?
7 Answers
Modify /etc/X11/xorg.conf
or a .conf
file in /etc/X11/xorg.conf.d/
with the following. (note: it is ok if this is all you have in your xorg.conf as xorg will still auto-detect the rest (note: that is if auto-detect works for you without it))
Section "ServerFlags"
Option "DontZap" "false"
EndSection
Section "InputClass"
Identifier "Keyboard Defaults"
MatchIsKeyboard "yes"
Option "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection
-
4They seriously disabled this by default? No wonder it hasn't been working!– gabe.Aug 13, 2010 at 18:47
-
-
8When you don't have to zap your xwindows very often, sometimes its easy to miss a change that happened 5 years ago...– AstraAug 16, 2010 at 20:08
-
3@gabe. It's disabled by default because it's a potential security risk. For example, say the user logs in to the bare shell, starts X with
startx
, does some work, then locks the screen withxlock
and leaves. Anyone can come along, zap X and get access to the user's shell on the tty. Nov 21, 2011 at 21:59 -
4In some distributions (e.g. recent Fedoras) these kinds of additional settings should probably be placed in
/etc/X11/xorg.conf.d
as a conf file, e.g.10-enable-ctrl-alt-backspace
. Jan 7, 2014 at 12:43
The DontZap
feature is no longer working for me on Fedora 16 and Ubuntu 11.10 (most recent releases as of November 2011), so I found an alternative.
According to the X11R7.5 release notes, it appears that this functionality has been migrated to a XKB configuration option, therefore DontZap no longer works. I can't tell if this is a detail of the Xorg implementation in Fedora and Ubuntu, or if this affects other distros as well.
From http://www.x.org/archive/X11R7.5/doc/RELNOTES.txt
Terminate Server keystroke
The Xorg server has previously allowed users to exit the server by pressing the keys Control + Alt + Backspace. While this function is still enabled by default in this release, the keymap data usually used with Xorg, from the xkeyboard-config project, has been modified to not map that sequence by default, in order to reduce the chance that inexperienced users will accidentally destroy their work.
Users who wish to have this functionality available by default may enable it via the XKB configuration option “terminate:ctrl_alt_bksp”. For instance, the setxkbmap command can be used to enable this by running:
setxkbmap -option "terminate:ctrl_alt_bksp"
Many desktop environments include XKB configuration options in their preferences to enable this as well.
-
1
-
1Thanks for this answer. I prefer this option because it allows users to enable this feature without being
root
or having to modify system-wide configuration files. This command worked for me in Fedora 22. Nov 8, 2015 at 18:42 -
The only reason I disagree with this option, is you can't kill the login manager, and if your "boot" into your desktop environment gets stuck, you can't kill it there. I recently had this problem. Jan 21, 2021 at 16:33
In current Ubuntu releases, at least since 14.10, the keyboard-configuration package has an option to re-enable Zap:
$ sudo dpkg-reconfigure keyboard-configuration
With debian or based on, you can add this option :
XKBOPTIONS="terminate:ctrl_alt_bksp"
to /etc/default/keyboard file
you can try following ( I have tried it on my Ubuntu) :
Add the following lines to your xorg.conf file, making sure that when you paste it, it is NOT using smart quotes.
sudo gksudo gedit /etc/X11/xorg.conf
Section "ServerFlags"
Option "DontZap" "false"
EndSection
you can also try dontzap tool
sudo apt-get install dontzap
Open Terminal and type to enable
sudo dontzap --enable
for disable
sudo dontzap --disable
-
I really wish they had never turned this off by default. oh, and apt-get doesn't work on my system ;) apparently we haven't packaged dontzap either. oh well. Aug 12, 2010 at 7:20
-
-
setxkbmap -option terminate:ctrl_alt_bksp
by itself that didn't work :( apparently you need to do this too. Aug 12, 2010 at 7:29 -
@Hermant of course but it seems to be only 1/2 of it. I actually have it working now... there's a way to configure the xsetkbd option in xorg.conf. like so
Section "InputClass" Identifier "Keyboard Defaults" MatchIsKeyboard "yes" Option "XkbOptions" "terminate:ctrl_alt_bksp" EndSection
there are several other places it could be done too. Aug 12, 2010 at 9:55 -
It will be gr8 if you can put your solution as Answer. So that others facing same issue can get help :-).– HemantAug 12, 2010 at 10:06
@xenoterracide's solution is ok if the AutoAddDevice
option is enabled in the ServerLayout
of your xorg.conf
. If not (especially in multiseat X configurations), you need to insert the XkbOptions
line into the InputDevice
section describing your keyboard. For example:
Section "InputDevice"
Identifier "keyboard-vmware"
Driver "evdev"
Option "Device" "/dev/input/by-path/platform-i8042-serio-0-event-kbd"
Option "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection
In RHEL 7.3, xenoterracide's answer worked for me, with one tweak: the path to the config file is /etc/X11/xorg.conf.d/00-keyboard.conf
.