Saya mencoba menghemat daya dengan mengalihkan desktop ke mode menangguhkan saat tidak aktif. Tetapi banyak desktop juga diakses melalui SSH oleh pemiliknya. Ada solusi wakeonlan yang digunakan untuk memungkinkan pemilik menghidupkan mesin, tetapi masalahnya adalah bahwa mesin akan ditangguhkan lagi secara otomatis dalam 10 menit, meskipun koneksi SSH aktif.
Apa yang saya coba lakukan adalah memasukkan sesi SSH aktif dalam definisi "aktivitas".
Pertanyaannya, dapatkah hal ini dilakukan melalui pengaturan aturan polkit? Bisakah itu dilakukan dengan meletakkan skrip yang berjalan sebelum penangguhan yang sebenarnya, dan membatalkannya jika sesi SSH ditemukan? Saya perlu cara yang sah dan bersih untuk melakukan ini. Jika tidak, maka cara hack juga diterima.
Solusi peretasan naif saat ini: edit /usr/sbin/pm-suspend
:
#check for SSH sessions, and prevent suspending:
if [ "$(who | grep -cv "(:")" -gt 0 ]; then
echo "SSH session(s) are on. Not suspending."
exit 1
fi
Ini melayani tujuan. Tapi saya tidak tahu kapan pembaruan akan menimpa file /usr/sbin/pm-suspend
. Saya juga tidak tahu bagaimana ini akan bekerja dengan implementasi menangguhkan lainnya seperti tuxonice.
[
jika Anda menulis if who | grep -qv :0; then
(dengan asumsi Anda memiliki POSIX yang sesuai grep
seperti GNU grep).
grep -cv :0
daripada melewatiwc
?