Linux伺服器作業系統的性能分析我們可以通過指令來檢視詳細資訊。下面由學習啦小編為大家整理了Linux伺服器作業系統檢視指令,希望對大家有幫助!
Linux伺服器作業系統檢視指令
一 、linux伺服器性能檢視
1.1 cpu性能檢視
1、檢視實體cpu個數:
cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l
2、檢視每個實體cpu中的core個數:
cat /proc/cpuinfo |grep "cpu cores"|wc -l
3、邏輯cpu的個數:
cat /proc/cpuinfo |grep "processor"|wc -l
實體cpu個數*核數=邏輯cpu個數(不支援超線程技術的情況下)
1.2 記憶體檢視
1、檢視記憶體使用情況:
#free -m
total used free shared buffers cached
Mem: 3949 2519 1430 0 189 1619
-/+ buffers/cache: 710 3239
Swap: 3576 0 3576
total:記憶體總數
used:已經使用的記憶體數
free:空閑記憶體數
shared:多個程序共享的記憶體總額
- buffers/cache:(已用)的記憶體數,即used-buffers-cached
+ buffers/cache:(可用)的記憶體數,即free+buffers+cached
Buffer Cache用于針對磁盤塊的讀寫;
Page Cache用于針對檔案inode的讀寫,這些Cache能有效地縮短I/O系統調用的時間。
對作業系統來說free/used是系統可用/占用的記憶體;
對應用程式來說-/+ buffers/cache是可用/占用記憶體,因為buffers/cache很快就會被使用。
我們工作時候應該從應用角度來看。
1.3 硬碟檢視
1、檢視硬碟及分區資訊:
fdisk -l
2、檢視檔案系統的磁盤空間占用情況:
df -h
3、檢視硬碟的I/O性能(每隔一秒顯示一次,顯示5次):
iostat -x 1 5
iostat是含在套裝systat中的,可以用yum -y install systat來安裝。
常關注的參數:
如%util接近100%,說明産生的I/O請求太多,I/O系統已經滿負荷,該磁盤可能存在瓶頸。
如idle小于70%,I/O的壓力就比較大了,說明讀取程序中有較多的wait。
4、檢視linux系統中某目錄的大小:
du -sh /root
如發現某個分區空間接近用完,可以進入該分區的挂載點,用以下指令找出占用空間最多的檔案或目錄,然後按照從大到小的順序,找出系統中占用最多空間的前10個檔案或目錄:
du -cksh *|sort -rn|head -n 10
1.4 檢視平均負載
有時候系統響應很慢,但又找不到原因,這時就要檢視平均負載了,看它是否有大量的程序在排隊等待。
最簡單的指令:
uptime--檢視過去的1分鐘、5分鐘和15分鐘内程序隊列中的平均程序數量。
還有動态指令top
我們隻關心以下部分:
top - 21:33:09 up 1:00, 1 user, load average: 0.00, 0.01, 0.05
如果每個邏輯cpu目前的活動程序不大于3,則系統性能良好;
如果每個邏輯cpu目前的活動程序不大于4,表示可以接受;
如果每個邏輯cpu目前的活動程序大于5,則系統性能問題嚴重。
一般計算方法:負載值/邏輯cpu個數
還可以結合vmstat指令來判斷系統是否繁忙,其中:
procs
r:等待運作的程序數。
b:處在非中斷睡眠狀态的程序數。
w:被交換出去的可運作的程序數。
memeory
swpd:虛拟記憶體使用情況,機關為KB。
free:空閑的記憶體,機關為KB。
buff:被用來作為緩存的記憶體數,機關為KB。
swap
si:從磁盤交換到記憶體的交換頁數量,機關為KB。
so:從記憶體交換到磁盤的交換頁數量,機關為KB。
io
bi:發送到塊裝置的塊數,機關為KB。
bo:從塊裝置接受的塊數,機關為KB。
system
in:每秒的中斷數,包括時鐘中斷。
cs:每秒的環境切換次數。
cpu
按cpu的總使用百分比來顯示。
us:cpu使用時間。
sy:cpu系統使用時間。
id:閑置時間。
1.5 其他參數
檢視核心版本号:
uname -a
簡化指令:uname -r
檢視系統是32位還是64位的:
file /sbin/init
檢視發行版:
cat /etc/issue
或lsb_release -a
檢視系統已載入的相關子產品:
lsmod
檢視pci設定:
lspci
二、Linux伺服器作業系統檢視系統資訊
檢視linux伺服器的系統資訊
新接手了幾台linux的伺服器,第一步當然是要了解這些伺服器的軟硬體配置.現在就寫出我這次用的一些指令.
首先當然要取得機器的IP,使用者名和密碼(呵呵,不知道就找原來的管理者要哈)
登陸之後,首先看到的就是機器的名稱,一般提示符就有了,如
[[email protected] root]#
這其中的localhost就是機器名了.如果用指令來檢視的話就是hostname
檢視系統核心
uname –a
檢視作業系統的版本(我現在隻用過redhat,是以隻以這個為例)
cat /etc/redhat-release
檢視網絡配置資訊
ifconfig
輸出如下資訊
eth0 Link encap:Ethernet HWaddr 00:XX:XX:XX:XX:XX
inet addr:10.1.3.101 Bcast:10.1.3.255 Mask:255.255.255.0
……
eth1 Link encap:Ethernet HWaddr 00:XX:XX:XX:XX:XX
inet addr:10.1.2.101 Bcast:10.1.2.255 Mask:255.255.255.0
……..
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
…….
說明目前有三個網卡:eth0,eth1,lo;其中lo的ip是127.0.0.1,是用于測試的虛拟接口.
如果要對每個網卡檢視更詳細的資訊就需要分别檢視其配置檔案
對eth0
執行less /etc/sysconfig/network-scripts/ifcfg-eth0
輸出如下資訊
DEVICE=eth0 裝置名稱
HWADDR=00:XX:XX:XX:XX:XX 實體位址
ONBOOT=yes
TYPE=Ethernet
BOOTPROTO=none
IPADDR=10.1.3.101 ip位址
GATEWAY=10.1.3.1 網關
NETMASK=255.255.255.0 掩碼
對eth1
執行less /etc/sysconfig/network-scripts/ifcfg-eth1,輸出結果與上面類似.
檢視目前打開的服務
chkconfig –list
檢視目前打開的端口
netstat –an
檢視磁盤資訊
fdisk –l
df –h
檢視cpu的資訊
cat /proc/cpuinfo
檢視記憶體資訊
cat /proc/meminfo
檢視闆卡資訊
lspci
cat /proc/pci
檢視目前系統運作情況
ps –aux
top (類似于windows的任務管理器,可以看到目前cpu,記憶體的使用情況)
檢視安裝的一些服務軟體
一般都安裝在/usr/local/下,是以到這個下面去檢視相關的檔案夾即可
對于軟體來講,首先要看的就是它的版本,是以我列出幾個常用軟體檢視版本的指令
PHP:在安裝的bin目錄下執行 ./php –v
MySQL:在安裝的bin目錄下執行 ./mysql –V (注意這個V是大寫)
Apache:在安裝的bin目錄下執行./apachectl -v