小Q:酸甜苦辣自己嘗,喜怒哀樂自己扛,你就是自己的太陽,無需借别人的光。
==========================================================
今天開始接觸維護伺服器時候的日常管理,當然隻是看了第一階段,總的來說今天的進度稍微慢了點,晚上跟人出去吃了個飯;主要是一些指令去檢視系統裡的一些參數,期間接觸了一些常識,在下一篇再寫。
檢視系統負載: uptime w
檢視cpu狀況 : cat /proc/cpuinfo
系統負載對應 cpu 核數,負載大于核數,負載就偏高了,否則偏低;
cpu 隻能處理自己能接受到的程序,程序太多,會讓他們等待,每個程序有固定執行時間,超過後就被挂起,輪過一圈再繼續執行;
可以了解為:限時打電話的電話亭,一個核對應一個 u,一個程序一個人,排隊打
檢視系統負載: vmstat
vmstat 1 6 :1表示1秒鐘顯示一次,5表示一共顯示5次。也可以不加1或者5
r:在跑這多少程序 b:被阻塞的程序,一般是因為網速或者磁盤io跟不上cpu
swpd:多少資料被交換(kb) si:進入記憶體中的資料量 so:來自記憶體的資料量
bi:了解為讀磁盤 bo:寫磁盤 in:中斷次數 us:占用cpu的百分比
擴充:http://blog.chinaunix.net/uid-22741583-id-3087675.html
動态檢視具體程序:top
cpu% + mem% 重點看,預設cpu使用排序,而 M 或 shift +m 按men%使用排序
使用者态的cpu使用:us 核心态的cpu使用:sy
PR :0~39 NI -20~19 vipT:虛拟記憶體
RES:實體記憶體 SHR:共享記憶體
選項: -bn1 不動态,一次性顯示,用于寫腳本
-c 顯示最後一列使用程序的詳細資訊
-d 1 預設三秒更新一次程序,此選項即設定 1 秒更新一次
檢視PID:ls /proc 每個PID 是一個程序,裡邊包含多個目錄和檔案
擴充:http://www.cnblogs.com/fengyv/archive/2012/07/11/2585666.html
更多的檢視狀态 sar:
檢視系統狀态資訊:不止可以顯示cpu 磁盤 記憶體等資訊,還可以檢視網卡的使用情況,被稱“瑞士×××”
網卡的帶寬以 bite 為機關,而計算機以 Byte(=8bite)為機關;
顯示網卡資訊: sar -n DEV 主要檢視進網口 rxbyt 和出網卡 txbyt ;
檢視洗盤使用: sar -b
檢視cpu使用 : sar -p 或直接 sar
檢視曆史負載: sar -q
安裝: yum install -y sysstat 存放路徑: /var/sa/
可以在每個指令後面加兩列數字,如:sar -p 1 10 表示每秒更新一次,列印十次
擴充:http://blog.chinaunix.net/uid-23177306-id-2531032.html
檢視記憶體 free:
以kb為機關,可以加選項 -m -g
buffer是即将寫入到磁盤裡去的資料暫存的記憶體區域,
cached是從磁盤裡讀出來的資料暫存的記憶體區域。
擴充:http://os.51cto.com/art/201004/193160.htm
檢視程序: ps
ps aux = ps -elf
RSS :表示記憶體使用量 TIME:占用 cpu 多久了
STAT: S 程序在休眠 s 父程序 < 高優先級 N 低優先級
+ 前台運作 L 多線程 R 正在運作 L 被鎖定
x 以被殺死 T 被暫停 D 不可被中斷 Z僵屍程序
擴充:http://www.360doc.com/content/10/0301/14/61497_17201579.shtml
檢視網絡狀态 netstat:
檢視系統目前監聽端口 netstat -lnp
檢視系統網絡連接配接狀況 netstat -an
所謂服務與客戶的通信就是在監聽端口;-an的目的就是為了 cs (client和searve)
監聽端口内容:
rsync 同步資料 sendmail 發送郵件 ngnix web服務 memcached 緩存服務
netstat -an 為了看 tcpip 和 socket,後者是Linux和unix特有的實作通信的軟體
一般過慮檢視某個端口的并發量,如:netstat -an | grep IP:端口 | grep -ic 服務名
根據并發量觀看系統壓力。
擴充:http://www.cnblogs.com/ggjucheng/archive/2012/01/08/2316661.html
網絡協定:http://zhidao.baidu.com/link?url=EhOXK6FAj3Wp8vok8XRqOr95BToJSFRXJVHtzggYa3yd26VCfWH1DWYx68i0r4MGRujdtLIBVs-G0ZDhYJlqCa
抓包工具 tcpdump和tshark:
有時候帶寬突然被跑滿,就需要抓一下包,如果來源IP與目的IP太多,就可能被攻擊了。
安裝: yum install tcpdump
直接 tcpdump 不顯示号,隻顯示域名和端口名等
選項:-c 100 指定抓包數量 -nn 更直覺的顯示包中流向的内容
-i eth0 指定查詢的網卡 -s0 使得包中的内容更完整
-r 1.cap 檢視包中流向内容
包中流向内容:
時間 毫秒數 來源IP(host) 目的IP(host) 狀态 數量······
比如: tcpdump -nn -i eth0 -c 100 tcp port 80 host
192.168.1.12 -w 1.cap
tcp:網絡協定類型 port 80 抓80端口 host IP 指定來源IP
-w 1.cap 将真實内容寫入1.cap;若改為 (> 1.cap)則隻是将流量内容寫進1.cap 後者可用 cat 檢視,前者必須借用軟體來看
安裝抓包工具 tshark:
yum install -y wireshark
更加直覺的檢視包中流向内容的指令如下
tshark -n -t a -R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.requeste.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri"
擴充:http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html
好: http://blog.csdn.net/fengye245/article/details/5507371
常見的問題:
