Saya ingin tahu uptime sejak bangun terakhir dari standby.
Perintah uptime
hanya menunjukkan perbedaan antara waktu saat ini dikurangi waktu startup terakhir.
Saya ingin tahu uptime sejak bangun terakhir dari standby.
Perintah uptime
hanya 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 logrotate
akan "memutar" log untuk mencegahnya tumbuh terlalu besar, sehingga Anda dapat menemukan pm-suspend.log
file kosong . Dalam hal ini, cari saja pm-suspend.log.1
file tersebut (Anda dapat menemukan juga file log lain bernama like pm-suspend.log.2.gz
dan sebagainya; Anda dapat memeriksanya menggunakan zcat
atau zless
).
pm-suspend.log
kosong? :(
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" " -f1
hanya 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
cat
poin 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. :-)
pmset
ditemukan dan tidak ada file seperti pmset
dan pm-suspend.log
kosong? :(
pm-suspend.log
hilang 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.log
akan 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.target
yang 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.