如何使用VMSTAT命令
vmstat 是Linux 中用於監控系統性能的工具,可查看內存、CPU、IO 和進程狀態。運行vmstat 可輸出系統快照,加參數如vmstat 2 可每2 秒刷新;常用參數包括-s(摘要)、-d(磁盤統計)、-p(分區信息)。輸出分為procs(r、b)、memory(swpd、free、buff、cache)、swap(si、so)、io(bi、bo)、system(in、cs)、cpu(us、sy、id、wa)等字段。實戰中,若r 值大於CPU 核數則可能過載,wa 高表示IO 瓶頸,so 持續不為0 表示內存緊張,bo 高說明寫磁盤頻繁。建議配合top、iostat、free、dmesg 使用以深入分析問題。
vmstat
是Linux 系統中一個常用的性能監控工具,能幫助你快速查看系統的內存、CPU、IO 和進程等關鍵指標。如果你想知道系統當前是負載高還是內存緊張,或者想排查性能瓶頸, vmstat
是個不錯的選擇。
基本用法:啟動和參數說明
使用vmstat
最簡單的方式是在終端直接輸入:
vmstat
它會輸出一組當前系統狀態的快照。如果你想讓它持續輸出信息,可以加上間隔時間和次數參數,例如每2 秒更新一次:
vmstat 2
常見參數如下:
-
vmstat -s
:以摘要形式顯示統計信息。 -
vmstat -d
:查看磁盤相關的統計。 -
vmstat -p /dev/sda1
:查看特定分區的信息(需替換為實際設備名)。
關鍵字段解讀:看懂輸出內容
運行vmstat
後你會看到幾列數據,這些數字分別代表什麼?
大致分為幾個部分:
- procs :r(等待運行的進程數)、b(處於不可中斷睡眠的進程數)
- memory :swpd(使用的虛擬內存)、free(空閒內存)、buff(緩衝區大小)、cache(緩存大小)
- swap :si(從磁盤換入內存的數據量)、so(從內存換出到磁盤的數據量)
- io :bi(塊設備讀入)、bo(塊設備寫出)
- system :in(每秒中斷次數)、cs(上下文切換次數)
- cpu :us(用戶態佔用)、sy(系統態佔用)、id(空閒)、wa(等待IO)
比如如果發現wa
值很高,說明系統在頻繁等待磁盤IO,可能是硬盤性能瓶頸;如果so
持續不為0,可能內存不足,正在頻繁使用交換空間。
實戰場景:如何用vmstat 分析問題
當你懷疑服務器卡頓或響應慢時,可以先運行vmstat 1
實時觀察系統變化:
- 如果r 列經常大於CPU 核心數,說明有進程排隊等待執行,系統可能過載。
- 如果free 很低但cache 較高,這通常是正常現象,Linux 會自動釋放緩存來騰出內存。
- 如果si/so 比較高,說明系統在大量使用swap,這時候應該檢查內存是否不足。
- bi/bo 數值持續偏高,說明磁盤讀寫頻繁,可能需要優化應用或升級存儲設備。
舉個例子,你在跑一個批量導入任務,發現系統明顯變慢。此時運行vmstat 1
,如果bo 飆升,說明寫磁盤壓力大;如果同時wa 也升高,那基本可以判斷是磁盤拖慢了整體性能。
小貼士:配合其他命令一起使用效果更好
雖然vmstat
功能強大,但它只是一個“宏觀”層面的工具。要深入分析問題,建議結合以下命令:
-
top
或htop
:查看具體哪個進程佔用資源高 -
iostat
:更詳細的磁盤IO 情況 -
free
:查看內存和swap 使用情況 -
dmesg
:查看內核日誌,確認是否有OOM(內存溢出)等情況發生
基本上就這些。掌握這幾個常用方法,再配合實際場景靈活使用, vmstat
能幫你快速定位不少系統性能問題。
以上是如何使用VMSTAT命令的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undress AI Tool
免費脫衣圖片

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Linux/macOS的shutdown命令可通過參數實現關機、重啟、定時操作等。 1.立即關機使用sudoshutdownnow或-h/-P參數;2.定時關機用 時間或具體時間點,取消用-c;3.重啟使用-r參數,支持定時重啟;4.注意需sudo權限,遠程操作謹慎,避免數據丟失。

配置NTP服務器的步驟包括安裝服務、修改配置文件、檢查同步狀態及設置防火牆。 1.安裝NTP服務:在Ubuntu/Debian上使用sudoapt,在CentOS/RHEL上使用sudoyum安裝,安裝後啟動並啟用服務;2.修改配置文件/etc/ntp.conf:添加可信的上游服務器如serverntp.aliyun.comiburst和servertime.windows.comiburst,並設置允許訪問的網段如restrict192.168.1.0mask255.255.255.0nomod

想知道當前電腦上的網絡連接,可通過命令行工具查看;Windows上使用netstat-ano查看所有連接及PID,Linux/macOS使用ss-tulnp和lsof-i-P獲取詳細信息,也可通過圖形界面工具如資源監視器、nethogs等實時監控。

創建LVM卷組需先準備物理卷(PV)再創建VG,1.用pvcreate初始化硬盤或分區為PV,如pvcreate/dev/sdb1;2.使用vgcreate命令將一個或多個PV組合成VG,如vgcreatemy_volume_group/dev/sdb1/dev/sdc1;3.可通過-s參數自定義PE大小並用vgdisplay查看信息;4.後續可動態擴展VG,使用vgextend添加新PV;5.刪除VG前需確認無LV,用vgremove刪除。

配置NFS服務器的步驟如下:1.安裝nfs-utils或nfs-kernel-server包;2.啟動並啟用nfs-server及相關RPC服務;3.編輯/etc/exports配置共享目錄及權限,如rw、ro、sync等;4.執行exportfs-a並開放防火牆端口;5.客戶端使用mount命令掛載或配置fstab實現自動掛載;常見問題包括權限控制、ID映射、RPC服務未啟動和配置未刷新,需結合日誌排查。

Linux上加密文件可通過多種方式實現,關鍵在於選對工具。 1.使用GPG可快速加密單個文件,支持對稱與非對稱加密,適合臨時保護文件;2.eCryptfs適合加密整個目錄,通過掛載加密文件夾實現自動加密,適用於保護用戶私有數據;3.創建加密容器結合dd、losetup和cryptsetup工具,打造類似TrueCrypt的加密空間,適合長期存儲敏感信息。每種方法適用不同場景,使用時應注意保存密碼和密鑰以避免數據丟失。

Linux監控涉及多種工具組合,系統性能監控工具包括top/htop實時查看資源使用,vmstat顯示虛擬內存狀態,iostat檢測磁盤IO瓶頸,sar記錄歷史性能數據。日誌監控工具包含journalctl過濾服務日誌,dmesg調試內核問題,logrotate管理日誌生命週期,rsyslog/syslog-ng集中轉發日誌。網絡監控方面,ss/netstat檢查連接狀態,nmap掃描開放端口,tcpdump捕獲流量分析,iftop監控帶寬佔用。遠程監控方案如Nagios實現深度定制告警,Zab

管理環境變量的關鍵在於使用.env文件集中管理、區分不同環境配置、部署時注入變量、避免硬編碼敏感信息。具體做法包括:1.用.env文件存儲變量並按環境區分,如.env.development和.env.production,並加入.gitignore;2.通過NODE_ENV等標識判斷當前環境自動加載對應配置;3.在服務器、Docker或云平台部署時通過系統級方式註入變量提升安全性;4.所有敏感信息必須從環境變量獲取,命名要清晰,可結合加密手段或專用工具管理。
