我最近遇到了一个我以前从未见过的 Linux 功能,按下PrntScr键盘上的按钮会打印一张包含控制台内容的物理纸。
我真的需要找出如何禁用它。这让我发疯。
我按照创建自定义键盘映射的指南进行操作,并尝试将其重新映射Esc并加载我的自定义键盘映射,但它似乎不起作用。通过禁用,我的意思是我希望按键根本不发送任何输入,并且理想情况下我希望允许 CUPS 继续运行。
到底是什么控制了这种行为?我可以阅读有关此内容的任何具体手册页吗?
编辑:我应该提供一些额外的信息:我在登录 TTY 后启动 Openbox,而不是使用 DM。我正在寻找一种即使我在 TTY 上也能禁用打印的解决方案,因为PrntScr也可以从 TTY 进行打印。
答案1
您应该能够使用PrntScr自定义在控制台上禁用keymap
。在 archlinux 上的过程如下(其他发行版应该类似):
cd /usr/share/kbd/keymaps/i386/qwerty
- 将默认键盘映射复制到新文件:
cp us.map.gz personal.map.gz
- gunzip 新地图文件:
gunzip personal.map.gz
使用您最喜欢的编辑器进行编辑
personal.map
:
切换到终端,运行showkey
并按下PrntScr以获取密钥代码。在我的系统上它输出:keycode 99 press keycode 99 release
所以PrntScr代码是
99
.添加keycode 99 = nul
到
personal.map
- gzip 映射文件:
gzip personal.map
然后运行loadkeys personal
加载自定义键盘映射,然后点击PrntScr测试新的键盘映射。 - 通过(如果不存在则创建并)编辑使其永久化
/etc/vconsole.conf
:替换KEYMAP=us
为KEYMAP=personal
. - 重启
以上仅适用于控制台,您还必须PrntScr在X
.
一种方法是在您的文件中将其注释掉X
keycodes
(与您的键盘对应的文件 - linux 使用/usr/share/X11/xkb/keycodes/evdev
)。关键代码是<PRSC>
,注释掉(添加//
在它前面)例如替换
<PRSC> = 107;
和
// <PRSC> = 107;
完全禁用PrntScr。
答案2
如果您使用 GNOME,我相信您可以通过gconf-editor
.
$ gconf-editor
然后像这样导航左侧层次结构:
/apps/metacity/global_keybindings
您需要将属性“run_command_screenshot”设置为“禁用”。
截屏