如何快速了解一台Linux系統伺服器

如何快速了解一台Linux系統伺服器

1 人贊了文章

到手一個東西,大到汽車,小到手機,除了知道如何使用之外,進一步了解他們才能更好地發揮出它們的能力。

那麼如何去了解,對於一個人而言我們要去了解他的特長,而對於機器而言,我們要了解的是具體參數,比如汽車我們需要了解它的動力。

對於生物信息工作者而言,Linux系統伺服器最熟悉不過,那麼如何通過簡單的命令對Linux伺服器進行最快的了解。

【存儲空間】df -h

df命令作用是列出文件系統的整體磁碟空間使用情況。可以用來查看磁碟已被使用多少空間和還剩餘多少空間。

而df -h則是以人們易讀的方式展示。

  1. [root@localhost home]# df -h
  2. Filesystem Size Used Avail Use% Mounted on
  3. /dev/mapper/cl-root 50G 36G 15G 71% /
  4. /dev/sda1 1014M 227M 788M 23% /boot
  5. /dev/mapper/cl-home 1.8T 450G 1.4T 25% /home

Filesystem:代表該文件系統時哪個分區,所以列出的是設備名稱。

Mounted on:磁碟掛載的目錄,即該磁碟掛載到了哪個目錄下面。

【內存】 free -h

free命令可以顯示Linux系統中空閑的、已用的物理內存及swap內存,及被內核使用的buffer。

一般用free -h方式查看內存佔用情況(同樣是適於人類閱讀)

  1. [root@localhost home]# free -h
  2. total used free shared buffers cached
  3. Mem: 126G 124G 2.0G 1.6M 626M 118G
  4. -/+ buffers/cache: 4.5G 121G
  5. Swap: 15G 40M 15G

註解:-buffers/cache反映的是被程序實實在在吃掉的內存(本例中,-buffers/cache的內存數是4.5G,即等於Mem行的 used- buffers - cached),而+buffers/cache反映的是可以挪用的內存總數(本例中,+buffers/cache的內存數是121G,即等於Mem行的free + buffers + cached)。

Swap行數據是交換分區SWAP的,也就是我們通常所說的虛擬內存。當你看見 buffer/cache 的空閑空間低或者 swap 的空閑空間低,說明內存需要升級了。這意味這內存利用率很高。請注意 shared(共享)內存列應該被忽略 ,因為它已經被廢棄了。

Buffer的核心作用是用來緩衝,緩和衝擊。比如你每秒要寫100次硬碟,對系統衝擊很大,浪費了大量時間在忙著處理開始寫和結束寫這兩件事嘛。用個buffer暫存起來,變成每10秒寫一次硬碟,對系統的衝擊就很小,寫入效率高了。Cache的核心作用是加快取用的速度。比如你一個很複雜的計算做完了,下次還要用結果,就把結果放手邊一個好拿的地方存著,下次不用再算了。加快了數據取用的速度。所以,如果你注意關心過存儲系統的話,你會發現硬碟的讀寫緩衝/緩存名稱是不一樣的,叫write-buffer和read-cache。很明顯地說出了兩者的區別。

【CPU】 cat /proc/cpuinfo

利用cat查看伺服器cpu info

  1. [root@localhost home]# cat /proc/cpuinfo|grep "processor" |wc -l
  2. 32
  3. [root@localhost home]# cat /proc/cpuinfo|grep "physical id" |sort|uniq|wc -l
  4. 4
  5. [root@localhost home]# cat /proc/cpuinfo|grep "cpu cores" |uniq
  6. cpu cores : 8

註解:以上三個命令從上自下分別代表①總邏輯CPU數:32;②物理CPU個數:4,這邊如果是2就代表著是兩路伺服器,4則是四路伺服器;③每顆物理CPU的核數:8。總邏輯CPU數=物理CPU個數×每顆物理CPU的核數。如果存在超線程技術,那麼可以讓單核模擬多核心工作,單核心具有兩個線程。那麼,總邏輯CPU數 = 物理CPU個數×每顆物理CPU的核數×超線程數。

【內核|操作系統】

查看內核版本 cat /proc/version | uname -a

查看操作系統 lsb_release -a | cat /etc/redhat-release | cat /etc/issue

  1. [root@tc6000 EVM_combine]# cat /proc/version
  2. Linux version 2.6.32-642.el6.x86_64 (mockbuild@worker1.bsys.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC) ) #1 SMP Tue May 10 17:27:01 UTC 2016
  3. [root@tc6000 EVM_combine]# uname -a
  4. Linux tc6000 2.6.32-642.el6.x86_64 #1 SMP Tue May 10 17:27:01 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
  5. #cat /proc/version 和uname -a 均可以查看到內核版本為2.6.32-642.el6.x86_64
  6. #2.6.32 代表版本號 -642代表版本號
  7. #el6 代表 發行版版本標識,RHEL6CentOS6Oracle Linux6 一般都是el6
  8. #x86_64 代表64位系統 一般i386代表是32位
  9. [root@tc6000 EVM_combine]# lsb_release -a
  10. LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
  11. Distributor ID: CentOS
  12. Description: CentOS release 6.8 (Final)
  13. Release: 6.8
  14. Codename: Final
  15. [root@tc6000 EVM_combine]# cat /etc/redhat-release
  16. CentOS release 6.8 (Final)
  17. [root@tc6000 EVM_combine]# cat /etc/issue
  18. CentOS release 6.8 (Final)
  19. Kernel
    on an m
  20. #lsb_release -a cat /etc/redhat-release cat /etc/issue 三個命令都得到操作系統是CentOS, 但這三個命令並不適用每台linux機器

這裡塊命令比較多,註解就寫在代碼中。


推薦閱讀:

C++性能榨汁機之分支預測器(4)
逆勢操作系統CDP
主存管理 | 段式存儲管理方式
Win10任務管理器中的"專用GPU內存"是怎麼回事?「共享GPU內存」又是什麼?
兩款 Linux 桌面端可用的科學計算器

TAG:Linux | Ubuntu | 操作系統 |