Bagaimana menemukan uptime sejak bangun terakhir dari standby

29

Saya ingin tahu uptime sejak bangun terakhir dari standby.

Perintah uptimehanya menunjukkan perbedaan antara waktu saat ini dikurangi waktu startup terakhir.

pengguna debian
sumber

Jawaban:

30

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).

tangga
sumber
ini berhasil bagi saya
Jacek Pietal
5
Bagaimana jika pm-suspend.logkosong? :(
cprn
1
Jika Anda juga peduli tentang menangguhkan stempel waktu, gunakan: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
webbertiger
2
Tidak ada file seperti itu di komputer saya (menjalankan Ubuntu 16.04 LTS)
Ramon Suarez
File hadir hanya jika Anda menginstal pm-suspend. Tapi misalnya Kubuntu pergi ke status ditangguhkan juga setelah saya menutup notebook. Kemudian file pm-suspend kosong.
dmatej
15

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

Ari
sumber
1
Ini bekerja untuk saya di Ubuntu 16.04
raphinesse
Senang mengetahui bahwa kami dapat memeriksa jurnal.
Shiplu Mokaddim
Gunakan journalctl -b 0 -o short-iso MESSAGE="PM: Finishing wakeup." | tail -1 | cut -d" " -f1hanya untuk waktu bangun terakhir
raphinesse
13

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.
dmatej
sumber
1

dimodifikasi jawaban langkah langkah yang lebih baik

grep ': Awake' /var/log/pm-suspend.log

sunting haha ​​terima kasih atas komentarnya: D

Jacek Pietal
sumber
Dan Anda memenangkan penggunaan catpoin yang tidak berguna !
gniourf_gniourf
Tidak ada upvotes untuk penggunaan 'kucing' yang tidak berguna.
Magellan
1

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. :-)

Mike
sumber
1
Bagaimana jika tidak ada perintah yang pmsetditemukan dan tidak ada file seperti pmsetdan pm-suspend.logkosong? :(
cprn
pm-suspend.loghilang dan ini berfungsi untuk saya (di iMac saya)
dayuloli
1
Ini hanya untuk Mac
plaisthos
0

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.

Paul
sumber
0

Cari kejadian terakhir dari string "PM: restore of devices complete" di / var / log / messages. Jika mesin Anda sudah terlalu lama, maka log mungkin diputar.

teika kazura
sumber
0

Anda dapat menggunakan tuptime untuk melacak masa mulai sistem / mematikan.

Rfraile
sumber
Tidak memberikan informasi yang diminta OP.
wieczorek1990
0

Langkah-langkah yang diperluas menjawab:

grep Awake /var/log/pm-suspend.log | tail -1

Ini akan mendapatkan garis dengan waktu bangun terakhir.

thethakuri
sumber
0

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

Jay Day Zee
sumber
0

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.
odinho - Velmont
sumber
-1

pada fedora menggunakan ripgrep

rg Suspend /var/log/messages

hasil:

34338:Jul 26 03:03:46 <hostname> systemd-sleep: Suspending system...
illucent
sumber