linux運維


1. 查看系統內核版本

$cat /etc/issue
Red Hat Enterprise Linux Server release 6.2 (Santiago)
Kernel \r on an \m

顯示了系統名稱(Red Hat Enterprise)和內核版本(release 6.2)

The file /etc/issue is a text file which contains a message or system identification to be printed before the login prompt. 

2. 查看系統信息

dimite@ubuntu:~$ uname -a
Linux ubuntu 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24 21:18:00 UTC 2015 i686 i686 i686 GNU/Linux

uname -a :顯示系統名、節點名稱、操作系統的發行版號、操作系統版本、運行系統的機器 ID 號

3. 查看磁盤空間占用情況

$df -hl
Filesystem            Size  Used Avail Use% Mounted on
/dev/xvda1            100G  5.0G   90G   6% /
tmpfs                 1.9G  104K  1.9G   1% /dev/shm

參數:

  • -h:方便閱讀
  • -a:全部文件系統列表

查看文件、目錄大小

du                 #列出本目錄下,目錄的大小(默認的計數單位是k)
du -h filename     #以更易讀的方式顯示所查文件/目錄的大小
du -sh dirname     #查看目錄dirname的總大小

 sudo du -h --max-depth=1 

4. 查看內存

一、free命令

[root@xen_202_12 /]# free -m
             total       used       free     shared    buffers     cached
Mem:          3072       2459        612          0        207       1803
-/+ buffers/cache:        447       2624
Swap:         1913          0       1913

第2行:

total 內存總數: 3072【注意單位是M,可以用參數-hm更醒目】
used 已經使用的內存數: 2459
free 空閑的內存數: 612
shared 當前已經廢棄不用,總是0
buffers: Buffer Cache內存數: 207
cached: Page Cache內存數: 2803

關系:total = used + free

第3行:
-/+ buffers/cache的意思:
-buffers/cache 的內存數: 447 (等於第1行的 used - buffers - cached)
+buffers/cache 的內存數: 2624 (等於第1行的 free + buffers + cached)
注:此處的內存數在用上面式子計算后,在大小上有一點點出入(還不知道是什么原因)。

小結:-buffers/cache反映的是被程序實實在在吃掉的內存,而+buffers/cache反映的是可以挪用的內存總數

5. 查看cpu內核數

# 總核數 = 物理CPU個數 X 每顆物理CPU的核數 
# 總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核數 X 超線程數

# 查看物理CPU個數
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

# 查看每個物理CPU中core的個數(即核數)
cat /proc/cpuinfo| grep "cpu cores"| uniq

# 查看邏輯CPU的個數
cat /proc/cpuinfo| grep "processor"| wc -l

6. 查看系統負載

dimite@ubuntu:~$ uptime
 15:41:09 up 42 min,  2 users,  load average: 0.08, 0.03, 0.05
  • 當前時間 15:41:09
  • 系統已運行的時間 42min
  • 當前在線用戶 2 user
  • 平均負載:0.54, 0.40, 0.20,最近1分鍾、5分鍾、15分鍾系統的負載

何為系統負載呢?
系統平均負載被定義為在特定時間間隔內運行隊列中的平均進程數目。如果一個進程滿足以下條件則其就會位於運行隊列中:

  • 它沒有在等待I/O操作的結果
  • 它沒有主動進入等待狀態(也就是沒有調用'wait')
  • 沒有被停止(例如:等待終止)

一般來說,每個CPU內核當前活動進程數不大於3,則系統運行表現良好!當然這里說的是每個cpu內核,也就是如果主機是四核cpu的話,那么只要uptime最后輸出的一串字符數值小於12即表示系統負載不是很嚴重.當然如果達到20,那就表示當前系統負載非常嚴重,估計打開執行web腳本非常緩慢.

7. 查看進程

ps -ef 

殺死所有含worker的進程

ps -ef | grep worker | awk '{print $2}' | xargs sudo kill -9

8. 查看端口占用

netstat -anp

 or

netstat -nltup

參數

  • -a (all)顯示所有選項,默認不顯示LISTEN相關
  • -t (tcp)僅顯示tcp相關選項
  • -u (udp)僅顯示udp相關選項
  • -n 拒絕顯示別名,能顯示數字的全部轉化成數字。
  • -l 僅列出有在 Listen (監聽) 的服務狀態
  • -p 顯示建立相關鏈接的程序名
  • -r 顯示路由信息,路由表
  • -e 顯示擴展信息,例如uid等
  • -s 按各個協議進行統計
  • -c 每隔一個固定時間,執行該netstat命令。
  • 提示:LISTEN和LISTENING的狀態只有用-a或者-l才能看到


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM