Linux下查看系統資訊方法總結__Linux

來源:互聯網
上載者:User
Linux下如何查看系統啟動時間和已耗用時間
1.查看/proc/uptime檔案計算系統啟動時間:
cat /proc/uptime
輸出: 5113396.94 575949.85

第一數字即是系統已啟動並執行時間5113396.94秒,運用系統工具date即可算出系統啟動時間


date -d "$(awk -F. '{print $1}' /proc/uptime) second ago" +"%Y-%m-%d %H:%M:%S"
輸出: 2018-01-02 06:50:52


2.查看/proc/uptime檔案計算系統已耗用時間
cat /proc/uptime| awk -F. '{run_days=$1 / 86400;run_hour=($1 % 86400)/3600;run_minute=($1 % 3600)/60;run_second=$1 % 60;printf("系統已運行:%d天%d時%d分%d秒",run_days,run_hour,run_minute,run_second)}'
輸出:系統已運行:1天1時36分13秒


Linux查看物理CPU個數、核心數、邏輯CPU個數
# 總核心數 = 物理CPU個數 X 每顆物理CPU的核心數 
# 總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核心數 X 超執行緒數


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


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


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


# 查看CPU資訊(型號)
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
      4  Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz


輸入命令cat /proc/cpuinfo 查看physical id有幾個就有幾個物理cpu;查看processor有幾個就有幾個邏輯cpu。
(一)概念
① 物理CPU
實際Server中插槽上的CPU個數
物理cpu數量,可以數不重複的physical id有幾個
② 邏輯CPU 
/proc/cpuinfo用來儲存cpu硬體資訊的
資訊內容分別列出了processor 0 –processor n 的規格。這裡需要注意,n+1是邏輯cpu數
一般情況,我們認為一顆cpu可以有多核,加上intel的超執行緒技術(HT), 可以在邏輯上再分一倍數量的cpu core出來
邏輯CPU數量=物理cpu數量 x cpu cores 這個規格值 x 2(如果支援並開啟ht)    
備忘一下:Linux下top查看的CPU也是邏輯CPU個數
 ③ CPU核心數
一塊CPU上面能處理資料的晶片集的數量、比如現在的i5 760,是雙核心四線程的CPU、而 i5 2250 是四核心四線程的CPU
一般來說,物理CPU個數×每顆核心數就應該等於邏輯CPU的個數,如果不相等的話,則表示伺服器的CPU支援超執行緒技術


查看系統資訊的實用命令
lscpu命令,查看的是cpu的統計資訊

blue@blue-pc:~$ lscpuArchitecture:          i686            #cpu架構CPU op-mode(s):        32-bit, 64-bitByte Order:            Little Endian   #小端位元組序CPU(s):                4               #總共有4核On-line CPU(s) list:   0-3Thread(s) per core:    1               #每個cpu核,只能支援一個線程,即不支援超執行緒Core(s) per socket:    4               #每個cpu,有4個核Socket(s):             1               #總共有1一個cpuVendor ID:             GenuineIntel    #cpu產商 intelCPU family:            6Model:                 42Stepping:              7CPU MHz:               1600.000BogoMIPS:              5986.12Virtualization:        VT-x            #支援cpu虛擬化技術L1d cache:             32KL1i cache:             32KL2 cache:              256KL3 cache:              6144K
查看/proc/cpuinfo,可以知道每個cpu資訊,如每個CPU的型號,主頻等。


記憶體
概要查看記憶體情況

free -m             total       used       free     shared    buffers     cachedMem:          3926       3651        274          0         12        404-/+ buffers/cache:       3235        691Swap:         9536         31       9505
這裡的單位是MB,總共的記憶體是3926MB。
查看記憶體詳細使用:cat /proc/meminfo

磁碟

查看硬碟和分區分布

# lsblkNAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTsda      8:0    0 465.8G  0 disk ├─sda1   8:1    0     1G  0 part /boot├─sda2   8:2    0   9.3G  0 part [SWAP]├─sda3   8:3    0  74.5G  0 part /├─sda4   8:4    0     1K  0 part ├─sda5   8:5    0 111.8G  0 part /home└─sda6   8:6    0 269.2G  0 part
如果要看硬碟和分區的詳細資料

# fdisk -lDisk /dev/sda: 500.1 GB, 500107862016 bytesheads, 63 sectors/track, 60801 cylinders, total 976773168 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 4096 bytesI/O size (minimum/optimal): 4096 bytes / 4096 bytesDisk identifier: 0x00023728   Device Boot      Start         End      Blocks   Id  System/dev/sda1   *        2048     2148351     1073152   83  Linux/dev/sda2         2148352    21680127     9765888   82  Linux swap / Solaris/dev/sda3        21680128   177930239    78125056   83  Linux/dev/sda4       177932286   976771071   399419393    5  Extended/dev/sda5       177932288   412305407   117186560   83  Linux/dev/sda6       412307456   976771071   282231808   83  Linux
使用“df -k”命令,以KB為單位顯示磁碟使用量和佔用率,-m則是以M為單位顯示磁碟使用量和佔用率

root@debian:~# df -kFilesystem     1K-blocks    Used Available Use% Mounted on/dev/sda1        8518920 1484432   6578708  19% /udev               10240       0     10240   0% /devtmpfs              98488   12908     85580  14% /runtmpfs             246216       0    246216   0% /dev/shmtmpfs               5120       0      5120   0% /run/locktmpfs             246216       0    246216   0% /sys/fs/cgroup/dev/sda7         368615    2055    343008   1% /tmp/dev/sda8       28202140 9678620  17067856  37% /home/dev/sda5        2817056  803380   1850860  31% /var
使用“du -k /home”命令,列出home目錄下所有檔案或目錄佔用的大小,以KB作為計量單位。
以下命令可以查看/home目錄的大小:
root@debian:~# du -sh /home
9.2G    /home


網卡
查看網卡硬體資訊
# lspci | grep -i 'eth'
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)

查看系統的所有網路介面

# ifconfig -aeth0      Link encap:乙太網路  硬體地址 b8:97:5a:17:b3:8f            .....lo        Link encap:本地環回            .....或者是ip link show1: lo: <LOOPBACK> mtu 16436 qdisc noqueue state DOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:002: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether b8:97:5a:17:b3:8f brd ff:ff:ff:ff:ff:ff
如果要查看某個網路介面的詳細資料,例如eth0的詳細參數和指標
# ethtool eth0Settings for eth0:    Supported ports: [ TP MII ]    Supported link modes:   10baseT/Half 10baseT/Full                             100baseT/Half 100baseT/Full                             1000baseT/Half 1000baseT/Full #支援千兆半雙工,全雙工系統模式    Supported pause frame use: No     Supports auto-negotiation: Yes #支援自適應模式,一般都支援    Advertised link modes:  10baseT/Half 10baseT/Full                             100baseT/Half 100baseT/Full                             1000baseT/Half 1000baseT/Full    Advertised pause frame use: Symmetric Receive-only    Advertised auto-negotiation: Yes #預設使用自適應模式    Link partner advertised link modes:  10baseT/Half 10baseT/Full                                          100baseT/Half 100baseT/Full     .....    Speed: 100Mb/s #現在網卡的速度是100Mb,網卡使用自適應模式,所以推測路由是100Mb,導致網卡從支援千兆,變成要支援百兆    Duplex: Full   #全雙工系統    .....    Link detected: yes    #表示有網線串連,和路由是通的
其他
查看pci資訊,即主板所有硬體槽資訊。

lspci00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09) #主板晶片00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) #顯卡00:14.0 USB controller: Intel Corporation Panther Point USB xHCI Host Controller (rev 04) #usb控制器00:16.0 Communication controller: Intel Corporation Panther Point MEI Controller #1 (rev 04)00:1a.0 USB controller: Intel Corporation Panther Point USB Enhanced Host Controller #2 (rev 04)00:1b.0 Audio device: Intel Corporation Panther Point High Definition Audio Controller (rev 04) #音效卡00:1c.0 PCI bridge: Intel Corporation Panther Point PCI Express Root Port 1 (rev c4) #pci 插槽00:1c.2 PCI bridge: Intel Corporation Panther Point PCI Express Root Port 3 (rev c4)00:1c.3 PCI bridge: Intel Corporation Panther Point PCI Express Root Port 4 (rev c4)00:1d.0 USB controller: Intel Corporation Panther Point USB Enhanced Host Controller #1 (rev 04)00:1f.0 ISA bridge: Intel Corporation Panther Point LPC Controller (rev 04)00:1f.2 IDE interface: Intel Corporation Panther Point 4 port SATA Controller [IDE mode] (rev 04) #硬碟介面00:1f.3 SMBus: Intel Corporation Panther Point SMBus Controller (rev 04)00:1f.5 IDE interface: Intel Corporation Panther Point 2 port SATA Controller [IDE mode] (rev 04) #硬碟介面02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06) #網卡03:00.0 PCI bridge: Integrated Technology Express, Inc. Device 8893 (rev 41)
如果要更詳細的資訊:lspci -v 或者 lspci -vv
如果要看裝置樹:lspci -t

查看bios資訊

# dmidecode -t bios......BIOS Information    Vendor: American Megatrends Inc.    Version: 4.6.5    Release Date: 04/25/2012    .......    BIOS Revision: 4.6......
dmidecode以一種可讀的方式dump出機器的DMI(Desktop Management Interface)資訊。這些資訊包括了硬體以及BIOS,既可以得到當前的配置,也可以得到系統支援的最大配置,比如說支援的最大記憶體數等。
如果要查看所有有用資訊
dmidecode -q
裡麵包含了很多硬體資訊。
註:以上的命令都是Ubuntu。Ubuntu支援的命令比較多,相對redhat會很齊全。畢竟redhat要求穩定,所以更新會很慢。(有的命令RedHat和Centos可能沒有,我測試Debian也是可以)


Linux /proc目錄詳解
1. /proc目錄
Linux 核心提供了一種通過 /proc 檔案系統,在運行時訪問核心內部資料結構、改變核心設定的機制。proc檔案系統是一個偽檔案系統,它只存在記憶體當中,而不佔用外存空間。它以檔案系統的方式為訪問系統核心資料的操作提供介面。
使用者和應用程式可以通過proc得到系統的資訊,並可以改變核心的某些參數。由於系統的資訊,如進程,是動態改變的,所以使用者或應用程式讀取proc檔案時,proc檔案系統是動態從系統核心讀出所需資訊並提交的。下面列出的這些檔案或子檔案夾,並不是都是在你的系統中存在,這取決於你的核心配置和裝載的模組。另外,在/proc下還有三個很重要的目錄:net,scsi和sys。 Sys目錄是可寫的,可以通過它來訪問或修改核心的參數,而net和scsi則依賴於核心配置。例如,如果系統不支援scsi,則scsi 目錄不存在。
除了以上介紹的這些,還有的是一些以數字命名的目錄,它們是進程目錄。系統中當前啟動並執行每一個進程都有對應的一個目錄在/proc下,以進程的 PID號為目錄名,它們是讀取進程資訊的介面。而self目錄則是讀取進程本身的資訊介面,是一個link。


2. 子檔案或子檔案夾
/proc/buddyinfo 每個記憶體區中的每個order有多少塊可用,和記憶體片段問題有關
/proc/cmdline 啟動時傳遞給kernel的參數資訊
/proc/cpuinfo cpu的資訊
/proc/crypto 核心使用的所有已安裝的加密密碼及細節
/proc/devices 已經載入的裝置並分類
/proc/dma 登入使用的ISA DMA頻道列表
/proc/execdomains Linux核心當前支援的execution domains
/proc/fb 幀緩衝裝置列表,包括數量和控制它的驅動
/proc/filesystems 核心當前支援的檔案系統類型
/proc/interrupts x86架構中的每個IRQ中斷數
/proc/iomem 每個物理裝置當前在系統記憶體中的映射
/proc/ioports 一個裝置的輸入輸出所使用的註冊連接埠範圍
/proc/kcore 代表系統的實體記憶體,儲存為核心檔案格式,裡邊顯示的是位元組數,等於RAM大小加上4kb
/proc/kmsg 記錄核心產生的資訊,可以通過/sbin/klogd或/bin/dmesg來處理
/proc/loadavg 根據過去一段時間內CPU和IO的狀態得出的負載狀態,與uptime命令有關
/proc/locks 核心鎖住的檔案清單
/proc/mdstat 多硬碟,RAID配置資訊(md=multiple disks)
/proc/meminfo RAM使用的相關資訊
/proc/misc 其他的主要裝置(裝置號為10)上註冊的驅動
/proc/modules 所有載入到核心的模組列表
/proc/mounts 系統中使用的所有掛載
/proc/mtrr 系統使用的Memory Type Range Registers (MTRRs)
/proc/partitions 分區中的塊分配資訊
/proc/pci 系統中的PCI裝置列表
/proc/slabinfo 系統中所有活動的 slab 緩衝資訊
/proc/stat 所有的CPU活動資訊
/proc/sysrq-trigger 使用echo命令來寫這個檔案的時候,遠程root使用者可以執行大多數的系統請求關鍵命令,就好像在本地終端執行一樣。要寫入這個檔案,需要把/proc/sys/kernel/sysrq不能設定為0。這個檔案對root也是不可讀的
/proc/uptime 系統已經運行了多久
/proc/swaps 交換空間的使用方式
/proc/version Linux核心版本和gcc版本
/proc/bus 系統匯流排(Bus)資訊,例如pci/usb等
/proc/driver 驅動資訊
/proc/fs 檔案系統資訊
/proc/ide ide裝置資訊
/proc/irq 插斷要求裝置資訊
/proc/net 網卡裝置資訊
/proc/scsi scsi裝置資訊
/proc/tty tty裝置資訊
/proc/net/dev 顯示網路介面卡及統計資訊
/proc/vmstat 虛擬記憶體統計資訊
/proc/vmcore 核心panic時的記憶體映像
/proc/diskstats 取得磁碟資訊
/proc/schedstat kernel調度器的統計資訊
/proc/zoneinfo 顯示記憶體空間的統計資訊,對分析虛擬記憶體行為很有用

以下是/proc目錄中進程N的資訊
/proc/N pid為N的進程資訊
/proc/N/cmdline 進程啟動命令
/proc/N/cwd 連結到進程當前工作目錄
/proc/N/environ 進程環境變數列表
/proc/N/exe 連結到進程的執行命令檔案
/proc/N/fd 包含進程相關的所有的檔案描述符
/proc/N/maps 與進程相關的記憶體映射資訊
/proc/N/mem 指代進程持有的記憶體,不可讀
/proc/N/root 連結到進程的根目錄
/proc/N/stat 進程的狀態
/proc/N/statm 進程使用的記憶體的狀態
/proc/N/status 進程狀態資訊,比stat/statm更具可讀性
/proc/self 連結到當前正在啟動並執行進程


參考:
https://www.cnblogs.com/xd502djj/archive/2011/05/03/2035599.html
https://www.cnblogs.com/emanlee/p/3587571.html
http://blog.csdn.net/chw1989/article/details/9150767
https://www.cnblogs.com/ggjucheng/archive/2013/01/14/2859613.html
https://jingyan.baidu.com/article/e2284b2b5dd3ebe2e6118dc8.html
http://blog.csdn.net/zdwzzu2006/article/details/7747977

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.