Inilah masalah saya:
Saya memiliki laptop yang menjalankan Arch yang baru saja saya simpan di rumah. Daya tahan baterainya 4 jam, tetapi kadang-kadang putri saya bermain di dekat tempat penyimpanan dan akhirnya menarik steker. Nah, ketika saya sampai di rumah 5 jam kemudian, laptop saya mengalami shutdown yang sulit.
Selain itu, kadang-kadang saya akan membiarkannya ditangguhkan dan melupakannya selama sekitar satu hari - masalah yang sama.
Inilah usul saya:
Jadi pikiran saya adalah bahwa saya bisa membuat pekerjaan cron yang berjalan setiap 15 atau 30 menit atau sesuatu, memeriksa masa pakai baterai. Jika masa pakai baterai <N menit lagi, saya bisa hibernasi laptop. Ini akan bekerja dengan baik jika laptop saya dalam keadaan 'normal'. Tetapi jika saya diskors, jangan terlalu banyak. Jadi pertanyaan saya dua kali lipat - apakah ada cara yang lebih baik untuk melakukan ini, dan jika tidak, apakah mungkin untuk melakukan semacam pemantauan dalam mode penundaan - pada dasarnya hanya menjalankan pekerjaan cron?
Inilah yang berhasil:
Mengikuti instruksi uswsusp di Arch wiki, saya menginstal uswsusp dari AUR . Menggunakan perintah berikut:
wayne@jughead:~$ swapon -s
Filename Type Size Used Priority
/dev/sda2 partition 530140 56744 -1
Saya menemukan /dev/sda2adalah nama partisi swap saya. Jadi saya atur ini di/etc/suspend.conf
snapshot device = /dev/snapshot
resume device = /dev/sda2
Saya menambahkan uresume di mkinitcpio.conf saya di sini:
HOOKS="base udev autodetect pata scsi sata resume uresume filesystems usbinput fsck"
Saya membuat /etc/pm/config.d/moduledan menempatkan
SLEEP_MODULE=uswsusp
di dalamnya.
Karena laptop saya tidak dikenali ( # s2ram --testditampilkan Machine unknown), saya harus menggunakan --forceopsi.
Dalam /usr/lib/pm-utils/module.d/uswsuspsaya juga mengubah semua s2ramopsi menjadi s2both.
rtcwake? Jawaban ini bisa jadi inspirasional.