Linux 版 (精华区)
发信人: netiscpu (说不如做), 信区: Linux
标 题: Linux控制台的魔键
发信站: 哈工大紫丁香 (Tue May 18 08:35:39 1999), 转信
《Linux公报》……让Linux更富魅力!
---------------------------------------------------------------------------
-----
The Answer Guy
By James T. Dennis, answerguy@ssc.com
Starshine Technical Services, http://www.starshine.org/
翻译: gaia
---------------------------------------------------------------------------
-----
Linux控制台的魔键
From Anthony Gabrielson, on Mon, 02 Nov 1998
您好,我的一个同事用sco unixware 7.在X下,他可以用alt f1 f2 ...在GUI之间切
换.他还可以在随便哪个终端startx.目前在Linux下能这么干吗?如果没有,有人在
做这项工作吗?
谢谢
Anthony Gabrielson
这是一个在Linux新手中引起普遍困惑的问题.在XFree86(Linux,FreeBSD等使用
的免费的X server)中,你可以通过 [Ctrl]+[Alt]+[Fx] 来实现这种功能. 我想你
还可以通过重映射你的[Alt]+[Fx]来实现,可能是用xmodmap.
你还可以用xterm命令,菜单项或图标做到这些--使用大多数发行套件里都会有的
chvt命令.
注意:你通常可以用[Ctrl]+[Alt]+[BackSpace] 退出XFree86.这成了X系统的"三指
礼"(vulcan nerve pinch或three finger salute,都是指引起软启动或退回ROM
monitor 的组合键,像PC的CTRL-ALT-DEL.下文恐怕指的是所有三键组合--译者注
),只退出X系统而不必reset操作系统的其余部分.
说到"三指礼",2.1kernel里有几个相当棒的功能,这需要你在编译新内核时打开了
"Magic SysRq"选项.这些给你提供了许多使用[Alt]+[SysRq/Print Screen]+? 的
命令.
比如说,你可以用"Magic SysRq"+[s]来 "Sync all filesystems"(使所有文件系统
写盘.)其它的组合键包括:把你的键盘从raw模式复原,kill 所有缚在当前虚拟控制
台的进程,把你的文件系统重新以只读模式安装,在你的控制台上输出任务列表,寄
存器和内存状态.还有向除init外所有进程发送信号.
似乎不管kernel在干什么这些总能起作用.在/usr/src/linux/Documentation/sysrq.t
xt 里,你能读到更多的内容.
(很多人不知道,2.0内核也有一些类似的控制台键盘功能.你可以用
[Alt]+[ScrollLock], [Shift]+[ScrollLock],[Ctrl]+[ScrollLock]来分别输出寄
存器内容,内存状态和任务列表.)
此外,大多数版本的Linux 内核(1.2甚至更早)允许你用[Shift]+[PgUp]把当前控制
台显示的内容往回滚动一部分.但如果你切换了虚拟控制台,保存以前显示内容的缓
冲区将被清空(不像FreeBSD的[ScrollLock]功能,每个虚拟控制台的内容被永久保
存).
另一个许多Linux用户不知道的键组合是[Alt]+[左箭头] and [Alt]+[右箭头],它
们可以让你在你的几个虚拟控制台(VC)之间切换.比如,你要是在VC4,[Alt]+[左箭
头]使你切换到VC3,而[Alt]+[右箭头]使你切换到VC5.
如果你重新设置了系统,提供12个以上虚拟控制台可供login,(只需编辑
/etc/inittab文件,按常规加上相应的项--并确认你有相应的/dev/tty*文件
)--你就能用另一个Alt键(右边的那个)到达第二组VC.如果你有24个以上的VC,你恐
怕要用Alt+{箭头键的组合}才能切换到那里.
当然你可以按照自己的喜好设置这些.详细内容参照以下帮助手册:
loadkeys (1)
dumpkeys (1)
showkey (1)
keytables (5)
...并且学习整个kbd软件包的文件以掌握chvt和其它命令.此外,在
SunSite(http://sunsite.unc.edu/pub/Linux) 或别的什么地方好象有一个改进的
控制台工具包("console"包?). 这样,你甚至不必patch 你的kernel就可以定制你
的组合键.
有时候,我只需运行'screen'程序就能解决控制台缺少翻页缓冲区的问题--它甚至
允许我把我的一些进程从某个终端脱离下来,重新挂到另一个终端上(以下是
"screen"的一些基本用法:运行"screen"后,操作键以CTRL-a 开头. C-a c 创建新
的screen窗口并切换进去;C-a w 列出所有窗口;C-a ? 帮助; C-a \ 退出;C-a
0-9 切换到某个screen窗口;C-a d 把"SCREEN"连同其子进程从一个终端上脱离下
来;用screen -r 启动"screen" 将把脱离的"SCREEN"挂在当前终端上.--译者注
).这很方便,尤其当我在一个虚拟控制台上工作时(我经常这么干),我需要用
Netscape浏览--如果Lynx不能满足我的需要.我把"screen"进程从一个终端解下来
,切换到X进程(我的在第13个VC,我妻子的在第14个VC),随便从一个xterm里把它挂
上.这样,我就能在X应用程序和我那一天到晚运行着的emacs之间执行剪贴操作.
'screen'还让我能在文本界面程序之间作键盘驱动的剪贴操作.比起gpm老的"选择
"功能,我个人更喜爱这个--尽管偶尔我会两者都用.
---------------------------------------------------------------------------
-----
rpm passwd links ipscript magickeys
---------------------------------------------------------------------------
-----
版权所有 (C) 1998 NJLUG
出版于第35期《Linux公报》1998年12月 中文版第二期
---------------------------------------------------------------------------
-----
--
☆ 来源:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: bin@mtlab.hit.edu.cn]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.354毫秒