使用uptimed命令監(jiān)視Linux系統(tǒng)正常運行時間
時間:2021-09-07 11:27:34
手機看文章
掃描二維碼
隨時隨地手機看文章
[導讀]大家好,我是良許。作為一名合格的Linux運維人員,監(jiān)視系統(tǒng)的正常運行時間可以說是一門基本功了。今天這篇文章就為大家分享一個用于記錄和跟蹤系統(tǒng)的運行時間的實用命令行工具,它的名字叫做uptimed。之所以推薦uptimed,主要是因為它能在記錄和跟蹤系統(tǒng)的運行時間之余,還能將這些...
大家好,我是良許。作為一名合格的 Linux 運維人員,監(jiān)視系統(tǒng)的正常運行時間可以說是一門基本功了。今天這篇文章就為大家分享一個用于記錄和跟蹤系統(tǒng)的運行時間的實用命令行工具,它的名字叫做
這里的
uptimed
。之所以推薦 uptimed
,主要是因為它能在記錄和跟蹤系統(tǒng)的運行時間之余,還能將這些歷史記錄以摘要的形式直截了當?shù)卣故窘o用戶,比如你的系統(tǒng)已經(jīng)運行多長時間了?最長的運行時間記錄是多少?系統(tǒng)又是何時重啟的?等等,而且它也比較容易上手。下面就簡單來了解一下 uptimed
的安裝和使用吧。安裝uptimed工具
目前主流的 Linux 發(fā)行版的官方存軟件庫中已經(jīng)提供了uptimed
。在 Arch Linux 上安裝:$?sudo?pacman?-S?uptimed
在 Debian,Ubuntu,Linux Mint 上安裝:$?sudo?apt-get?install?uptimed
在 Ubuntu 及其衍生版本上安裝前請確保添加了 universe 存儲庫,沒有的話請運行以下命令添加:$?sudo?add-apt-repository?universe
在 Fedora 上安裝:$?sudo?dnf?install?uptimed
在 CentOS 7 上安裝:因為 CentOS 7 的默認存儲庫中沒有 uptimed
,所以要先添加 EPEL 存儲庫:$?sudo?yum?install?epel-release
然后運行以下命令安裝:$?sudo?yum?install?uptimed
手動安裝:對于其他 Linux 系統(tǒng),或者上述方法安裝失敗的,可以從發(fā)行版頁面下載源碼,然后手動編譯安裝:#?wget?https://github.com/rpodgorny/uptimed/archive/v0.4.2.zip?-O?uptimed.zip
#?unzip?uptimed.zip
#?cd?uptimed-0.4.2/
#?./configure
# make
#?make?install
安裝完成后,啟用并啟動服務:#?systemctl?enable?uptimed
#?systemctl?start?uptimed
檢查服務的啟動狀態(tài):#?systemctl?status?uptimed
●?uptimed.service?-?Uptime?record?tracking?daemon
???Loaded:?loaded?(/usr/lib/systemd/system/uptimed.service;?disabled;?vendor?preset:?disabled)
???Active:?active?(running)?since?Tue?2020-02-11?14:21:12?IST;?1s?ago
?????Docs:?man:uptimed(8)
???????????man:uprecords(1)
?Main?PID:?1435?(uptimed)
???Status:?"Next?milestone?(five?days)?at?Sun?Feb?16?14:13:59?2020"
???CGroup:?/system.slice/uptimed.service
???????????└─1435?/usr/sbin/uptimed?-f
Feb?11?14:21:12?server.ostechnix.local?systemd[1]:?Starting?Uptime?record?tracking?daemon...
Feb?11?14:21:12?server.ostechnix.local?systemd[1]:?Started?Uptime?record?tracking?daemon.
這樣,前期的安裝工作就算完成了。使用uptimed工具
安裝完成uptimed
工具之后,運行 uprecords
命令就能顯示系統(tǒng)運行時間的歷史摘要了:#?uprecords
輸出的摘要結果:????#???????????????Uptime?|?System?????????????????????????????????????Boot?up
---------------------------- ---------------------------------------------------
?????1?????0?days,?02:35:51?|?Linux?3.10.0-1062.1.1.el??Tue?Feb?11?14:22:33?2020
?????2?????0?days,?00:07:27?|?Linux?3.10.0-1062.1.1.el??Tue?Feb?11?14:13:59?2020
->???3?????0?days,?00:02:11?|?Linux?3.10.0-1062.1.1.el??Tue?Feb?11?17:02:29?2020
---------------------------- ---------------------------------------------------
1up?in?????0?days,?00:05:17?|?at????????????????????????Tue?Feb?11?17:09:56?2020
no1?in?????0?days,?02:33:41?|?at????????????????????????Tue?Feb?11?19:38:20?2020
????up?????0?days,?02:45:29?|?since?????????????????????Tue?Feb?11?14:13:59?2020
??down?????0?days,?00:05:12?|?since?????????????????????Tue?Feb?11?14:13:59?2020
???%up???????????????96.953?|?since?????????????????????Tue?Feb?11?14:13:59?2020
->
符號表示定位到了系統(tǒng)最近的一次啟動時間。使用 -b
按啟動時間正序輸出:#?uprecords?-b
?????#???????????????Uptime?|?System?????????????????????????????????????Boot?up
---------------------------- ---------------------------------------------------
?????1?????0?days,?00:07:27?|?Linux?3.10.0-1062.1.1.el??Tue?Feb?11?14:13:59?2020
?????2?????0?days,?02:35:51?|?Linux?3.10.0-1062.1.1.el??Tue?Feb?11?14:22:33?2020
->???3?????0?days,?00:30:14?|?Linux?3.10.0-1062.1.1.el??Tue?Feb?11?17:02:29?2020
使用 -B
按啟動時間倒序輸出:#?uprecords?-B
?????#???????????????Uptime?|?System?????????????????????????????????????Boot?up
---------------------------- ---------------------------------------------------
->???1?????0?days,?00:14:51?|?Linux?3.10.0-1062.1.1.el??Tue?Feb?11?17:02:29?2020
?????2?????0?days,?02:35:51?|?Linux?3.10.0-1062.1.1.el??Tue?Feb?11?14:22:33?2020
?????3?????0?days,?00:07:27?|?Linux?3.10.0-1062.1.1.el??Tue?Feb?11?14:13:59?2020
使用 -m
自定義輸出記錄數(shù):不加參數(shù)的話結果默認輸出前 10 條記錄,想要輸出前 20 條記錄,請運行:#?uprecords?-m?20
使用 -w
輸出完整信息:上面的結果中關于 Linux 的內(nèi)核信息是被省略了部分內(nèi)容的,想要輸出完整的內(nèi)核信息請用 -w
進行寬輸出:#?uprecords?-w
?????#???????????????Uptime?|?System?????????????????????????????????????Boot?up
---------------------------- ---------------------------------------------------
?????1?????0?days,?02:35:51?|?Linux?3.10.0-1062.1.1.el7.x86_64??Tue?Feb?11?14:22:33?2020
->???2?????0?days,?00:16:35?|?Linux?3.10.0-1062.1.1.el7.x86_64??Tue?Feb?11?17:02:29?2020
?????3?????0?days,?00:07:27?|?Linux?3.10.0-1062.1.1.el7.x86_64??Tue?Feb?11?14:13:59?2020
---------------------------- ---------------------------------------------------
no1?in?????0?days,?02:19:17?|?at????????????????????????Tue?Feb?11?19:38:21?2020
????up?????0?days,?02:59:53?|?since?????????????????????Tue?Feb?11?14:13:59?2020
??down?????0?days,?00:05:12?|?since?????????????????????Tue?Feb?11?14:13:59?2020
???%up???????????????97.190?|?since?????????????????????Tue?Feb?11?14:13:59?2020
使用 -d
顯示關機時間:-d
可以將上面的內(nèi)核信息替換為關機時間信息:#?uprecords?-d
?????#???????????????Uptime?|????????Last?downtime???????????????????????Boot?up
---------------------------- ---------------------------------------------------
?????1?????0?days,?02:35:51?|?????0?days,?00:01:07??????Tue?Feb?11?14:22:33?2020
->???2?????0?days,?00:13:02?|?????0?days,?00:04:05??????Tue?Feb?11?17:02:29?2020
?????3?????0?days,?00:07:27?|?????0?days,?00:00:00??????Tue?Feb?11?14:13:59?2020
---------------------------- ---------------------------------------------------
no1?in?????0?days,?02:22:50?|?at????????????????????????Tue?Feb?11?19:38:21?2020
????up?????0?days,?02:56:20?|?since?????????????????????Tue?Feb?11?14:13:59?2020
??down?????0?days,?00:05:12?|?since?????????????????????Tue?Feb?11?14:13:59?2020
???%up???????????????97.136?|?since?????????????????????Tue?Feb?11?14:13:59?2020
查看更多的命令選項:#?uprecords?-?
usage:?uprecords?[OPTION]...
??-??????????????this?help
??-a?????????????do?not?print?ansi?codes
??-b?????????????sort?by?boottime
??-B?????????????reverse?sort?by?boottime
??-k?????????????sort?by?sysinfo
??-K?????????????reverse?sort?by?sysinfo
??-d?????????????print?downtime?seen?before?every?uptimes?instead?of?system
??-c?????????????do?not?show?current?entry?if?not?in?top?entries
??-f?????????????run?continously?in?a?loop
??-s?????????????do?not?print?extra?statistics
??-w?????????????wide?output?(more?than?80?cols?per?line)
??-i?INTERVAL????use?INTERVAL?seconds?for?loop?instead?of?5,?implies?-f
??-m?COUNT???????show?a?maximum?of?top?COUNT?entries?instead?of?10
??-M?????????????show?next?milestone
??-v?????????????version?information
好了,這次的分享就到這里了,上面所舉的例子都是日常使用中十分常見的,如果你想要了解更多關于 uptimed
的用法,可以參考它的幫助手冊。$?man?uprecords
希望本文對你有所幫助!