Ubuntu 12.04,3.5.0-36-通用内核通过 LTS 硬件支持堆栈。Intel Core i7-4770 上的 HD4600 GPU。
当我使用桌面的“锁定屏幕”功能时,有时我会在几个小时后回到机器并会看到以下两个故障之一:
- 屏幕大部分是黑色的,上面有一堆故障图形。我仍然可以移动鼠标,但无法点击任何东西,什么都没有发生。
- 系统看起来已解锁(如果我没记错的话,显示器是打开的)。锁定之前屏幕上的内容现在完全可见,但你无法点击任何内容。这已经不止一次向办公室其他人展示了我的电子邮件收件箱内容。
此时操作系统实际上还没有冻结。我通常使用 (CTRL+ALT+F1) 打开 TTY 并运行:
sudo stop lightdm
sudo start lightdm
并且能够恢复工作,即使之前打开的所有进程(如 Firefox、skype 等)似乎都消失了。
首先,这是一个已知问题吗?我可以修复它吗?其次,是否有日志可以让我查看具体问题是什么?/var/log/lightdm 没有显示太多信息,但我可能找错了地方。
任何建议都将受到热烈欢迎。
我偶然发现的解决方法:如果其他人也遇到了这个问题,那么当它发生时,没有必要重新启动机器。我认为使用 ALT+CTRL+F1 切换到虚拟 tty,然后再切换回 ALT+CTRL+F7 似乎可以解决问题。更好的是,您可以通过在 X 中锁定屏幕,然后在想要让机器静置一段时间时切换到 tty1 来完全避免这个问题。回来后再切换回 X。我还没有遇到故障,可能是因为每次执行此操作时它都会强制进行某种“完全刷新”。
答案1
编辑:我编写了一个脚本,通过检测屏幕状态并在正确的时间自动切换虚拟终端(与手动 Ctrl+Alt+F 键序列相同)来解决此问题。尝试一下,如果有效请告诉我。我不使用 lightdm,但也许我们可以想办法修补它。您可以在 GitHub 上获取它并按照说明使用它:
https://github.com/appleYaks/switcher
旧方法:仅适用于笔记本电脑盖关闭时。
如果您使用的是笔记本电脑,您可以让机器在关闭和打开盖子时自动切换 tty。这是我修复它的方法。我没有运行 Ubuntu,所以 YMMV:
编辑文件并将/etc/acpi/lid.sh
命令放在正确的位置。chvt 1
chvt 7
grep -q closed /proc/acpi/button/lid/*/state
if [ $? = 0 ]
then
. /usr/share/acpi-support/screenblank
# this is the line we add to switch to tty1
# when the laptop lid closes
chvt 1
if [ x$LID_SLEEP = xtrue ]; then
pm-suspend
fi
else
# this is the other part of the pair,
# that switches back to tty7 when the lid opens again
chvt 7
这两行chvt
是文件的唯一更改。我还没有找到一种方法来修复空闲时屏幕关闭的问题,但目前我对此很满意。
答案2
奇怪的是,你遇到了图形问题,通常情况下,开箱即用,没有任何问题。安装英特尔图形驱动程序安装程序,看看是否有帮助
https://01.org/linuxgraphics/downloads/2013/intelr-linux-graphics-installer-version-1.0.1