我4岁的侄女是个好奇的孩子。她非常喜欢电影《阿凡达》。每当播放电影《阿凡达》时,她总是如此专注,双眼时刻盯着屏幕。但问题是她经常在看电影的时候碰到键盘上的按键或者移动鼠标或者点击鼠标按钮。她总是会不小心的按下键盘上的某个键,导致电影的关闭或暂停。所以我一直在寻找一种锁定键盘和鼠标,但不锁定屏幕的方法。

幸运的是,我在Ubuntu论坛上找到了一个完美的解决方案。如果你不想让你的猫或小狗在你的键盘上行走,或者你的孩子在你看着屏幕上重要的东西时摆弄键盘和鼠标,我建议你试试“xtrlock”这个程序。这是一个简单但实用的工具,可以锁定显示器,直到用户在键盘上输入密码。在这个简短的教程中,我将向您展示如何在Linux中锁定键盘和鼠标,而让屏幕正常显示。这个技巧适用于所有的Linux操作系统。

安装xtrlock

xtrlock包可以在大多数Linux操作系统的默认存储库中得到。因此,您可以使用发行版的包管理器来安装它。

在Arch Linux及其衍生系统上,可以运行以下命令来安装它。

$ sudo pacman -S xtrlock

在Fedora下:

$ sudo dnf install xtrlock

在RHEL以及CentOS下:

$ sudo yum install xtrlock

在SUSE/openSUSE下:

$ sudo zypper install xtrlock

在Debian,Ubuntu,Linux Mint下:

$ sudo apt-get install xtrlock

使用xtrlock锁定键盘和鼠标,但不锁定屏幕

安装xtrlock后,你需要创建一个键盘快捷键。您可以使用您选择的组合键来锁定键盘和鼠标。

在/usr/local/bin中创建一个名为lockkbmouse的新文件。

$ sudo vi /usr/local/bin/lockkbmouse

在其中添加以下代码行。

#!/bin/bash sleep 1 && xtrlock

然后保存并关闭文件。

使用以下命令将其设置为可执行文件:

$ sudo chmod a x /usr/local/bin/lockkbmouse

接下来,我们需要创建一个快捷键键盘。

在Arch Linux MATE桌面中:

进入到系统->首选项->硬件->键盘快捷键中。

单击“添加”以创建新快捷方式。

linux鼠标锁定(可在Linux下锁定键盘和鼠标但屏幕正常显示)(1)

输入快捷方式的名称,并在命令框中添加以下行,然后单击“应用”按钮。

bash -c "sleep 1 && xtrlock"

linux鼠标锁定(可在Linux下锁定键盘和鼠标但屏幕正常显示)(2)

要分配快捷键,只需选择或双击它,然后键入您选择的组合键。例如,我使用Alt k。

linux鼠标锁定(可在Linux下锁定键盘和鼠标但屏幕正常显示)(3)

要清除组合键,请按退格键。完成后,关闭键盘设置窗口。

在Ubuntu GNOME 桌面中:

进入到系统设置->设备->键盘中进行设置。单击末尾的 号。

输入快捷方式的名称,并在命令框中添加以下行,然后单击“添加”按钮。

bash -c“sleep 1 && xtrlock”

linux鼠标锁定(可在Linux下锁定键盘和鼠标但屏幕正常显示)(4)

接下来,将快捷键分配给新创建的快捷键。要做到这一点,只需选择或双击,并点击“设置快捷键”按钮。

linux鼠标锁定(可在Linux下锁定键盘和鼠标但屏幕正常显示)(5)

您现在将看到以下画面:

linux鼠标锁定(可在Linux下锁定键盘和鼠标但屏幕正常显示)(6)

键入您选择的按键组合。例如,我使用Alt k。

linux鼠标锁定(可在Linux下锁定键盘和鼠标但屏幕正常显示)(7)

要清除组合键,请按BACKSPACE键。快捷键分配完毕后关闭“键盘设置”窗口。

从现在开始,每当您按下键盘快捷键(在我们的例子中为ALT k)时,鼠标指针将变为挂锁。现在,键盘和鼠标都锁上了,你可以自由地看电影或任何你想看的东西。即使你的孩子或宠物触摸键盘上的一些键或点击鼠标按钮,它们也不会起作用。

这里是xtrclock在起作用。

linux鼠标锁定(可在Linux下锁定键盘和鼠标但屏幕正常显示)(8)

你看到那个小锁按钮了吗?这意味着键盘和鼠标已经被锁定。即使你移动锁定按钮,也不会发生任何事情。后台的任务将继续运行,直到您解锁屏幕并手动关闭正在运行的任务为止。

解锁键盘和鼠标

要解锁键盘和鼠标,只需输入你的系统登入密码并点击“回车”按钮即可。在输入密码时你不会看到密码。无论如何,只要键入你的密码,然后按回车键即可。输入正确的密码后,鼠标和键盘将重新开始工作。如果你输入了错误的密码,你会听到铃声。你可以按ESC键清除不正确的密码,然后再次输入正确的密码。要删除部分键入的密码中的一个字符,请按退格键或删除键。

如果我永久地被锁定在屏幕外了怎么办?

xtrclock工具可能无法在某些桌面环境上工作,例如GDM。它可能会永久锁定您的屏幕。所以,你最好先在虚拟机中测试它,然后在你的个人或官方桌面上尝试,如果它真的有效的话。我在Arch Linux MATE桌面和Ubuntu 18.04 GNOME桌面上进行了测试。它工作得很好。

但是,万一你的屏幕被永久锁定了,你可以切换到TTY (CTRL ALT F2),然后运行:

$ sudo killall xtrlock

或者,您也可以使用chvt命令在TTY和X会话之间切换。

例如,要切换到TTY1,请运行:

$ sudo chvt 1

要再次切换回X会话,输入:

$ sudo chvt 7

不同的发行版使用不同的键组合在TTY之间切换。有关更多详细信息,请参阅您的发行版官方网站。

最糟糕的情况是,在GDM崩溃的情况下,甚至TTY也无法访问,系统会在进入图形界面处就被挂起。在这种情况下,您可能需要chroot进入系统并卸载xtrlock。再次提醒你,正式使用xtrlock前,必须先进行测试,以防万一!

有关xtrlock的详细信息,请参阅手册页。

$ man xtrlock

以上就是全部内容了。希望可以帮助到你。

,