Saya ingin tahu uptime sejak bangun terakhir dari standby.
Perintah uptimehanya menunjukkan perbedaan antara waktu saat ini dikurangi waktu startup terakhir.
Saya ingin tahu uptime sejak bangun terakhir dari standby.
Perintah uptimehanya menunjukkan perbedaan antara waktu saat ini dikurangi waktu startup terakhir.
Jawaban:
Di /var/log/pm-suspend.log, cari baris terakhir yang terlihat seperti ini:
Sun Dec 16 09:30:31 CET 2012: Awake.
Itu waktu bangun terakhir Anda. Anda dapat menghitung waktu aktif Anda sejak saat itu seperti yang disarankan Paul.
Secara berkala Anda logrotateakan "memutar" log untuk mencegahnya tumbuh terlalu besar, sehingga Anda dapat menemukan pm-suspend.logfile kosong . Dalam hal ini, cari saja pm-suspend.log.1file tersebut (Anda dapat menemukan juga file log lain bernama like pm-suspend.log.2.gzdan sebagainya; Anda dapat memeriksanya menggunakan zcatatau zless).
pm-suspend.logkosong? :(
cat /var/log/pm-suspend.log /var/log/pm-suspend.log.1 | grep -B1 Awake; echo "--"; zcat /var/log/pm-suspend.log.*.gz | grep -B1 Awake
Untuk desktop / server yang menjalankan systemd, sementara tidak ada perintah langsung yang akan memberi tahu info secara langsung (sejauh yang saya ketahui), semua data ditangkap dalam jurnal.
Anda dapat membaca jurnal, misalnya:
echo ">> [SUSPEND] Times during current boot"
journalctl -b 0 |grep "]: Suspending system..."
echo ">> [WAKE] Times during current boot"
journalctl -b 0 |grep "PM: Finishing wakeup"
Atau, untuk output mewah, saya menulis skrip python3 (berjalan dengan baik pada Fedora 23) Contoh output:
Initial Boot Timestamp: 2016-01-15 09:31:32
Wake Timestamp | Suspend Timestamp | Awake Time |
-------------------- | -------------------- | -------------------- |
2016-01-15 09:31:32 | 2016-01-15 09:36:03 | 0h 4m |
2016-01-15 09:36:22 | 2016-01-15 19:15:04 | 9h 38m |
2016-01-15 19:22:21 | 2016-01-15 20:00:05 | 0h 37m |
...
------------------- | -------------------- | -------------------- |
Summary: Days Since Boot [8.23] | Days Awake [4.14] | Suspend/Wake Cycles: [28]
Scriptnya ada di github. tautan ke repo github
journalctl -b 0 -o short-iso MESSAGE="PM: Finishing wakeup." | tail -1 | cut -d" " -f1hanya untuk waktu bangun terakhir
Program pm-suspend bukan satu-satunya pilihan cara menangguhkan komputer. Log saya dari program ini sekarang kosong, tetapi saya telah menemukan perintah yang lebih dapat diandalkan:
cat /var/log/syslog | grep 'systemd-sleep' | grep "Suspending\|resumed"
Dan hasilnya adalah:
Oct 2 09:11:48 dmatej-lenovo systemd-sleep[931]: Suspending system...
Oct 2 09:53:10 dmatej-lenovo systemd-sleep[931]: System resumed.
Oct 2 15:02:48 dmatej-lenovo systemd-sleep[27516]: Suspending system...
Oct 2 16:07:19 dmatej-lenovo systemd-sleep[27516]: System resumed.
Oct 2 16:32:48 dmatej-lenovo systemd-sleep[29622]: Suspending system...
Oct 2 17:16:41 dmatej-lenovo systemd-sleep[29622]: System resumed.
Oct 3 00:24:58 dmatej-lenovo systemd-sleep[21316]: Suspending system...
Oct 3 08:17:22 dmatej-lenovo systemd-sleep[21316]: System resumed.
Oct 3 09:09:25 dmatej-lenovo systemd-sleep[24739]: Suspending system...
Oct 3 09:50:47 dmatej-lenovo systemd-sleep[24739]: System resumed.
dimodifikasi jawaban langkah langkah yang lebih baik
grep ': Awake' /var/log/pm-suspend.log
sunting haha terima kasih atas komentarnya: D
catpoin yang tidak berguna !
Saya tidak punya pm-suspend.log di komputer saya.
Ini bekerja untuk saya:
/usr/bin/pmset -g log | grep Wake | grep "due to" | tail -n1
Juga mengatakan apa yang membangunkan komputer. :-)
pmsetditemukan dan tidak ada file seperti pmsetdan pm-suspend.logkosong? :(
pm-suspend.loghilang dan ini berfungsi untuk saya (di iMac saya)
Apa yang Anda gunakan untuk memulai siaga?
Jika Anda dapat menggunakan skrip, maka setelah baris
echo -n "standby" > /proc/acpi/sleep
Anda dapat memiliki garis
echo `date +%s` >> /var/log/wakeups.log
Atau yang serupa. Ini berarti bahwa hal pertama yang dilakukan mesin ketika terbangun adalah menulis waktu dan tanggal saat ini ke file log (n detik sejak zaman).
Maka tail -1 /var/log/wakeups.logakan memberi Anda waktu terakhir. Anda bisa mengurangi ini dari waktu saat ini untuk mendapatkan detik sejak bangun terakhir.
Cari kejadian terakhir dari string "PM: restore of devices complete" di / var / log / messages. Jika mesin Anda sudah terlalu lama, maka log mungkin diputar.
Anda dapat menggunakan tuptime untuk melacak masa mulai sistem / mematikan.
Langkah-langkah yang diperluas menjawab:
grep Awake /var/log/pm-suspend.log | tail -1
Ini akan mendapatkan garis dengan waktu bangun terakhir.
Saya pikir ini adalah cara yang sangat solid untuk melakukannya:
systemd[1]: Started Run anacron jobs at resume
Cari ketika OS memulai anacron, akan terjadi namun mesin dihidupkan
Tidak satu pun dari jawaban ini yang berhasil untuk saya. Tapi saya menemukan sleep.targetyang dibuat untuk ini:
$ journalctl -n4 -u sleep.target
nov. 17 17:16:37 kaa systemd[1]: Reached target Sleep.
nov. 17 18:46:22 kaa systemd[1]: Stopped target Sleep.
nov. 17 19:27:31 kaa systemd[1]: Reached target Sleep.
nov. 17 19:45:21 kaa systemd[1]: Stopped target Sleep.