5.1-3監控Linux系統狀態
阿新 • • 發佈:2019-03-07
監控Linux系統狀態
檢視系統負載
W命令/uptime命令
- W命令可以檢視系統當前的負載情況
[root@www ~]# w 08:34:03 up 1 min, 1 user, load average: 1.78, 0.73, 0.27 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 192.168.204.1 08:33 3.00s 0.04s 0.02s w
- 第一行顯示的內容為:1,系統時間 2,系統執行時間 3,登入使用者數量 4,平均負載(三個數值,第一個是1分鐘內的平均負載,第二個是5分鐘內的平均負載,第三個是15分鐘內的平均負載) #平均負載是X分鐘平均有多少個程序佔用CPU
- 第二行的內容是下面行的說明:1,登入使用者 2,登入終端 3,登入時間點
- 比較重要的是第一行的load average 的三個數值中的第一個,一般情況下該值越大說明CPU負載越大
- 某一時刻1顆CPU只能有一個程序在使用其資源
- 佔用CPU的程序可以是Running,也可以是waiting
檢視CPU資訊的命令
- cat /proc/cpuinfo #檢視最後一段資訊的processor,如果是3,則為4個。(這裡的個數不是物理CPU個數,比如機器裡面有兩個四核CPU,物理CPU個數為8)
- lscpu
[root@www ~]# lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 1 On-line CPU(s) list: 0 Thread(s) per core: 1 Core(s) per socket: 1 座: 1 NUMA 節點: 1 廠商 ID: GenuineIntel CPU 系列: 6 型號: 42 型號名稱: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz 步進: 7 CPU MHz: 2294.829 BogoMIPS: 4589.65 超管理器廠商: VMware 虛擬化型別: 完全 L1d 快取: 32K L1i 快取: 32K L2 快取: 256K L3 快取: 3072K NUMA 節點0 CPU: 0 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt xsave avx hypervisor lahf_lm epb xsaveopt dtherm arat pln pts
top命令
- top命令動態顯示程序所佔的系統資源 #q退出
[root@www ~]# top
top - 08:53:38 up 21 min, 1 user, load average: 0.00, 0.03, 0.09
Tasks: 97 total, 1 running, 96 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.3 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1005628 total, 726728 free, 132984 used, 145916 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 709128 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
5348 root 20 0 301088 6540 5100 S 0.3 0.7 0:01.79 vmtoolsd
5938 root 20 0 158860 5596 4252 S 0.3 0.6 0:00.34 sshd
1 root 20 0 127892 6504 4140 S 0.0 0.6 0:02.30 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
.....
- top命令執行的結果是動態輸出的,每3秒重新整理一次,它的特點是把佔用系統資源最高的程序放到前面
- RES這一項是程序所佔的記憶體大小
- %mem為使用記憶體大小百分比
- 在top介面按M鍵,使顯示內容按記憶體使用大小排序
- 在top介面按1鍵,來顯示所有CPU的使用情況
- top-bn1可以一次性輸出所有資訊,但是它是靜態的,方便shell指令碼使用
free命令
- free檢視內容和swap使用情況關注最後一列的available,這個數字是真正剩餘的實體記憶體大小
[root@www ~]# free
total used free shared buff/cache available
Mem: 1005628 133060 726464 7636 146104 708944
Swap: 2097148 0 2097148
#available是free的實體記憶體加上buff/cache所剩餘(暫時不使用)的實體記憶體之和
- buffer和cached區別
buffer:這部分記憶體是從CPU產生即將寫入磁盤裡去的那部分資料
cached:這部分記憶體是先從磁盤裡讀出來,然後臨時存到記憶體裡的那部分資料
- free -k/free -h/free -m以不用容量單位顯示內容,預設為k
手動增加swap
[root@www ~]# dd if=/dev/zero of=/bigfile bs=1M count=1000 #建立一個增加1G記憶體容量的檔案
記錄了1000+0 的讀入
記錄了1000+0 的寫出
1048576000位元組(1.0 GB)已複製,18.7426 秒,55.9 MB/秒
[root@www ~]# mkswap /bigfile #格式化為swap格式
正在設定交換空間版本 1,大小 = 1023996 KiB
無標籤,UUID=969ba398-81ac-416d-9453-86443f98630b
[root@www ~]# chmod 600 /bigfile
[root@www ~]# swapon /bigfile 掛載檔案
- 開機自動掛載新增swap
vi /etc/fstab
- 增加以下內容
/bigfile swap swap defaults 0 0