LINUX.ORG.RU

Авто-сон при бездействии

 , ,


0

1

Как реализовать сон при бездействии?
имеется арч, systemd как инит.
имеются ли инструменты для такой реализации?

мне подошел данный ответ.

★★

Последнее исправление: safocl (всего исправлений: 1)

Ответ на: комментарий от intelfx

WM i3wm, сори..
так я пробовал через logind, однако, не засыпает.
критерии бездействия — самые обычные, когда не шевелится мышка, не нажимаются кнопки клавы, ну и, скажем не воспроизводится какое то видео или музыка.

safocl ★★
() автор топика
Ответ на: комментарий от intelfx

вот так пробовал конфиг /etc/systemd/logind.conf, однако никакого эффекта

экран гаснет, т.к. в dpms установлено время отключения экрана, которое вроде полчаса, но 1-минутное время простоя по logind не проходит.

safocl ★★
() автор топика
Последнее исправление: safocl (всего исправлений: 1)

xidle, наверное. Для определения неактивности на экране в иксах используется X Screensaver Extention. Вот xidle его использует и может запустить команду при неактивности.

Zubok ★★★★★
()
Ответ на: комментарий от safocl

я не помню, какой там критерий бездействия

критерии бездействия — самые обычные, когда не шевелится мышка, не нажимаются кнопки клавы, ну и, скажем не воспроизводится какое то видео или музыка.

«Там» — это не твои критерии бездействия, а logind-шные…

Я посмотрел, там всё до безобразия тупо, ему нужно вручную сообщать, когда у тебя idle. Так что сначала тебе нужно придумать, как определять бездействие (вон там советуют xidle, я хз, что это), а потом уже смотреть, как через dbus передать это в logind (там достаточно просто, нужно через busctl позвать нужный метод).

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от Zubok

Еще xscreensaver. Может, еще что-то есть. Я в сон просто обычно машину не отправляю - только моник в сон увожу, а это делается прямо в xorg.conf.

UPD. Да, но это не будет работать в голой консоли. Для универсального решения надо подумать. Может, демон какой.

Zubok ★★★★★
()
Последнее исправление: Zubok (всего исправлений: 2)
Ответ на: комментарий от intelfx

«Там» — это не твои критерии бездействия, а logind-шные…

да, я уже прочел повторно и заметил, поначалу подумал что ты спрашиваеш про мои критерии.
а как же этот конфиг, /etc/systemd/logind.conf ? зачем в нем тогда есть пункты
IdleAction=suspend
IdleActionSec=1min

safocl ★★
() автор топика
Ответ на: комментарий от Zubok

мне надо для иксов пока что, для голой консоли именно мне не надо...
в идеале мне бы во время отключения монитора сразу и суспендиться бы.
не пойму только, где скрипт находится который выполняется когда отключается моник?
просто в него бы вписать уход в сон.

safocl ★★
() автор топика
Последнее исправление: safocl (всего исправлений: 1)
Ответ на: комментарий от safocl

а как же этот конфиг, /etc/systemd/logind.conf ? зачем в нем тогда есть пункты

Прочти что я написал ещё раз.

intelfx ★★★★★
()
Ответ на: комментарий от safocl

в идеале мне бы во время отключения монитора сразу и суспендиться бы.

А суспенд у тебя и монитор уведет в сон (вернее, сигнал пропадет - монитор должен заснуть). Но даже если не так, то можно увести в сон и монитор и комп. В сон моник увести xset dpms...

Zubok ★★★★★
()
Ответ на: комментарий от Zubok

В сон моник увести xset dpms...

да енто я знаю, у меня настроено отключение моника, имел ввиду, именно когда вот он уходит в сон, чо бы срабатывал сразу и сон компа.

safocl ★★
() автор топика
Ответ на: комментарий от safocl

А я тебе говорю, чтобы ты уводил комп в сон, а монитор сам в сон должен уйти, как только сигнал с компа пропадет. Зачем по монитору отключаться?

Zubok ★★★★★
()
Ответ на: комментарий от Zubok

ну просто я думал, что так просто было бы реализовать, если запуск сна моника находится в скрипте, туда бы и дописал сон компа... вот и все.

safocl ★★
() автор топика

попробовал xidle, все срабатывает, однако почему то теперь уже systemd не хочет переводить комп в suspend и даже в hybernate, хатя до этого вручную переводил нормально, даже нет догадок из-за чего, не обновлял систему, не менял конфиги...
ошибка такая сыпется при попытке перехода

systemd-sleep[6822]: Failed to suspend system. System resumed again: Device or resource busy

safocl ★★
() автор топика
Последнее исправление: safocl (всего исправлений: 1)

Кстати, вот вопрос.
У меня система с несколькими мониторами, из которых очень часто используется только один.

Возможно ли как-то детектить, что монитор простаивает - и отключать, не трогая остальные?

devl547 ★★★★★
()
Ответ на: комментарий от devl547
Section "Monitor"
               Identifier "name"
               Option "DPMS" "false"
               ...
EndSection


вроде так наисано в мане xorg.conf

Option «DPMS» «bool»
This option controls whether the server should enable the DPMS extension for power management for this screen. The default is to enable the extension.

апд. т.е. можно какому то монику отключать dpms расширение вообще, и он не будет отключаться, но триггер срабатывания сна моника вроде никак не связан с активностью на каком то монике

safocl ★★
() автор топика
Последнее исправление: safocl (всего исправлений: 1)
Ответ на: комментарий от safocl

в общем все кулл после перезагрузки, значит манипуляции с рестартом systemd-logind.service гладко не проходят (перед тестом ребутал его).
можно считать тему решенной.

safocl ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.