主頁 > 知識庫 > 如何監(jiān)控 Linux 服務器狀態(tài)的方法

如何監(jiān)控 Linux 服務器狀態(tài)的方法

熱門標簽:地圖標注企業(yè)名稱侵權案件 鶴壁電銷外呼系統(tǒng)怎么安裝 網(wǎng)站上插入地圖標注內容 企業(yè)400電話辦理哪正規(guī) 地圖標注需要現(xiàn)場嗎 重慶營銷外呼系統(tǒng)排名 工廠位置地圖標注 400電話辦理哪家好廠商 繽客網(wǎng)注冊時地圖標注出不來

Linux 服務器我們天天打交道,特別是 Linux 工程師更是如此。為了保證服務器的安全與性能,我們經(jīng)常需要監(jiān)控服務器的一些狀態(tài),以保證工作能順利開展。

本文介紹的幾個命令,不僅僅適用于服務器監(jiān)控,也適用于我們日常情況下的開發(fā)。

1. watch

watch 命令我們的使用頻率很高,它的基本作用是,按照指定頻率重復執(zhí)行某一條指令。使用這個命令,我們可以重復調用一些命令來達到監(jiān)控服務器的作用。

默認情況下,watch 命令的執(zhí)行周期是 2 秒,但我們可以使用 -n 選項來指定運行頻率,比如我們想要每隔 5 秒執(zhí)行 date 命令,可以這么執(zhí)行:

$ watch -n 5 date

一臺服務器肯定有多人在用,特別是本部門的小伙伴。對于這些小伙伴有沒渾水摸魚,我們可以使用一些命令來監(jiān)控他們。

我們可以每隔 10 秒執(zhí)行 who 命令,來看看都有誰在使用服務器。

$ watch -n 10 who
Every 10.0s: who    butterfly: Tue Jan 23 16:02:03 2019

shs :0  2019-01-23 09:45 (:0)
dory pts/0 2019-01-23 15:50 (192.168.0.5)
alvin pts/1 2019-01-23 16:01 (192.168.0.15)
shark pts/3 2019-01-23 11:11 (192.168.0.27)

如果發(fā)現(xiàn)系統(tǒng)運行很慢,我們可以調用 uptime 命令來查看系統(tǒng)平均負載情況。

$ watch uptime
Every 2.0s: uptime    butterfly: Tue Jan 23 16:25:48 2019

 16:25:48 up 22 days, 4:38, 3 users, load average: 1.15, 0.89, 1.02

一些關鍵的進程肯定不能掛,否則可能會影響到業(yè)務開展,所以我們可以重復統(tǒng)計服務器中的所有進程數(shù)量。

$ watch -n 5 'ps -ef | wc -l'
Every 5.0s: ps -ef | wc -l   butterfly: Tue Jan 23 16:11:54 2019

245

想動態(tài)知道服務器內存使用情況,可以重復執(zhí)行 free 命令。

$ watch -n 5 free -m
Every 5.0s: free -m    butterfly: Tue Jan 23 16:34:09 2019

  total used free shared buff/cache available
Mem:  5959  776 3276  12 1906 4878
Swap:  2047  0 2047

當然不僅僅是這些,我們還可以重復調用很多命令來對服務器一些關鍵參數(shù)進行監(jiān)控,

2. top

使用 top 命令我們可以知道系統(tǒng)的很多關鍵參數(shù),而且是動態(tài)更新的。默認情況下,top 監(jiān)控的是系統(tǒng)的整體狀態(tài),如果我們只想知道某個人的使用情況,可以使用 -u 選項來指定這個人。

$ top -u alvin
top - 16:14:33 up 2 days, 4:27, 3 users, load average: 0.00, 0.01, 0.02
Tasks: 199 total, 1 running, 198 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.2 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 5959.4 total, 3277.3 free, 776.4 used, 1905.8 buff/cache
MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 4878.4 avail Mem

 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
23026 alvin 20 0 46340 7820 6504 S 0.0 0.1 0:00.05 systemd
23033 alvin 20 0 149660 3140 72 S 0.0 0.1 0:00.00 (sd-pam)
23125 alvin 20 0 63396 5100 4092 S 0.0 0.1 0:00.00 sshd
23128 alvin 20 0 16836 5636 4284 S 0.0 0.1 0:00.03 zsh

在這個結果里,你不僅僅可以看到 alvin 這個用戶運行的所有的進程數(shù),也可以看到每個進程所消耗的系統(tǒng)資源(CPU,內存),同時依然可以看到整個系統(tǒng)的關鍵參數(shù)。

3. ac

如果你想知道每個用戶登錄服務器所使用的時間,你可以使用 ac 命令。這個命令需要你安裝 acct 包(Debian)或 psacct 包(RHEL,Centos)。

如果我們想知道所有用戶登陸服務器所使用的時間之和,我們可以直接運行 ac 命令,無需任何參數(shù)。

$ ac
        total     1261.72

如果我們想知道各個用戶所使用時間,可以加上 -p 選項。

$ ac -p
 shark    5.24
 alvin    5.52
 shs    1251.00
 total 1261.76

我們還可以通過加上 -d 選項來查看具體每一天用戶使用服務器時間之和。

$ ac -d | tail -10
Jan 11 total 0.05
Jan 12 total 1.36
Jan 13 total 16.39
Jan 15 total 55.33
Jan 16 total 38.02
Jan 17 total 28.51
Jan 19 total 48.66
Jan 20 total 1.37
Jan 22 total 23.48
Today total 9.83

小結

我們可以使用很多命令來監(jiān)控系統(tǒng)的運行狀態(tài),本文主要介紹了三個:watch 命令可以讓你重復執(zhí)行某一條命令來監(jiān)控一些參數(shù)的變化,top 命令可以查看某個用戶運行的進程數(shù)以及消耗的資源,而 ac 命令則可以查看每個用戶使用服務器時間。

到此這篇關于如何監(jiān)控 Linux 服務器狀態(tài)的文章就介紹到這了,更多相關linux 服務器狀態(tài)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

標簽:東莞 棗莊 常州 克拉瑪依 鹽城 日照 渭南 96

巨人網(wǎng)絡通訊聲明:本文標題《如何監(jiān)控 Linux 服務器狀態(tài)的方法》,本文關鍵詞  如何,監(jiān)控,Linux,服務器,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《如何監(jiān)控 Linux 服務器狀態(tài)的方法》相關的同類信息!
  • 本頁收集關于如何監(jiān)控 Linux 服務器狀態(tài)的方法的相關信息資訊供網(wǎng)民參考!
  • 企业400电话

    智能AI客服机器人
    15000

    在线订购

    合计11份范本:公司章程+合伙协议+出资协议+合作协议+股权转让协议+增资扩股协议+股权激励+股东会决议+董事会决议

    推薦文章