www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]對于每個系統(tǒng)管理員或網(wǎng)絡(luò)管理員來說,每天要監(jiān)控和調(diào)試 Linux 系統(tǒng)性能問題都是非常困難的工作。我已經(jīng)有5年 Linux 管理員的工作經(jīng)歷,知道如何監(jiān)控系統(tǒng)使其保持正常運行

對于每個系統(tǒng)管理員或網(wǎng)絡(luò)管理員來說,每天要監(jiān)控和調(diào)試 Linux 系統(tǒng)性能問題都是非常困難的工作。我已經(jīng)有5年 Linux 管理員的工作經(jīng)歷,知道如何監(jiān)控系統(tǒng)使其保持正常運行。為此,我們編寫了對于 Linux/Unix 系統(tǒng)管理員非常有用的并且最常用的20個命令行系統(tǒng)監(jiān)視工具。這些命令可以在所有版本的 Linux 下使用去監(jiān)控和查找系統(tǒng)性能的實際原因。這些監(jiān)控命令足夠你選擇適合你的監(jiān)控場景。

1. top —Linux系統(tǒng)進程監(jiān)控

top 命令是性能監(jiān)控程序,它可以在很多 Linux/Unix 版本下使用,并且它也是 Linux 系統(tǒng)管理員經(jīng)常使用的監(jiān)控系統(tǒng)性能的工具。Top 命令可以定期顯示所有正在運行和實際運行并且更新到列表中,它顯示出 CPU 的使用、內(nèi)存的使用、交換內(nèi)存、緩存大小、緩沖區(qū)大小、過程控制、用戶和更多命令。它也會顯示內(nèi)存和 CPU 使用率過高的正在運行的進程。當(dāng)我們對 Linux 系統(tǒng)需要去監(jiān)控和采取正確的行動時,top 命令對于系統(tǒng)管理員是非常有用的。讓我們看下 top 命令的實際操作。

# top

 


2. vmstat — 虛擬內(nèi)存統(tǒng)計

vmstat 命令是用于顯示虛擬內(nèi)存、內(nèi)核線程、磁盤、系統(tǒng)進程、I/O 模塊、中斷、CPU 活躍狀態(tài)等更多信息。在默認(rèn)的情況下,Linux 系統(tǒng)是沒有 vmstat 這個命令的,如果你要使用它,必須安裝一個包名叫 sysstat 的程序包。命令格式常用用法如下:

# vmstat

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----

r b swpd free inact active si so bi bo in cs us sy id wa st

1 0 0 810420 97380 70628 0 0 115 4 89 79 1 6 90 3 0

3. lsof — 打開文件列表

lsof 命令對于很多 Linux/Unix 系統(tǒng)都可以使用,主要以列表的形式顯示打開的文件和進程。

打開的文件主要包括磁盤文件、網(wǎng)絡(luò)套接字、管道、設(shè)備和進程。使用這個命令的主要原因是一個一個盤不能卸載并且顯示文件正在使用或者打開的錯誤信息。這個命令很容易看出哪些文件正在使用。這個命令最常用的格式:

# lsof

COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME

init 1 root cwd DIR 104,2 4096 2 /

init 1 root rtd DIR 104,2 4096 2 /

init 1 root txt REG 104,2 38652 17710339 /sbin/init

init 1 root mem REG 104,2 129900 196453 /lib/ld-2.5.so

init 1 root mem REG 104,2 1693812 196454 /lib/libc-2.5.so

init 1 root mem REG 104,2 20668 196479 /lib/libdl-2.5.so

init 1 root mem REG 104,2 245376 196419 /lib/libsepol.so.1

init 1 root mem REG 104,2 93508 196431 /lib/libselinux.so.1

init 1 root 10u FIFO 0,17 953 /dev/initctl

4. tcpdump — 網(wǎng)絡(luò)數(shù)據(jù)包分析器

tcpdump 是一種使用最廣泛的命令行網(wǎng)絡(luò)數(shù)據(jù)包分析器或數(shù)據(jù)包嗅探程序,主要用于捕獲和過濾 TCP/IP 包收到或者轉(zhuǎn)移在一個網(wǎng)絡(luò)的特定借口信息。它也提供了一個選項參數(shù)去保存將捕獲的包在一個文件中用于以后分析使用,tcpdump 幾乎在所有的 Linux 版本中都是可用的。

# tcpdump -i eth0

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode

listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes

22:08:59.617628 IP tecmint.com.ssh > 115.113.134.3.static-mumbai.vsnl.net.in.28472: P 2532133365:2532133481(116) ack 3561562349 win 9648

22:09:07.653466 IP tecmint.com.ssh > 115.113.134.3.static-mumbai.vsnl.net.in.28472: P 116:232(116) ack 1 win 9648

22:08:59.617916 IP 115.113.134.3.static-mumbai.vsnl.net.in.28472 > tecmint.com.ssh: . ack 116 win 64347

5. netstat — 網(wǎng)絡(luò)統(tǒng)計

netstat 命令是一個監(jiān)控網(wǎng)絡(luò)數(shù)據(jù)包傳入和傳出的統(tǒng)計界面的命令行工具。它對于許多系統(tǒng)管理員去監(jiān)控網(wǎng)絡(luò)性能和解決網(wǎng)絡(luò)相關(guān)問題是一個非常有用的工具。

# tcpdump -i eth0

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode

listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes

22:08:59.617628 IP tecmint.com.ssh > 115.113.134.3.static-mumbai.vsnl.net.in.28472: P 2532133365:2532133481(116) ack 3561562349 win 9648

22:09:07.653466 IP tecmint.com.ssh > 115.113.134.3.static-mumbai.vsnl.net.in.28472: P 116:232(116) ack 1 win 9648

22:08:59.617916 IP 115.113.134.3.static-mumbai.vsnl.net.in.28472 > tecmint.com.ssh: . ack 116 win 64347

6. htop — 進程監(jiān)控

htop 是一個更加先進的交互式的實時監(jiān)控工具。htop 與 top 命令非常相似,但是他有一些非常豐富的功能,如用戶友好界面管理進程、快捷鍵、橫向和縱向進程等更多的。htop 是一個第三方工具并不包括在 Linux 系統(tǒng)中,你需要使用包管理工具進行安裝。

# htop

 


7. iotop — 監(jiān)控 Linux 磁盤 I/O

iotop 也是和 top 和 htop 命令相似,但是它會有一個報告功能去監(jiān)控和顯示實時的磁盤 I/O 輸入和輸出和程序進程。這個工具對于查找精確的高的磁盤讀/寫過程是非常有用的。

# iotop

8. iostat — 輸入/輸出統(tǒng)計

iostat 是收集和展示系統(tǒng)輸入和輸出存儲設(shè)備統(tǒng)計的簡單工具。這個工具通常用于查找存儲設(shè)備性能問題,包括設(shè)備、本地磁盤、例如 NFS 遠程磁盤。

[!--empirenews.page--]

# iostat

Linux 2.6.18-238.9.1.el5 (tecmint.com) 09/13/2012

avg-cpu: %user %nice %system %iowait %steal %idle

2.60 3.65 1.04 4.29 0.00 88.42

Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn

cciss/c0d0 17.79 545.80 256.52 855159769 401914750

cciss/c0d0p1 0.00 0.00 0.00 5459 3518

cciss/c0d0p2 16.45 533.97 245.18 836631746 384153384

cciss/c0d0p3 0.63 5.58 3.97 8737650 6215544

cciss/c0d0p4 0.00 0.00 0.00 8 0

cciss/c0d0p5 0.63 3.79 5.03 5936778 7882528

cciss/c0d0p6 0.08 2.46 2.34 3847771 3659776

9. IPTraf —實時IP局域網(wǎng)監(jiān)控

IPTraf 是一個基于開源的 Linux 系統(tǒng)實時網(wǎng)絡(luò)(IP 網(wǎng)絡(luò))監(jiān)測的工具。它能收集到各種各樣的信息,如通過網(wǎng)絡(luò)對 IP 流量監(jiān)測,包括 TCP 標(biāo)志信息、ICMP 詳細細節(jié)、TCP/UDP 流量故障、TCP 連接的數(shù)據(jù)包和拜恩計數(shù)。并且它還收集 TCP,UDP,ICMP,IP,非 IP,IP 校驗錯誤,界面活性等一般信息和詳細信息的接口統(tǒng)計數(shù)據(jù)。

 

10. Psacct 或者 Acct — 監(jiān)視用戶活動

Psacct 或者 Acct 是用于監(jiān)測每個用戶對系統(tǒng)的活躍狀態(tài)的一個非常有用的工具。在后臺有兩個守護進程在運行,一個是密切關(guān)注系統(tǒng)上每個用戶的整體活動,另一個進程關(guān)注有哪些資源被它們消耗。

這個工具對于系統(tǒng)管理員是非常有用的去跟蹤每個用戶的活動,可以知道用戶正在做什么,發(fā)出了什么樣的命令,占用了多少資源,多長時間活躍在系統(tǒng)上。

11. Monit — 程序和服務(wù)監(jiān)測

這是一個免費的開源的基于 web 程序的自動監(jiān)控和管理系統(tǒng)進程、程序、文件、目錄、權(quán)限、校驗文件系統(tǒng)。它監(jiān)控的服務(wù)包括 Apache、MYSQL、Mail、FTP、Nginx 等等。系統(tǒng)狀態(tài)是可以從命令行或者自己的網(wǎng)絡(luò)接口來查看。

 


12. NetHogs — 監(jiān)視每個進程的網(wǎng)絡(luò)帶寬

NetHogs 是一個開源的漂亮的小程序(類似于 Linux 上面的 top 命令),在您的系統(tǒng)上保持每個進程的網(wǎng)絡(luò)活動狀態(tài)。它也保持了一個程序或者應(yīng)用實時的網(wǎng)絡(luò)流量帶寬使用情況。

 

13. iftop — 網(wǎng)絡(luò)帶寬監(jiān)控

iftop 是另一個基于終端的開源的系統(tǒng)監(jiān)測工具,主要功能是通過你自己系統(tǒng)上的網(wǎng)絡(luò)接口顯示一個經(jīng)常更新的網(wǎng)絡(luò)帶寬利用率的列表(即源主機和目的主機)。iftop 監(jiān)控的是網(wǎng)絡(luò)的使用情況,而 top 監(jiān)控的是 CPU 的使用情況。iftop 監(jiān)視一個選定的接口并且顯示兩臺主機之間當(dāng)前寬帶的使用情況。

 


14. Monitorix — 系統(tǒng)和網(wǎng)絡(luò)監(jiān)控

Monitorix 是一個盡可能多的在 Linux/Unix 上一個輕量級監(jiān)控工具,主要設(shè)計是監(jiān)控正在運行的系統(tǒng)和網(wǎng)絡(luò)資源。它有一個內(nèi)置的 HTTP web 服務(wù)去定期收集系統(tǒng)和網(wǎng)絡(luò)信息并顯示成圖片。它可以監(jiān)視系統(tǒng)的平均負(fù)載使用、內(nèi)存的分配、磁盤驅(qū)動器、系統(tǒng)服務(wù)、網(wǎng)絡(luò)端口、郵件統(tǒng)計(Sendmail、Postfix、Dovecot 等等)、MYSQL 數(shù)據(jù)庫等等更多的服務(wù)。它的主要目的是監(jiān)控整個系統(tǒng)的性能,并且有助于監(jiān)測故障、瓶頸、異?;顒拥葼顩r。

 

15. Arpwatch — 以太網(wǎng)活動監(jiān)控器

Arpwatch是一種用來監(jiān)視 Linux 網(wǎng)絡(luò)的以太網(wǎng)的網(wǎng)絡(luò)流量的地址解析(網(wǎng)絡(luò)地址轉(zhuǎn)換)的一個程序。它一直隨著網(wǎng)絡(luò)時間戳的變化監(jiān)視以太網(wǎng)流量和產(chǎn)生日志的 IP 和 MAC 地址對。當(dāng)一個 IP 地址或 MAC 地址對發(fā)生變化的時候,它會發(fā)送電子郵件通知管理員。

并且它在檢測 ARP 攻擊是非常有用的。

16. Suricata — 網(wǎng)絡(luò)安全監(jiān)控

Suricata 是一個高性能的開源的網(wǎng)絡(luò)安全與入侵檢測與預(yù)防 Linux、FreeBSD、Windows 等操作系統(tǒng)的監(jiān)控工具。它是一個非營利基金 OISF(Open Information Security Foundation)擁有的。

17. VnStat PHP — 監(jiān)測網(wǎng)絡(luò)帶寬

VnStat PHP 是一個 web 前端應(yīng)用最流行的社交工具叫“vnstat”。 VnStat PHP 使用了很好的圖形模式監(jiān)控網(wǎng)絡(luò)流量的使用情況。它顯示了每時、每天、每月的總結(jié)報告中的網(wǎng)絡(luò)流量使用情況。

18. Nagios — 網(wǎng)絡(luò)/服務(wù)器監(jiān)控

Nagios 是一個領(lǐng)先的開源的強大的監(jiān)控系統(tǒng),網(wǎng)絡(luò)/系統(tǒng)管理員在他們影響主要業(yè)務(wù)流程之前識別和解決服務(wù)器相關(guān)的問題。Nagios 可以監(jiān)控遠程 Linux、Windows、開關(guān)、單窗口的路由器和打印機。它能顯示你的網(wǎng)絡(luò)和服務(wù)器關(guān)鍵的告警,有利于在錯誤反生之前幫助你解決問題。

19. Nmon — 監(jiān)控Linux系統(tǒng)性能

Nmon(即奈吉爾性能監(jiān)視器)工具用來監(jiān)視 Linux 系統(tǒng)的所有資源包括:CPU、內(nèi)存、磁盤使用率、網(wǎng)絡(luò)上的進程、NFS、內(nèi)核等等。這個工具有兩個模式:即在線模式和捕捉模式。在線模式適用于實時監(jiān)控,捕捉模式用于存儲輸出為 CSV 格式后的處理。

 

[!--empirenews.page--]

20. Collectl — 一體化性能檢測工具

Collectl 是另一個功能強大的基于命令行的監(jiān)控工具,它可用于收集有關(guān)系統(tǒng)資源的信息,包括 CPU 使用率、內(nèi)存、網(wǎng)絡(luò)、節(jié)點、進程、NFS、TCP 套接等等。

 

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

CPU親和度通過限制進程或線程可以運行的CPU核心集合,使得它們只能在指定的CPU核心上執(zhí)行。這可以減少CPU緩存的失效次數(shù),提高緩存命中率,從而提升系統(tǒng)性能。

關(guān)鍵字: Linux 嵌入式

在Linux系統(tǒng)性能優(yōu)化中,內(nèi)存管理與網(wǎng)絡(luò)連接處理是兩大核心領(lǐng)域。vm.swappiness與net.core.somaxconn作為關(guān)鍵內(nèi)核參數(shù),直接影響系統(tǒng)在高負(fù)載場景下的穩(wěn)定性與響應(yīng)速度。本文通過實戰(zhàn)案例解析這兩個...

關(guān)鍵字: Linux 內(nèi)存管理

對于LLM,我使用b谷歌Gemini的免費層,所以唯一的成本是n8n托管。在使用了n8n Cloud的免費積分后,我決定將其托管在Railway上(5美元/月)。然而,由于n8n是開源的,您可以在自己的服務(wù)器上托管它,而...

關(guān)鍵字: 人工智能 n8n Linux

在Linux系統(tǒng)管理中,權(quán)限控制是安全運維的核心。本文通過解析/etc/sudoers文件配置與組策略的深度應(yīng)用,結(jié)合某金融企業(yè)生產(chǎn)環(huán)境案例(成功攔截98.7%的非法提權(quán)嘗試),揭示精細化權(quán)限管理的關(guān)鍵技術(shù)點,包括命令別...

關(guān)鍵字: Linux 用戶權(quán)限 sudoers文件

Linux內(nèi)核中的信號量(Semaphore)是一種用于資源管理的同步原語,它允許多個進程或線程對共享資源進行訪問控制。信號量的主要作用是限制對共享資源的并發(fā)訪問數(shù)量,從而防止系統(tǒng)過載和數(shù)據(jù)不一致的問題。

關(guān)鍵字: Linux 嵌入式

在云計算與容器化技術(shù)蓬勃發(fā)展的今天,Linux網(wǎng)絡(luò)命名空間(Network Namespace)已成為構(gòu)建輕量級虛擬網(wǎng)絡(luò)的核心組件。某頭部互聯(lián)網(wǎng)企業(yè)通過命名空間技術(shù)將測試環(huán)境資源消耗降低75%,故障隔離效率提升90%。本...

關(guān)鍵字: Linux 云計算

在Linux內(nèi)核4.18+和主流發(fā)行版(RHEL 8/Ubuntu 20.04+)全面轉(zhuǎn)向nftables的背景下,某電商平臺通過遷移將防火墻規(guī)則處理效率提升40%,延遲降低65%。本文基于真實生產(chǎn)環(huán)境案例,詳解從ipt...

關(guān)鍵字: nftables Linux

在Linux設(shè)備驅(qū)動開發(fā)中,等待隊列(Wait Queue)是實現(xiàn)進程睡眠與喚醒的核心機制,它允許進程在資源不可用時主動放棄CPU,進入可中斷睡眠狀態(tài),待資源就緒后再被喚醒。本文通過C語言模型解析等待隊列的實現(xiàn)原理,結(jié)合...

關(guān)鍵字: 驅(qū)動開發(fā) C語言 Linux

在Unix/Linux進程間通信中,管道(pipe)因其簡單高效被廣泛使用,但默認(rèn)的半雙工特性和無同步機制容易導(dǎo)致數(shù)據(jù)競爭。本文通過父子進程雙向通信案例,深入分析互斥鎖與狀態(tài)機在管道同步中的應(yīng)用,實現(xiàn)100%可靠的數(shù)據(jù)傳...

關(guān)鍵字: 管道通信 父子進程 Linux

RTOS :RTOS的核心優(yōu)勢在于其實時性。它采用搶占式調(diào)度策略,確保高優(yōu)先級任務(wù)能夠立即獲得CPU資源,從而在最短時間內(nèi)完成處理。RTOS的實時性是通過嚴(yán)格的時間管理和任務(wù)調(diào)度算法實現(xiàn)的,能夠滿足對時間敏感性要求極高的...

關(guān)鍵字: Linux RTOS
關(guān)閉