Linux
機器總執行時間
有沒有辦法從 BIOS 或 CPU 讀取 linux 系統的總執行時間?
我已經通過 dmidecode 搜尋了 BIOS 資訊。但它給出的發布日期不適合我的問題。
然後我檢查了
/proc
。但它僅保留上次重新啟動後的正常執行時間值。也許,為每次啟動編寫這些正常執行時間值可能是一種選擇。然後我檢查了
dumpe2fs
。它給出了特定硬碟驅動器的總執行時間。這對我來說沒用,因為我的應用程序執行時可以更改硬碟。除了上述這些,我如何讀取或計算我的系統的總執行時間?我可以從哪裡閱讀?
據我所知,這不是韌體跟踪的內容。甚至 BMC 也不測量總正常執行時間。
這對以前引導的過去正常執行時間沒有幫助,但您現在可以開始記錄正常執行時間,方法是安裝諸如此類的工具
uptimed
並對其進行設置,使其永遠不會丟棄值(LOG_MAXIMUM_ENTRIES
在 中設置為 0uptimed.conf
)。這將測量作業系統的正常執行時間,而不是 CPU “開啟”時間,但它應該足夠接近……一旦你開始uptimed
執行,你可以執行uprecords
以查看總數,例如up 1492 days, 02:57:18 | since Sat Sep 7 00:50:06 2013 down 61 days, 08:11:24 | since Sat Sep 7 00:50:06 2013 %up 96.051 | since Sat Sep 7 00:50:06 2013
正如quixotic所指出的,您可以通過查看日誌來了解歷史正常執行時間。如果您正在執行 systemd,您可以查看已使用
journalctl --list-boots
. 日誌輪換意味著這可能會錯過相當多的正常執行時間。正如JdeBP所指出的,
last reboot
可能會為您提供更長的靴子列表以及相關的正常執行時間。