在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一文掌握Linux服務器監控命令

dyquk4xk2p3d ? 來源:網絡技術聯盟站 ? 2023-03-26 10:30 ? 次閱讀

1. CPU

cat/proc/cpuinfo
#物理CPU個數
cat/proc/cpuinfo|grep'physicalid'|sort|uniq|wc-l
#每個CPU核心數
cat/proc/cpuinfo|grep'coreid'|sort|uniq|wc-l
#邏輯CPU
cat/proc/cpuinfo|grep'processor'|sort|uniq|wc-l
#mpstat
mpstat
mpstat210

2. 內存

cat/proc/meminfo
free-gt
df-hT
du-csh./*

操作系統 IPC 共享內存/隊列:

ipcs#(shmems,queues,semaphores)

平時我們經常需要監控內存的使用狀態,常用的命令有free、vmstat、top、dstat -m等。

2.1 free

>free-h
totalusedfreesharedbufferscached
Mem:7.7G6.2G1.5G17M33M184M
-/+buffers/cache:6.0G1.7G
Swap:24G581M23G

各行數據含義

第一行Mem:

total:內存總數7.7G,物理內存大小,就是機器實際的內存

used:已使用內存6.2G,這個值包括了cached和應用程序實際使用的內存

free:空閑的內存1.5G,未被使用的內存大小

shared:共享內存的大小,17M

buffers:被緩沖區占用的內存大小,33M

cached:被緩存占用的內存大小,184M

其中有:

total=used+free

第二行-/+ buffers/cache,代表應用程序實際使用的內存

前一個值表示used - buffers/cached,表示應用程序實際使用的內存

后一個值表示free + buffers/cached,表示理論上都可以被使用的內存

可以看到,這兩個值加起來也是total

第三行swap,代表交換分區的使用情況:總量、使用的和未使用的

緩存 cache

cache代表緩存,當系統讀取文件時,會先把數據從硬盤讀到內存里,因為硬盤比內存慢很多,所以這個過程會很耗時。

為了提高效率,Linux 會把讀進來的文件在內存中緩存下來(局部性原理),即使程序結束,cache 也不會被自動釋放。因此,當有程序進行大量的讀文件操作時,就會發現內存使用率升高了。

當其他程序需要使用內存時,Linux 會根據自己的緩存策略(例如 LRU)將這些沒人使用的 cache 釋放掉,給其他程序使用,當然也可以手動釋放緩存:

echo1>/proc/sys/vm/drop_caches

緩沖區 buffer

考慮內存寫文件到硬盤的場景,因為硬盤太慢了,如果內存要等待數據寫完了之后才繼續后面的操作,效率會非常低,也會影響程序的運行速度,所以就有了緩沖區buffer。

當內存需要寫數據到硬盤中時會先放到 buffer 里面,內存很快把數據寫到 buffer 中,可以繼續其他工作,而硬盤可以在后臺慢慢讀出 buffer 中的數據并保存起來,這樣就提高了讀寫的效率。

例如把電腦中的文件拷貝到 U 盤時,如果文件特別大,有時會出現這樣的情況:明明看到文件已經拷貝完,但系統還是會提示 U 盤正在使用中。這就是 buffer 的原因:拷貝程序雖然已經把數據放到 buffer 中,但是還沒有全部寫入到 U 盤中

同樣的,可以使用sync命令來手動flush buffer中的內容:

>sync--help

Usage:sync[OPTION][FILE]...
Synchronizecachedwritestopersistentstorage

Ifoneormorefilesarespecified,synconlythem,
ortheircontainingfilesystems.

-d,--datasynconlyfiledata,nounneededmetadata
-f,--file-systemsyncthefilesystemsthatcontainthefiles
--helpdisplaythishelpandexit
--versionoutputversioninformationandexit

GNUcoreutilsonlinehelp:
Fulldocumentationat:
oravailablelocallyvia:info'(coreutils)syncinvocation'

交換分區 swap

交換分區swap是實現虛擬內存的重要概念。swap就是把硬盤上的一部分空間當作內存來使用,正在運行的程序會使用物理內存,把未使用的內存放到硬盤,叫做swap out。而把硬盤交換分區中的內存重新放到物理內存中,叫做swap in。

交換分區可以在邏輯上擴大內存空間,但是也會拖慢系統速度,因為硬盤的讀寫速度很慢。Linux 系統會將不經常使用的內存放到交換分區中。

cache 和 buffer 的區別

cache:作為page cache的內存,是文件系統的緩存,在文件層面上的數據會緩存到page cache中

buffer:作為buffer cache的內存,是磁盤塊的緩存,直接對磁盤進行操作的數據會緩存到 buffer cache 中

簡單來說:page cache用來緩存文件數據,buffer cache用來緩存磁盤數據。在有文件系統的情況下,對文件操作,那么數據會緩存到page cache中。如果直接采用dd等工具對磁盤進行讀寫,那么數據會緩存到buffer cache中。

2.2 vmstat

vmstat (Virtual Memory Statics,虛擬內存統計) 是對系統的整體情況進行統計,包括內核進程、虛擬內存、磁盤、中斷CPU 活動的統計信息

>vmstat--help

Usage:
vmstat[options][delay[count]]

Options:
-a,--activeactive/inactivememory
-f,--forksnumberofforkssinceboot
-m,--slabsslabinfo
-n,--one-headerdonotredisplayheader
-s,--statseventcounterstatistics
-d,--diskdiskstatistics
-D,--disk-sumsummarizediskstatistics
-p,--partitionpartitionspecificstatistics
-S,--unitdefinedisplayunit
-w,--widewideoutput
-t,--timestampshowtimestamp

-h,--helpdisplaythishelpandexit
-V,--versionoutputversioninformationandexit
來源|公眾號:網絡技術干貨圈
Formoredetailsseevmstat(8).

>vmstat-SM1100#1表示刷新間隔(秒),100表示打印次數,單位MB

procs-----------memory-------------swap-------io-----system--------cpu-----
rbswpdfreebuffcachesisobiboincsussyidwast
1004701881154000430009900
00047018811540000112231119800
00047018811540000911760010000
00047018811540000118229109900
00047018811540000781560010000
00047018811540006484186019720

procs

r列:表示運行和等待 CPU 時間片的進程數,這個值如果長期大于 CPU 個數,就說明 CPU 資源不足,可以考慮增加 CPU

b列:表示在等待資源的進程數,例如正在等待 I/O 或者內存交換

memory

swpn列:表示切換到交換分區的內存大小,如果swpd的值不為 0 或者比較大,且si、so的值長期為 0,那么這種情況暫時不會影響系統性能

free列:當前空閑的物理內存大小

buff列:表示buffers cache的內存大小,一般對塊設備的讀寫才需要緩沖

cache列:表示page cache的內存大小,一般作為文件系統的緩存,頻繁訪問的文件都會被 cached。如果 cache 值比較大,就說明 cached 文件數量較多。如果此時 I/O 中的bi比較小,就說明文件系統效率比較好

swap

si列:表示swap in,即內存由交換分區放入物理內存中

so列:表示swap out,即將未使用的內存放到硬盤的交換分區中

io

bi列:表示從塊設備讀取的數據總量,即讀磁盤,單位KB/s

bo列:表示寫入塊設備的數據總量,即寫磁盤,單位KB/s

這里設置的bi+bo參考值為1000,如果超過1000,且wa值比較大,則表示系統磁盤 I/O 性能瓶頸

system

in列:表示在某一時間間隔中觀察到的每秒設備中斷數

cs列:表示每秒產生的上下文切換次數

上面這兩個值越大,內核消耗的 CPU 時間就越多

cpu

us列:表示用戶進程消耗 CPU 的時間百分比。us值比較高時,說明用戶進程消耗的 CPU 時間多,如果長期大于 50%,可以考慮優化程序

sy列:表示內核進程消耗 CPU 的時間百分比。sy值比較高時,說明內核消耗的 CPU 時間多,如果us+sy超過 80%,就說明 CPU 資源存在不足

id列:表示 CPU 處在空閑狀態的時間百分比

wa列:表示 I/O Wait 所占 CPU 的時間百分比。wa值越高,說明 I/O Wait 越嚴重。如果wa值超過 20%,說明 I/O Wait 嚴重

st列:表示 CPU Steal Time,針對虛擬機

3. 網絡

3.1 接口

ifconfig
iftop
ethtool

3.2 端口

#端口
netstat-ntlp#TCP
netstat-nulp#UDP
netstat-nxlp#UNIX
netstat-nalp#不僅展示監聽端口,還展示其他階段的連接
lsof-p-P
lsof-i:5900
sar-nDEV1#網絡流量
ss
ss-s

3.3 tcpdump

sudotcpdump-ianyudpport20112andip[0x1f:02]=0x4e91-XNnvvv
sudotcpdump-iany-XNnvvv
sudotcpdump-ianyudp-XNnvvv
sudotcpdump-ianyudpport20112-XNnvvv
sudotcpdump-ianyudpport20112andip[0x1f:02]=0x4e91-XNnvvv

3.4 nethogs

監控各進程的網絡流量

nethogs

4. I/O 性能

iotop
iostat
iostat-kx2
vmstat-SM
vmstat210
dstat
dstat--top-io--top-bio

5. 進程

top
top-H
htop
psauxf
ps-eLf#展示線程
ls/proc//task

5.1 top

例如最常用的top命令:

HelpforInteractiveCommands-procpsversion3.2.8
Window1CumulativemodeOff.System:Delay3.0secs;SecuremodeOff.

Z,BGlobal:'Z'changecolormappings;'B'disable/enablebold
l,t,mToggleSummaries:'l'loadavg;'t'task/cpustats;'m'meminfo
1,IToggleSMPview:'1'single/separatestates;'I'Irix/Solarismode

f,o.Fields/Columns:'f'addorremove;'o'changedisplayorder
ForO.Selectsortfield
<,>.Movesortfield:'<'?next?col?left;?'>'nextcolright
R,H.Toggle:'R'normal/reversesort;'H'showthreads
c,i,S.Toggle:'c'cmdname/line;'i'idletasks;'S'cumulativetime
x,y.Togglehighlights:'x'sortfield;'y'runningtasks
z,b.Toggle:'z'color/mono;'b'bold/reverse(onlyif'x'or'y')
u.Showspecificuseronly
nor#.Setmaximumtasksdisplayed

k,rManipulatetasks:'k'kill;'r'renice
dorsSetupdateinterval
WWriteconfigurationfile
qQuit
(commandsshownwith'.'requireavisibletaskdisplaywindow)
Press'h'or'?'forhelpwithWindows,
anyotherkeytocontinue

1: 顯示各個 CPU 的使用情況

c: 顯示進程完整路徑

H: 顯示線程

P: 排序 - CPU 使用率

M: 排序 - 內存使用率

R: 倒序

Z: Change color mappings

B: Disable/enable bold

l: Toggle load avg

t: Toggle task/cpu stats

m: Toggle mem info

us-Timespentinuserspace
sy-Timespentinkernelspace
ni-Timespentrunningniceduserprocesses(Userdefinedpriority)
id-Timespentinidleoperations
wa-TimespentonwaitingonIOperipherals(eg.disk)
hi-Timespenthandlinghardwareinterruptroutines.(WheneveraperipheralunitwantattentionformtheCPU,itliterallypullsaline,tosignaltheCPUtoserviceit)
來源|公眾號:網絡技術干貨圈
si-Timespenthandlingsoftwareinterruptroutines.(apieceofcode,callsaninterruptroutine...)
st-Timespentoninvoluntarywaitsbyvirtualcpuwhilehypervisorisservicinganotherprocessor(stolenfromavirtualmachine)

5.2 lsof

lsof-P-p123

6. 性能測試

stress--cpu8
--io4
--vm2
--vm-bytes128M
--timeout60s

time命令

7. 用戶

w
whoami

8. 系統狀態

uptime
htop
vmstat
mpstat
dstat

9. 硬件設備

lspci
lscpu
lsblk
lsblk-fm#顯示文件系統、權限
lshw-cdisplay
dmidecode

10. 文件系統

#掛載
mount
umount
cat/etc/fstab
#LVM
pvdisplay
pvs
lvdisplay
lvs
vgdisplay
vgs
df-hT
lsof

11. 內核、中斷

cat/proc/modules
sysctl-a|grep...
cat/proc/interrupts

12. 系統日志、內核日志

dmesg
less/var/log/messages
less/var/log/secure
less/var/log/auth

13. cron 定時任務

crontab-l
crontab-l-unobody
#查看所有用戶的cron
sudofind/var/spool/cron/|sudoxargscat

14. 調試工具

14.1 perf

14.2 strace

strace命令用于打印系統調用、信號

strace-p
strace-p5191-f
strace-etrace=signal-p5191

-etrace=open
-etrace=file
-etrace=process
-etrace=network
-etrace=signal
-etrace=ipc
-etrace=desc
-etrace=memory

14.3 ltrace

ltrace命令用于打印動態鏈接庫訪問:

ltrace-p
ltrace-S#syscall

15. 場景案例

場景 1:連上服務器之后

w#顯示當前登錄的用戶、登錄IP、正在執行的進程等
last#看看最近誰登錄了服務器、服務器重啟時間
uptime#開機時間、登錄用戶、平均負載
history#查看歷史命令

場景 2:/proc 目錄有哪些信息

cat/proc/...

cgroups
cmdline
cpuinfo
crypto
devices
diskstats
filesystems
iomem
ioports
kallsyms
meminfo
modules
partitions
uptime
version
vmstat

場景 3:后臺執行命令

nohup&>[some.log]&

一些命令

#綜合
top
htop
glances
dstat&sar
mpstat
#性能分析
perf
#進程
ps
pstree-p
pgrep
pkill
pidof
Ctrl+z&jobs&fg
#網絡
ip
ifconfig
dig
ping
traceroute
iftop
pingtop
nload
netstat
vnstat
slurm
scp
tcpdump
#磁盤I/O
iotop
iostat
#虛擬機
virt-top
#用戶
w
whoami
#運行時間
uptime
#磁盤
du
df
lsblk
#權限
chown
chmod
#服務
systemctllist-unit-files
#定位
find
locate
#性能測試
time


審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10877

    瀏覽量

    212128
  • Linux
    +關注

    關注

    87

    文章

    11316

    瀏覽量

    209812
  • 服務器
    +關注

    關注

    12

    文章

    9225

    瀏覽量

    85615
  • 內存
    +關注

    關注

    8

    文章

    3034

    瀏覽量

    74132
  • 命令
    +關注

    關注

    5

    文章

    687

    瀏覽量

    22053

原文標題:Linux服務器那么多參數該如何監控,掌握這些Linux監控命令可以早點下班!

文章出處:【微信號:良許Linux,微信公眾號:良許Linux】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    linux服務器和windows服務器

    和適用性。 首先,Linux服務器種基于開源的操作系統,其內核是由許多個人和組織共同開發和維護的。它具有高度的穩定性和安全 性。由于Linux操作系統的開放性,用戶可以根據自己的需
    發表于 02-22 15:46

    linux命令行操作和shell的區別 / 服務器選購!

    hell翻譯成殼的意思,它是包裹在linux內核外層的,個可通過系列的linux命令對操作系統發出相關指令的人機界面。 shell可以通
    發表于 03-27 14:54

    linux服務器性能測試步驟

    linux服務器性能測試-服務器實時【磁盤】監控
    發表于 06-02 06:54

    Linux服務器性能測試及分析命令大全

    Linux服務器性能測試及分析命令大全
    發表于 09-05 15:42 ?12次下載
    <b class='flag-5'>Linux</b><b class='flag-5'>服務器</b>性能測試及分析<b class='flag-5'>命令</b>大全

    詳解Linux服務器的用戶活動和命令

    如果您在管理Linux服務器,最好準備好使用用于檢查用戶活動的多個命令——用戶何時登錄及登錄頻率、屬于哪些用戶組、耗用多少磁盤空間、運行什么命令、占用多少磁盤空間、是否在閱讀郵件等。
    的頭像 發表于 07-03 15:30 ?5961次閱讀

    Linux查看服務器狀態的命令大全

    Linux查看服務器狀態的命令大全
    發表于 07-09 09:34 ?21次下載
    <b class='flag-5'>Linux</b>查看<b class='flag-5'>服務器</b>狀態的<b class='flag-5'>命令</b>大全

    linux的scp命令怎么用_linux的grep命令用法

    linux中,scp命令用于Linux之間復制文件和目錄,即在Linux服務器中將本地的文
    發表于 09-04 15:36 ?4444次閱讀
    <b class='flag-5'>linux</b>的scp<b class='flag-5'>命令</b>怎么用_<b class='flag-5'>linux</b>的grep<b class='flag-5'>命令</b>用法

    排查Linux服務器性能問題工具

    如果你的Linux服務器突然負載暴增,告警短信快發爆你的手機,如何在最短時間內找出Linux性能問題所在?來看Netflix性能工程團隊的這篇博,看它們通過十條
    的頭像 發表于 09-16 09:16 ?906次閱讀

    如何在linux服務器中打開端口

    有時我們可能需要在Linux服務器中打開端口或在Linux服務器的防火墻中啟用端口來運行特定的應用程序。在本文中,小編將帶大家分析下如何在
    的頭像 發表于 10-17 16:22 ?1.2w次閱讀

    分享Linux服務器的安全小貼士

    今天浩道跟大家分享Linux服務器的安全小貼士,讓你維護linux服務器安全上有些方向!
    發表于 01-29 11:27 ?320次閱讀

    如何使用Checkmk監控Linux服務器

    `Checkmk` 是用于監控 Linux 服務器的最常用和用戶友好的應用程序之。它可以檢查與您的 Linux
    的頭像 發表于 02-17 10:46 ?1246次閱讀
    如何使用Checkmk<b class='flag-5'>監控</b><b class='flag-5'>Linux</b><b class='flag-5'>服務器</b>?

    掌握Linux常用命令

    掌握Linux40個命令
    的頭像 發表于 04-03 11:38 ?659次閱讀

    linux查看服務器配置

    如何使用Linux命令和工具來查看服務器配置,并提供些附加的相關信息和技巧。 第部分:概述服務器
    的頭像 發表于 11-17 09:41 ?1152次閱讀

    linux服務器開啟端口命令

    Linux服務器開啟端口可以使用多種命令和方法,本文將詳細介紹五種常用的方法,并且提供些實際使用案例來幫助讀者更好地理解和使用這些命令
    的頭像 發表于 11-17 10:29 ?1.1w次閱讀

    如何優化Linux服務器的性能

    優化Linux服務器的性能是個綜合性的任務,涉及硬件、軟件、配置、監控等多個方面。以下是個詳細的指南,旨在幫助系統管理員和運維人員提升
    的頭像 發表于 09-29 16:50 ?330次閱讀
    主站蜘蛛池模板: 一本到中文字幕高清不卡在线| 18毛片| 日韩怡红院| 天天爽夜夜爽人人爽| 成人ww| 夜夜做日日做夜夜爽| 午夜影吧| 日夜夜操| 一级特色黄大片| 夜色爽爽| 免费鲁丝片一级观看| 天天综合久久| 色综合色综合色综合网址| 男女一级大黄| 男人日女人的网站| 欧美一卡2卡三卡四卡五卡 | 国产日韩三级| 最新国产精品视频免费看| 日韩一级片在线播放| 午夜黄色小视频| dvd碟片色爱| 好黄好硬好爽好刺激| 大尺度很肉污的古代小说| 四虎国产精品影库永久免费 | 激情五月社区| 色综合天天综一个色天天综合网| 欧美成人看片一区二区三区| 国产看色免费| 手机看片欧美日韩| 手机看片福利在线| a看片| chinese国产一区二区| 色欧美色图| 国产五月婷婷| 人人干人人干| 亚洲 丝袜 制服 欧美 另类| 亚洲欧美在线视频免费| 亚洲狠狠综合久久| 天堂伊人| 日韩一级一片| 国模吧|