linux如何查看系統(tǒng)各項指標命令
linux查看系統(tǒng)各項指標命令
在 Linux 系統(tǒng)中,查看系統(tǒng)各項指標(如 CPU 使用率、內(nèi)存使用、磁盤使用、網(wǎng)絡狀態(tài)等)可以通過以下常用命令來實現(xiàn):
1. 查看 CPU 使用率
top
:
- 實時顯示系統(tǒng)的總體運行狀況,包括 CPU、內(nèi)存使用情況和各個進程的信息。
- 按
1
鍵可以顯示每個 CPU 核心的使用情況。
htop
:
top
的增強版本,提供更友好的界面和更多的功能(需要安裝)。
mpstat
:
- 顯示各個 CPU 的使用情況,通常與
sysstat
工具包一起使用。 - 示例:
mpstat -P ALL 1
顯示每個 CPU 核心每秒的使用情況。
2. 查看內(nèi)存使用情況
free -h
:
- 顯示系統(tǒng)的內(nèi)存使用情況,包括總量、已用、空閑和交換分區(qū)使用情況。
-h
選項表示以人類可讀的格式顯示數(shù)據(jù)(例如:MB、GB)。
vmstat
:
- 顯示系統(tǒng)的內(nèi)存、交換分區(qū)和 CPU 資源的綜合統(tǒng)計信息。
- 示例:
vmstat 1 5
每秒輸出一次系統(tǒng)狀態(tài),持續(xù) 5 秒。
3. 查看磁盤使用情況
df -h
:
- 顯示文件系統(tǒng)的磁盤空間使用情況,包括每個分區(qū)的總容量、已用、可用空間。
-h
選項表示以人類可讀的格式顯示數(shù)據(jù)。
du -sh *
:
- 顯示指定目錄下每個文件或子目錄的磁盤使用情況,總結輸出。
-s
表示總結,-h
表示以人類可讀格式顯示。
iostat
:
- 顯示磁盤設備的 I/O 統(tǒng)計信息,通常與
sysstat
工具包一起使用。 - 示例:
iostat -x 1
每秒顯示一次詳細的 I/O 統(tǒng)計信息。
4. 查看網(wǎng)絡狀態(tài)
ifconfig
或 ip addr
:
- 顯示網(wǎng)絡接口的配置信息
- 包括 IP 地址、子網(wǎng)掩碼等
netstat -tuln
:
- 顯示系統(tǒng)當前打開的端口和監(jiān)聽狀態(tài)
- 包括 TCP 和 UDP 端口
ss -tuln
:
netstat
的更快替代品- 顯示打開的端口和監(jiān)聽狀態(tài)
ping
:
- 檢查網(wǎng)絡連通性。
- 示例:
ping google.com
測試到 Google 的連通性。
traceroute
:
- 跟蹤數(shù)據(jù)包從本地機器到目標地址的路徑。
- 示例:
traceroute google.com
。
5. 查看系統(tǒng)負載
uptime
:
- 顯示系統(tǒng)的運行時間和平均負載(load average)。
top
或 htop
:
- 實時顯示系統(tǒng)負載信息。
sar
:
- 系統(tǒng)活動報告,可以記錄和回放負載數(shù)據(jù),通常與
sysstat
工具包一起使用。
6. 查看進程信息
ps aux
:
- 顯示系統(tǒng)上當前運行的所有進程及其詳細信息。
top
或 htop
:
- 實時顯示系統(tǒng)的進程及其 CPU、內(nèi)存占用情況。
pstree
:
- 以樹狀結構顯示進程及其父子關系。
心得
這些命令提供了關于系統(tǒng)各項指標的全面視圖,是日常運維和問題排查的基本工具。在需要持續(xù)監(jiān)控時,還可以結合 watch
命令來定時刷新命令輸出,例如:watch -n 1 df -h
。
這里有一個順口溜,幫你快速記住用于查看 Linux 系統(tǒng)各項指標的命令:
top
查整體CPU忙,htop
界面更友好;mpstat
核用量,- 各項數(shù)據(jù)看得清。
free
查內(nèi)存,vmstat
更全面;- 磁盤空間
df
亮,du
查看文件行; iostat
查I/O忙,ifconfig
配網(wǎng)絡,netstat
端口全。uptime
查負載,sar
可回放,ps aux
查進程,pstree
父子現(xiàn)。
這些命令一個個,順口溜里記得牢,運維管理少煩惱!
在 Linux 系統(tǒng)中,要查看 Java 程序的運行狀態(tài),可以使用以下幾種常用命令,幫助你判斷 Java 程序是否掛起或正在正常運行:
1. 使用 ps 命令
查看 Java 進程:
使用 ps
命令可以列出當前正在運行的 Java 進程。
示例:ps aux | grep java
輸出示例:
user 1234 0.0 2.1 561234 45123 ? Sl 08:30 0:01 java -jar your-application.jar
這個命令會顯示包含 java
字樣的所有進程。檢查進程的 CPU 和內(nèi)存使用情況(特別是 %CPU
和 %MEM
列),如果它們?yōu)榱闱疫M程長時間沒有任何輸出,程序可能已經(jīng)掛起。
2. 使用 top 或 htop 命令
實時監(jiān)控 Java 進程:
- 運行
top
或htop
命令,然后按下M
鍵可以按內(nèi)存使用排序,或按P
鍵按 CPU 使用排序。 - 在列表中查找
java
進程,觀察其 CPU 和內(nèi)存使用情況。 - 如果發(fā)現(xiàn) Java 進程的 CPU 使用率為 0%,并且內(nèi)存使用穩(wěn)定,可能表明程序處于掛起狀態(tài)。
3. 使用 jps 命令
列出所有 Java 進程:
jps
是 Java 自帶的工具,用于列出當前正在運行的 Java 進程及其主類名。
示例:jps -l
輸出示例:
1234 your.package.MainClass
通過 jps
可以快速確認 Java 應用是否在運行,但它不能直接判斷進程是否掛起。
4. 使用 jstack 命令
查看 Java 線程堆棧:
jstack
可以生成 Java 進程的線程堆棧信息,適用于檢查是否有死鎖或掛起的線程。- 示例:
jstack <pid>
,其中<pid>
是 Java 進程的進程 ID(可以通過ps
或jps
獲取)。 - 檢查輸出,尋找可能的死鎖或線程長時間等待的跡象。
5. 使用 jstat 命令
監(jiān)控 JVM 性能:
jstat
可以監(jiān)控 JVM 的內(nèi)存使用、垃圾回收活動等信息,幫助判斷 Java 應用的健康狀況。- 示例:
jstat -gc <pid>
顯示 GC(垃圾回收)統(tǒng)計信息,幫助分析程序是否由于內(nèi)存問題而掛起。
6. 使用 netstat 命令
檢查 Java 程序的網(wǎng)絡連接:
- 如果 Java 程序涉及網(wǎng)絡通信,可以使用
netstat
查看其網(wǎng)絡連接狀態(tài)。 - 示例:
netstat -anp | grep java
查看與 Java 進程相關的所有網(wǎng)絡連接,確認它們是否正常(如是否存在大量CLOSE_WAIT
狀態(tài)的連接)。
7. 檢查日志
查看 Java 應用的日志:
檢查應用程序的日志文件(如 application.log
或 error.log
),查看是否有錯誤或異常堆棧信息,這往往可以直接指示程序掛起的原因。
心得
要判斷一個 Java 程序是否掛起,可以結合使用 ps
, top/htop
, jps
, jstack
, jstat
等工具,觀察進程的狀態(tài)、CPU 和內(nèi)存使用情況、線程堆棧,以及日志文件中的錯誤信息。這些方法可以幫助你快速確認 Java 程序是否掛起以及可能的原因。
這里有一個順口溜,幫你快速記住用于查看 Linux 上 Java 程序運行狀態(tài)的命令:
ps
查進程grep
找,top
看負載不停跑;jps
列出Java名,jstack
堆棧查異常;jstat
監(jiān)控GC忙,netstat
連通狀態(tài)全;- 查日志看程序故障,
- 綜合分析就不慌!
這個順口溜包含了所有提到的命令,并且順序對應,方便記憶。
總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Linux(ubuntu)下實現(xiàn)增加/刪除文件權限
下面小編就為大家分享一篇Linux(ubuntu)下實現(xiàn)增加/刪除文件權限,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-04-04Linux下利用python實現(xiàn)語音識別詳細教程
早期語音識別系統(tǒng)僅能識別單個講話者以及只有約十幾個單詞的詞匯量?,F(xiàn)代語音識別系統(tǒng)已經(jīng)取得了很大進步,對于 Python 使用者而言,一些語音識別服務可通過 API 在線使用,且其中大部分也提供了 Python SDK,感興趣的小伙伴可以參考閱讀2023-03-03Xshell連接centOS7并與CentOS7聯(lián)網(wǎng)
本文主要介紹了Xshell連接centOS7并與CentOS7聯(lián)網(wǎng),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-08-08