ps:查看系統中的進程,Linux中可以使用ps -aux查看所有進程
參數w表示加寬顯示的命令列,參數w可以寫多次,通常最多寫3次,表示加寬3次,這足以顯示很長的命令列了。例如:ps -auxwww
top:顯示系統記憶體、cpu使用方式,並可自動重新整理進程列表
vmstat:顯示當前的記憶體使用量情況
netstat:顯示網路狀況,使用參數p可以查看對應的進程號及程式名,
通常使用參數a(顯示所有串連情況)和n(不反查網域名稱和服務名),例如:netstat -anp。
查看伺服器偵聽情況,使用:netstat -an | grep LISTEN
查看伺服器已建立的串連,使用:netstat -an | grep ESTABLISHED
ifconfig:查看(或設定)網路裝置資訊
ifconfig -a:查看所有網路設定資訊
last:顯示登入到伺服器的情況以及伺服器重啟情況
df:顯示硬碟空間及使用方式,Linux下可以帶參數h,顯示結果更人性化。例如:
df -h 硬碟空間按人性化顯示
df -k 硬碟空間按KB顯示
df -m 硬碟空間按MB顯示
w:顯示登入到伺服器上的使用者列表
以下幾個命令僅針對Linux
lsof:顯示當前開啟的檔案清單,包括建立的socket串連等。本命令可以用於程式員檢查編寫的程式開啟的檔案數。
sysctl:顯示(或設定)系統核心參數
sysctl -a 顯示所有核心參數
sysctl -w 參數名=參數值
例如:sysctl -w fs.file-max=10240 設定系統允許同時開啟的最大檔案數為10240。
核心參數fs.file-nr包括三個參數值,第一個參數表示系統中曾經同時開啟過的檔案數峰值,
第二個參數表示空閑(分配後已釋放)的檔案數,
第三個參數表示可以開啟的最大檔案數,其值等於fs.file-max。
當前開啟的檔案數 = 第一個參數值 - 第二個參數值
例如:
fs.file-nr = 977 223 10240
當前開啟的檔案數 = 977 - 233 = 744
設定核心參數時務必小心,如果設定不當會導致系統異常,甚至當機。
ulimit:顯示(或設定)使用者可以使用的資源限制
ulimit -a 顯示使用者可以使用的資源限制
ulimit unlimited 不限制使用者可以使用的資源,但本設定對可開啟的最大檔案數(max open files)
和可同時啟動並執行最大進程數(max user processes)無效
ulimit -n <可以同時開啟的檔案數> 設定使用者可以同時開啟的最大檔案數(max open files)
例如:ulimit -n 8192
如果本參數設定過小,對於並發訪問量大的網站,可能會出現too many open files的錯誤
ulimit -u <可以啟動並執行最大並發進程數> 設定使用者可以同時啟動並執行最大進程數(max user processes)
例如:ulimit -u 1024