在 14.04 中解锁屏幕而无需 `gnome-screensaver-command`

d_i*_*ble 10 lock-screen gnome-screensaver 14.04

我一直很高兴在 13.10 中使用 blueproximity,但自从升级到 14.04 后,它只会在我的手机超出范围(使用gnome-screensaver-command -l)时锁定,但不会使用gnome-screensaver-command -d.

现在gnome-screensaver-command -d不起作用的原因是因为一个错误

然而,在那个错误报告中提到 gnome-screensaver 不再可靠使用,因此gnome-screensaver-command预计将被淘汰,这也可能与命令不起作用的原因有关。

所以我的问题是,如果 gnome-screensaver 被替换,那么在不依赖于 的情况下解锁屏幕的新命令是gnome-screensaver-command什么?

小智 6

这对我有用:

在命令行上:

gsettings set org.gnome.desktop.a11y.applications screen-keyboard-enabled true

首次登录时会出现屏幕键盘,但您可以将其关闭。

gnome-screensaver-command -d工作后。

取自https://bugs.launchpad.net/ubuntu/+source/gnome-screensaver/+bug/1307163 上的benshayden


Tim*_*Tim 3

不幸的是,没有办法做到这一点:(

更新-我找到了方法。查看我的新答案

这是我之前的解决方案——不建议使用,手机丢失无法解锁;你必须重新启动才能解锁

我最终想出了一个解决方案——一开始就不要锁定它。这可能听起来很奇怪——请耐心等待。

我没有锁定它,而是禁用了鼠标和键盘,隐藏了所有桌面图标,然后切换到桌面。你可能会隐藏更多的东西(比如启动器),但无论如何我都隐藏了它。

该命令需要一些设置。

安装:xdotool -sudo apt-get install xdotool

输入:xinput --list并记下您的鼠标和键盘 ID。

我建议编辑这些命令gedit

这个充当储物柜。

xinput set-prop <Keyboard ID> 'Device Enabled' 0 && xinput set-prop <Mouse ID> 'Device Enabled' 0 && gsettings set org.gnome.desktop.background show-desktop-icons false && wmctrl -k on

这充当解锁。

xinput set-prop <Keyboard ID> 'Device Enabled' 1 && xinput set-prop <Mouse ID> 'Device Enabled' 1 && gsettings set org.gnome.desktop.background show-desktop-icons true && wmctrl -k off

在两个命令中将 和 更改为各自的数字。

为了这个:

  • 禁用/启用键盘
  • 禁用/启用鼠标
  • 隐藏/显示所有桌面图标
  • 切换显示您的桌面。

需要记住的一件重要事情 - 如果没有蓝牙设备,则无法撤消此操作。如果由于某种原因失败,则必须重新启动。因此,建议保持键盘启用状态,并将解锁命令设置为选定的快捷方式。


Tim*_*Tim 0

更新!有办法使用普通锁屏!耶!

我不知道它有多安全(以明文形式存储您的密码),但我认为这是最好的。

这是锁定命令:gnome-screensaver -d

有2个解锁命令:

1号:

这是第一个解锁命令:

gnome-screensaver -d && xdotool type mypassword12 && xdotool key Return

单击是为了唤醒它(它应该在登录框内单击,因为鼠标移动),并显示漂亮的新锁定屏幕,而不是“睡眠”黑屏。

然后mypassword123!在文本框中输入回车键以提交。

重要的。由于某种原因 - 可能是因为 xdotool 的实际用途(键盘快捷键) - 您无法输入双字母。为了解决这个问题,请将其分成两个命令,每个双字母(如上所述)。此外,数字必须有自己的、与字母分开的命令(也在上面)。最后,修饰符(例如 Shift)需要一个单独的修饰符,回车键也是如此。


2号:

这是第二个。它更好一些并且不那么黑客化,但是需要大量的设置。

首先安装actionaz:

sudo apt-get install actionaz

打开一个新脚本,然后将正确的项目拖到您的流程中。(您可以在此处下载完整的一份。如果您选择下载此文件,请打开它,双击“在此处写入文本 - 密码”,然后输入您的密码)。

  1. 暂停:输入3秒。
  2. 单击:复制并粘贴165:555到位置框中。(根据屏幕侧面,这可能会有所不同。请确保单击的是密码框,否则不起作用)。
  3. 写入文本:在框中输入您的密码
  4. 键:单击该框并按 Return 键

将其保存在您的主文件夹中,名称为unlock.ascr(或任何名称 - 我只是不想宣传其中有我的密码)

将您的接近命令设置为:

xdotool mousemove 0 0 && actionaz unlock.ascr -ex

鼠标移动将其唤醒,选项告诉它执行脚本,然后在结束时退出。


如果您丢失了设备,您只需输入密码即可,因此密码是可逆的。

  • 嘿,这看起来不错,但不幸的是,不能选择以纯文本形式存储密码。在 root 中运行所有内容几乎和我的用户在 sudoers 列表中一样糟糕。但我认为你的两个答案的结合会起作用。我会尽快尝试一些东西。基本上使屏幕变暗,直到鼠标移动、按下按键或蓝牙设备返回范围内。如果鼠标移动或按下按键,请重新打开屏幕并运行“gnome-screensaver-command -l”,以便在蓝牙设备不存在时可以输入密码。我认为这应该是可行的。 (2认同)