我正在使用 Ubuntu 20.04。我的意思是设置一种简单的休眠方式,让任何不了解 Ubuntu/终端的人都可以休眠。
我首先尝试设置systemctl hibernate
,然后设置->键盘快捷键这样做的话,冬眠效果并不好。
所以我选择了这种pm-hibernate
方式(例如,这)。现在sudo pm-hiberante
运行良好。所以我想为它设置一个快捷方式。我尝试在设置->键盘快捷键,无济于事:
sudo pm-hibernate
echo <my_password> | sudo -S pm-hibernate
(我是 sudoer)。除了它不起作用之外,这不是一个理想的做法,因为我的密码会被暴露,尽管在这种情况下,如果需要的话我可以接受。
我怎样才能让它工作?
以下是可能的路线。我不确定如何实现它们,以及它们中的哪一个无法克服以下需求sudo
:
- 添加条目休眠在里面关机/注销菜单,使用
pm-hibernate
。可能是首选方案。 - 必须
systemctl hibernate
实际执行sudo pm-hibernate
(并且不需要我的密码)。我猜这应该可以透明地使用已分配给 的快捷方式systemctl hibernate
。 - 允许任何用户
pm-hibernate
。作为纯粹主义者,人们会避免这种情况,尽管如果它能解决问题,那就没问题了。 - 让
sudo pm-hibernate
快捷方式显示一个消息框,可以在其中输入密码。
有关的:
答案1
pkexec
如果您正在寻找键盘快捷键方法,一种方法是在 shell 脚本中使用。这将在执行前提示输入密码。
pm-hibernate
下面是一个可以通过以下方式调用的粗略的 shell 脚本pkexec
:
#!/bin/bash
pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY pm-hibernate
只要该文件可供机器上的每个用户帐户访问,它就可以保存在任何地方。
保存后,将其设置为可执行文件chmod +x
并进行测试:
./nighty-night.sh
现在应该提示您输入密码,并且只要该帐户是授权的,就可以继续sudoer
呼叫。pm-hibernate