Есть ли способ выключить дисплей (войти в режим энергосбережения) с помощью команды?
Например, когда компьютер неактивен в течение определенного интервала, экран отключается для экономии энергии. Есть ли способ вручную выключить экран, но при этом поддерживать компьютер в нормальном режиме?
Это ноутбук, поэтому на самом мониторе нет кнопки «выключения».
Я использую Ubuntu Server без X на MacBook Pro 2007 года. Дисплей спит сам по себе, но не активируется при нажатии клавиши на клавиатуре. На данный момент мое решение заключается в использовании vbetool
. Установите с помощью apt-get
:
sudo apt-get install vbetool
Затем используйте для включения дисплея через SSH с другого компьютера:
sudo vbetool dpms on
Или выключите:
sudo vbetool dpms off
Я сделал единый модуль запуска, чтобы выключить ЖК-дисплей.
sudo apt-get install --no-install-recommends gnome-panel
gnome-desktop-item-edit ~/Desktop/ --create-new
Он откроет маленькие окна. Введите следующее:
Имя: turnofflcd
Команда: gnome-screensaver-command --lock && sleep 2s && xset dpms force off
Вы также можете выбрать значок, щелкнув значок слева.
[ 119] Подробнее о создании программы запуска см. http://www.ubuntugeek.com/how-to-create-desktop-launchers-in-ubuntu-11-10oneiric.html .
(sleep 10; xset dpms force suspend) & xdg-screensaver lock
Запускает экранную заставку в заблокированном режиме, а затем переводит дисплей в режим ожидания. Ubuntu Mate 15.10
xset dpms force off
работал только в течение 5 секунд.
Я искал в интернете и нашел следующий скрипт, и после небольшого изменения он отлично работал.
#!/usr/bin/python
import time
import subprocess
from Xlib import X
from Xlib.display import Display
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())
#original
#p = subprocess.Popen('gnome-screensaver-command -a'.split())
#changed
p = subprocess.Popen('xset dpms force off'.split())
time.sleep(1)
while True:
print display.next_event()
p.terminate()
break
Я думаю, что вы ищете
xset dpms force off
Однако вам нужно убедиться, что ваш acpi включен. Вы можете проверить это с помощью
cat /proc/acpi/info
Другой вариант может быть
setterm -powersave powerdown