1、 w, uptimephp
命令w, uptimelinux
[root@linux2 ~]# w 04:02:31 up 1 day, 8:25, 1 user, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 192.168.21.103 23:38 0.00s 0.47s 0.13s w
system load averages :單位時間段內活動的進程數 shell
第一組數字:表示的是最近1分鐘的平均負載,這個數字若是大於CPU的核數,那麼久說明資源不夠了bash
第二字數字:表示的是最近5分鐘平均負載服務器
第三組數字:表示的是最近15分鐘的平均負載 網絡
ab -n 10000 -c 100 'http://www.ypl.cc/forum.php'多線程
意思就同時100我的去訪問這個圖片,一共持續10000次併發
-n:請求多少次socket
-c:併發多少ide
查看cpu的個數和核數
cat /proc/cpuinfo
cat /proc/cpuinfo |grep 'core id'
查看CPU模擬線程
uptime :顯示系統總共運行了多長時間和系統的平均負載
2、vmstat命令
vmstat:顯示虛擬內存的狀態,語法爲vmstat (選項)(參數)
vmstat 1:每1秒鐘顯示一次狀態
vmstat 1 10:每1秒鐘顯示一次,執行10次自動結束
procs:進程相關的
memory:內存相關的
swap:與交換分區相關的
system:與系統相關的
io:硬盤相關的
vmstat各指標含義:
r :表示運行和等待cpu時間片的進程數,若是長期大於服務器cpu的個數,則說明cpu不夠用了;
b :表示等待資源的進程數,好比等待I/O, 內存等,這列的值若是長時間大於1,則須要關注一下了
si :由交換區進入內存的數量;
so :由內存進入交換區的數量;
bi :從塊設備讀取數據的量(讀磁盤);
bo: 從塊設備寫入數據的量(寫磁盤);
in : 每秒的中斷次數,包含時鐘中斷;
cs : 每秒的上下文切換次數;
wa :表示I/O等待所佔用cpu時間百分比.
us:cpu的百分比
3、top命令
用於動態監控進程所佔系統資源,每隔3秒變一次。
這個命令的特色是默認把佔用系統資源(CPU,內存,磁盤IO等)最高的進程放到最前面
[root@linux2 ~]# top top - 09:59:04 up 2 days, 19:55, 1 user, load average: 0.00, 0.00, 0.00 Tasks: 75 total, 1 running, 74 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.1%sy, 0.0%ni, 99.7%id, 0.1%wa, 0.0%hi, 0.1%si, 0.0%st Mem: 1012568k total, 346700k used, 665868k free, 40664k buffers Swap: 4194300k total, 0k used, 4194300k free, 199948k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 4552 root 20 0 15036 1132 868 R 1.9 0.1 0:00.02 top 1 root 20 0 19232 1508 1216 S 0.0 0.1 0:03.01 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd 3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 4 root 20 0 0 0 0 S 0.0 0.0 0:01.73 ksoftirqd/0
RES:這一項爲進程所佔內存大小,
%CPU:進程佔用CPU的大小或者說是百分比
%MEM:爲使用內存百分比。在 top狀態下,按 「shift + m」, 能夠按照內存使用大小排序。
按數字 ‘1’ 能夠列出各顆cpu的使用狀態。
top -bn1 :表示非動態打印系統資源使用狀況,能夠用在shell腳本中
top -c :能夠顯示更詳細的信息
RT:實時優先級
4、 sar命令
系統默認沒有安裝這個命令,須要安裝
yum install -y sysstat
網卡流量
sar -n DEV 1
檢查1秒鐘的網卡流量情況
sar -n DEV 1 10
檢查1秒鐘之類的流量情況,連續執行10次
sar -n DEV -f /var/log/sa/sa24
查看第24天的網卡流量歷史
查看歷史負載 sar -q
查看磁盤讀寫 sar -b
5、free命令
free查看系統內存使用狀況
free以k爲單位顯示
free -m以M爲單位
free -g以G爲單位
mem(total):內存總數;
mem(used):已經分配的內存;
mem(free):未分配的內存;
mem(buffers):系統分配但未被使用的buffers;
mem(cached)系統分配但未被使用的cache
buffers/cache(used):實際使用的buffers與cache 總量,也是實際使用的內存; buffers/cache(free):未被使用的buffers與cache和未被分配的內存之和,這就是系統當前實際可用內 存
buffers是即將要被寫入磁盤的,cache是被從磁盤中讀出來的
6、ps 查看系統進程
ps aux / ps -elf
ps aux:列出系統的全部進程
ps -l:只顯示當前用戶下運行在前臺的進程
PID :進程的id,這個id頗有用,在linux中內核管理進程就得靠pid來識別和管理某一個程,好比我想終止某一個進程,則用 ‘kill 進程的pid’ 有時並不能殺掉,則須要加一個-9選項了 kill -9 進程pid
STAT :表示進程的狀態,進程狀態分爲如下幾種
D 不能中斷的進程(一般爲IO)
R 正在運行中的進程
S 已經中斷的進程,系統中大部分進程都是這個狀態
T 已經中止或者暫停的進程,若是咱們正在運行一個命令,好比說 sleep 10 若是咱們按一下ctrl -z 讓他暫停,那麼咱們用ps查看就會顯示T這個狀態
X 已經死掉的進程(這個歷來不會出現)
Z 殭屍進程,殺不掉,打不死的垃圾進程,佔系統一小點資源,不過沒有關係。若是太多,就有問題 了。
< 高優先級進程
N 低優先級進程
L 在內存中被鎖了內存分頁
s 主進程
l 多線程進程
+ 在前臺的進程
pstree 樹形顯示全部進程
netstat 查看網絡情況
netstat -lnp 查看當前系統開啓的端口以及socket
netstat -an 查看當前系統全部的鏈接