无法关闭显示

无法关闭显示

我对 Ubuntu 还比较陌生。但我已经安装了 Ubuntu Server 17.04。

我在笔记本电脑上运行它,我想关闭显示器。我使用具有 root 访问权限的管理员帐户运行命令。

我已经尝试使用 xset 进行以下操作。

xset dpms force off

这给了我以下错误信息..

xset:  unable to open display ""

我也尝试使用 vbetool 和以下代码。

sudo vbetool dpms off

这给了我以下错误信息..

Real mode call failed

在谷歌搜索后,我找到了一个写 Python 脚本的人

#!/usr/bin/python

import time
import subprocess
from Xlib import X
from Xlib.display import Display

display = Display(':0')
#display = Display('0')
root = display.screen().root
root.grab_pointer(True,
    X.ButtonPressMask | X.ButtonReleaseMask | X.PointerMotionMask,
    X.GrabModeAsync, X.GrabModeAsync, 0, 0, X.CurrentTime)
root.grab_keyboard(True,
    X.GrabModeAsync, X.GrabModeAsync, X.CurrentTime)

subprocess.call('xset dpms force off'.split())
p = subprocess.Popen('gnome-screensaver-command -i'.split())
time.sleep(1)

while True:
print display.next_event()
p.terminate()
break

它给了我以下错误信息..

Traceback (most recent call last):
  File "./script.py", line 8, in <module>
    display = Display(':0')
  File "/usr/lib/python2.7/dist-packages/Xlib/display.py", line 80, in __init__
    self.display = _BaseDisplay(display)
  File "/usr/lib/python2.7/dist-packages/Xlib/display.py", line 62, in __init__
    display.Display.__init__(*(self, ) + args, **keys)
  File "/usr/lib/python2.7/dist-packages/Xlib/protocol/display.py", line 58, in __init__
    self.socket = connect.get_socket(name, host, displayno)
  File "/usr/lib/python2.7/dist-packages/Xlib/support/connect.py", line 78, in get_socket
    return getattr(mod, modname).get_socket(dname, host, dno)
  File "/usr/lib/python2.7/dist-packages/Xlib/support/unix_connect.py", line 91, in get_socket
    raise error.DisplayConnectionError(dname, str(val))
Xlib.error.DisplayConnectionError: Can't connect to display ":0": [Errno 2] No such file or directory
administrator@readytoserver:~/Scripts$

有任何想法吗?

我希望得到你们的帮助,因为我觉得这有点超出我的能力范围。

答案1

16.04 版上不存在此问题。一段时间后,笔记本电脑的 LCD 会自动关闭,但如果盖子合上,则进入睡眠状态。

我解决了联想 T410 的这个问题,因为在我安装了 18.04 并升级到 18.04.1 之后,LCD 就会关闭,除非我合上笔记本电脑的盖子并让其进入睡眠状态。

现在我可以放下盖子直到 LCD 关闭或完全关闭盖子而它不会进入睡眠状态。

解决方法是编辑文件:/etc/systemd/logind.conf

HandleSuspendKey=ignore
HandleLidSwitch=ignore

相关内容