Chciałbym umieścić bezczynne maszyny w naszym laboratorium (z uruchomioną edycją Mint Debian) po upływie limitu czasu. Próbowałem zawiesić program po południu, a to powoduje, że maszyny są w trybie gotowości i budzi się dobrze.
Czy ktoś wie, jak ustawić ogólnosystemową politykę zasilania, która będzie obowiązywać, gdy żaden użytkownik nie będzie zalogowany? Próbowałem pakietów takich jak narzędzia trybu laptopa, ale nie oferuje on limitu czasu zawieszenia.
Idealnie powinno być całkowicie niezależne od środowiska pulpitu. Jedynym rozwiązaniem, które znalazłem przez Google, jest zhakowanie haka wylogowania z GDM za pomocą xautolock wywołującego PM-suspend po upływie limitu czasu.
debian
power-management
suspend
gdm
ziyan
źródło
źródło
systemd
przynosi mogłyby być użyteczne: „Śledzenie użytkowników i sesji, ich procesów i ich stan spoczynku” (ja po prostu brak dalszej wiedzy, przepraszam)systemd
; nie jestem pewien, czy wszystko, co potrzebne (i która wersja) tam jest, jest ...Odpowiedzi:
Jeśli naprawdę nie obchodzą Cię osoby połączone przez ssh lub podobne, po prostu sprawdź liczbę przerwań generowanych przez klawiaturę. Na moim komputerze jest to / proc / interrupts jako i8042. Myślę, że będziesz mieć bardziej złożony przepływ pracy, jeśli masz klawiaturę USB.
Aby sprawdzić, czy ktoś nadal jest połączony z menedżerem okien, po prostu sprawdź, czy działa / usr / bin / Xorg, nie licząc ekranu logowania DM.
źródło
Uruchomiłbym skrypt,
cron
który sprawdza dane wyjściowe,who
a następnie zawiesza, gdy dane wyjściowe są puste lub coś, co ustaliłeś, że jest akceptowalne. Chociaż działa to w przypadku logowania, o co prosiłeś, nie będzie działać w przypadku bezczynnych sesji, w których użytkownik opuścił komputer bez wylogowania. W tym celu możesz użyć xautolock do monitorowania bezczynności, który można skonfigurować do wykonania polecenia wylogowania, a następnie zaczekaj nacron
wykonanie zawieszenia.źródło