標籤:作業系統;linux;理論知識
一、如何查看伺服器的CPU
判斷依據:
1.具有相同core id的cpu是同一個core的超執行緒。(Physical id and core idare not necessarily consecutive but they are unique. Any cpu with the same coreid are hyperthreads in the same core.)
2.具有相同physical id的cpu是同一顆cpu封裝的線程或者cores。(Anycpu with the same physical id are threads or cores in the same physical socket.)
以自己的惠普DL380G6為例說明:
①物理cpu個數:
[[email protected] ~]# cat /proc/cpuinfo| grep "physical id" | sort | uniq | wc -l
②每個物理cpu中core的個數(即核心數)
[[email protected] ~]# cat/proc/cpuinfo | grep "cpu cores" | uniq
cpu cores : 4
這樣可以推算出自己伺服器的邏輯CPU為物理個數*核心數,如果你的伺服器是server2003,你可以在你的資源管理員裡以圖形化方式看到你的邏輯CPU個數。
二、查看伺服器的記憶體情況
有時候,你運行了許多大的進程,比如你開啟了300個fast-cgi。這時候你感覺系統很慢,便需要查看伺服器的記憶體情況:
[[email protected] ~]# free -m
total used free shared bufferscached
Mem: 249 163 86 0 10 94
-/+ buffers/cache: 58 191
Swap: 511 0 511
參數解釋:
total 記憶體總數
used 已經使用的記憶體數
free 閒置記憶體數
shared 多個進程共用的記憶體總額
buffers Buffer Cache和cachedPage Cache 磁碟緩衝的大小
-buffers/cache (已用)的記憶體數:used -buffers - cached
+buffers/cache(可用)的記憶體數:free +buffers + cached
可用的memory=freememory+buffers+cached
記住,Linux的記憶體使用量管理機制是有多少就用多少(特別是在頻繁存取檔案後),即Linux記憶體不是拿來看的,是拿來用的。
三、伺服器磁碟使用方式
有時感覺硬碟反映很慢,或需要查看日誌所在分區時,下列命令可以查看磁碟的使用方式,很有用:
①查看硬碟分區情況
fdisk –l
②查看當前硬碟使用方式
df –h
③查看硬碟效能
# iostat -x 1 10
Linux 2.6.18-92.el5xen 03/01/2010
avg-cpu: %user%nice %system %iowait %steal %idle
1.10 0.00 4.82 39.54 0.07 54.46
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/savgrq-sz avgqu-sz await svctm %util
sda 0.00 3.50 0.40 2.50 5.60 48.00 18.48 0.00 0.970.97 0.28
sdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sdc 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sdd 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sde 0.00 0.10 0.30 0.20 2.40 2.40 9.60 0.00 1.60 1.60 0.08
sdf 17.40 0.50 102.00 0.20 12095.20 5.60 118.40 0.70 6.81 2.09 21.36
sdg 232.40 1.90 379.70 0.50 76451.20 19.20 201.13 4.94 13.78 2.45 93.16
伺服器的硬體的工作模式設定為RAID1,同時對幾種型號的伺服器作相同檔案的寫操作,
然後各自執行iostat –d,作對比性測試。這樣伺服器的硬碟效能孰優孰劣,一下子就能對比出來。
圖解:
Tps 該裝置每秒I/O傳輸的次數(每秒的I/O請求)
Blk_read/s 表求從該裝置每秒讀的資料區塊數量
Blk_wrth/s 表示從該裝置每秒寫的資料區塊數量
四、查看系統核心
查看系統核心主要為了掌握其版本號碼,為安裝LVS等軟體做準備。
uname –a
五、查看伺服器使用的Linux發行版的名稱、版本號碼及描述資訊等
lsb_release -a
這是我的某台用於SVN實驗的vmware機器情況:
六、查看伺服器的平均負載
感覺到系統壓力較大時用可top或uptime查看下伺服器的平均負載。uptime的另一個用法是查看你的Linux伺服器已經穩定運行多少天沒有重啟了,我這邊的機器最高記錄是360多天。
七、查看系統整體效能情況
如果感覺系統比較繁忙,可以用vmstat查看系統整體效能情況。vmstat不僅僅適應於linux系統,它一樣適用於FreeBSD等unix系統。
vmstat 1 2
如果 r經常大於 4 ,且id經常少於40,表示cpu的負荷很重。
如果pi,po 長期不等於0,表示記憶體不足。
如果disk 經常不等於0, 且在 b中的隊列 大於3, 表示 io效能不好。
八、查看系統已載入的相關模組
Linux作業系統的核心具有模組化的特性,應此在編譯核心時,務須把全部的功能都放入核心。你可以將這些功能編譯成一個個單獨的模組,待需要時再分別載入。比如說在安裝LVS+Keepalived,下列用法被經常用到:
#檢查核心模組,看一下ip_vs是否被載入
lsmod |grep ip_vs
ip_vs 77313 0
如果要查看當前系統的已載入模組,直接lsmod。
九、Linux下尋找PCI設定
有時需要在Linux下尋找PCI設定,可用lspci命令,它可以列出機器中的PCI裝置,比如音效卡、顯卡、Modem、網卡等,主板整合裝置也能列出來。lspci讀取的是hwdata 資料庫。有的小夥可能和我一樣,最關心的還是網卡型號:
[[email protected] ~]# lspci | grep Ethernet
03:00.0 Ethernet controller:Broadcom Corporation NetXtreme II BCM5708 Gigabit Ethernet (rev 12)
07:00.0 Ethernet controller:Broadcom Corporation NetXtreme II BCM5708 Gigabit Ethernet (rev 12)
掌握上面這九條,你對你的Linux伺服器的硬體資訊基本就可以隨時掌控了。
參考: http://os.51cto.com/art/201006/208330.htm
本文出自 “--” 部落格,請務必保留此出處http://57388.blog.51cto.com/47388/1548830
Linux伺服器 -- 硬體篇