有时,当我的笔记本电脑从待机或休眠状态唤醒时,屏幕背光不会打开,我在黑暗的房间里几乎看不到任何东西,而当我在户外时也看不到任何东西。
唯一的解决方案是关闭计算机电源,取出电池,然后将其放回去并重新打开。即使只是将其关闭然后再次打开(正常的完全冷重置,但没有通过取出电池完全断电)也无济于事 – 屏幕背光仍然会关闭,甚至 BIOS 启动顺序和 GRUB 菜单也会显示黑暗的屏幕。这表明问题可能不是驱动程序问题。
至于现在,我通过按住电源按钮 5 秒钟以冷方式将其关闭,但是,不用说,定期这样做并不是一件好事。
我想设置一个键盘快捷键,无论如何都会触发无条件但软的关闭序列(通知所有应用程序并给予时间优雅退出并正确卸载所有文件系统)关闭序列。
如何才能做到这一点?
我使用 Xubuntu 15.10,但我相信这是在较低的、与发行版无关的级别上完成的,所以我决定在这里提问而不是在 AskUbuntu 上提问。
更新:我有一个解决方案的想法 - 远没有我想要的那么方便,但仍然是一个选项 - 禁用 GRUB 默认选择超时,然后在需要时按Ctrl+ Alt+F1切换到控制台,按Ctrl+ Alt+Delete重新启动,然后在给计算机一些时间重新启动到 GRUB 后关闭计算机电源。我只是希望有一个像Ctrl+ Alt+Delete这样的快捷方式可以关闭计算机而不是重新启动它。
答案1
这魔法 SysRq 键适用于这样的情况。
[Magic SysRq 键] 是一个“神奇”的组合键,您可以点击它,无论内核在做什么,内核都会响应它,除非它完全锁定。
请注意,必须将支持编译到内核中才能使其工作。这是一个稍微好一点的解决方案,因为即使所有 TTY 都挂起,只要内核仍然响应,它也可以工作。
在我的笔记本电脑上,您可以通过输入Right Alt+ PrtScr+来触发它Magic key。
您想要的魔术键可能是 REISUO,依次按下它们,每次按下之间等待几秒钟。
'r' - 关闭键盘原始模式并将其设置为 XLATE。
'e' - 向除 init 之外的所有进程发送 SIGTERM。
'i' - 向除 init 之外的所有进程发送 SIGKILL。
's' - 将尝试同步所有已安装的文件系统。
'u' - 将尝试以只读方式重新挂载所有已挂载的文件系统。
'o' - 将关闭您的系统(如果已配置并支持)。
我个人认为Ctrl++产生Alt的Del关闭更加优雅。除了当前的解决方案之外,一旦确定您处于 GRUB 提示符处,请按c并输入halt
,然后Enter按 正常关闭电源。
或者,向 GRUB 添加一个运行的自定义条目halt
,然后只需按几次向下箭头并按 Enter 键即可。
您提到您已经不正常地关闭了几次电源,您可能想要在下次启动时强制检查文件系统。
答案2
Ctrl按+ Alt+时的行为Delete是可配置的。当你按下这个组合键时,内核会向进程 1 (init) 发送一个 SIGINT 信号,因此由 init 来决定。
对于 systemd,SIGINT 会启动该ctrl-alt-del.target
单元。默认情况下/lib/systemd/system/ctrl-alt-del.target
是到 的符号链接reboot.target
。创建一个链接/etc/systemd/system/ctrl-alt-del.target
到的符号链接/lib/systemd/system/shutdown.target
(不要修改下面的链接,/lib
因为它会在升级时被覆盖)。看https://askubuntu.com/questions/659267/how-do-i-override-or-configure-systemd-services有关在 Ubuntu 上配置 systemd 目标的更详细过程。