Linux?服務器硬件數(shù)據的收集及使用案例
Linux 服務器硬件數(shù)據的收集
在Linux服務器上,可以使用一些命令來收集硬件數(shù)據,比如:
dmidecode
dmidecode是一款在Linux系統(tǒng)中用于獲取計算機硬件系統(tǒng)信息的工具,可以獲取到主板、BIOS、CPU、內存、硬盤等硬件信息。下面對dmidecode命令進行詳解:
dmidecode [options]
常用選項:
- -t :指定要顯示的硬件類型,如1表示顯示主板信息,2表示顯示內存信息,4表示顯示CPU信息等。
- -s :指定要顯示的硬件關鍵字,如system-manufacturer表示顯示系統(tǒng)制造商。
- -u :以二進制格式顯示DMI數(shù)據。
- -q :只顯示硬件數(shù)據,不顯示額外信息。
dmidecode支持的數(shù)字參數(shù)如下:
| 編號 | 信息 |
|---|---|
| 0 | 計算機的基本輸入輸出系統(tǒng),是計算機啟動時加載的程序 |
| 1 | 計算機系統(tǒng)的基本信息,如制造商、型號、序列號等 |
| 2 | 主板的詳細信息,如制造商、型號、序列號等 |
| 3 | 機箱的詳細信息,包括制造商、型號、序列號等 |
| 4 | CPU 的詳細信息,包括制造商、型號、頻率等 |
| 5 | 內存控制器的詳細信息,包括制造商、型號、頻率等 |
| 6 | 內存模塊的詳細信息,包括制造商、型號、容量等 |
| 7 | CPU 緩存的詳細信息,包括緩存級別、容量等 |
| 8 | 接口連接器的詳細信息,如USB、SATA、PCI-E等 |
| 9 | 系統(tǒng)插槽的詳細信息,如PCI-E插槽、內存插槽等 |
| 10 | 主板上的集成設備,如網卡、聲卡等 |
| 11 | OEM廠商的信息 |
| 12 | 系統(tǒng)配置選項的詳細信息,如BIOS設置等 |
| 13 | BIOS的語言信息 |
| 14 | 組關聯(lián)信息 |
| 15 | 系統(tǒng)事件日志信息 |
| 16 | 物理內存信息 |
| 17 | 內存設備的詳細信息,如制造商、型號、容量等 |
| 18 | 32位內存錯誤信息 |
| 19 | 內存陣列映射地址的信息 |
| 20 | 內存設備映射地址的信息 |
| 21 | 內置指針設備的信息,如觸摸板、指點桿等 |
| 22 | 便攜電池的信息 |
| 23 | 系統(tǒng)重置信息 |
| 24 | 硬件安全信息,如TPM |
| 25 | 系統(tǒng)電源控制信息 |
| 26 | 電壓探頭的信息 |
| 27 | 散熱設備的信息,如CPU散熱器、機箱風扇等 |
| 28 | 溫度探頭的信息 |
| 29 | 電流探頭的信息 |
| 30 | 遠程訪問信息 |
| 31 | 啟動完整性服務的信息 |
| 32 | 系統(tǒng)啟動信息 |
| 33 | 64位內存錯誤信息 |
| 34 | 管理設備的信息 |
| 35 | 管理設備組件的信息 |
| 36 | 管理設備閾值數(shù)據的信息 |
| 37 | 內存通道的信息,如單通道、雙通道等 |
| 38 | IPMI設備的信息 |
| 39 | 電源的信息 |
| 40 | 額外的信息 |
| 41 | 擴展的集成設備信息 |
| 42 | 管理控制器主機接口的信息 |
使用案例
顯示BIOS版本號
[root@localhost ~]# dmidecode -s bios-version 6.00
顯示整個系統(tǒng)的硬件信息,例如主板型號
[root@localhost ~]# dmidecode -t 2
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 2.7 present.
Handle 0x0002, DMI type 2, 15 bytes
Base Board Information
Manufacturer: Intel Corporation
Product Name: 440BX Desktop Reference Platform
Version: None
Serial Number: None
Asset Tag: Not Specified
Features: None
Location In Chassis: Not Specified
Chassis Handle: 0x0000
Type: Unknown
Contained Object Handles: 0顯示整個系統(tǒng)的CPU信息
......
......
......
Handle 0x0082, DMI type 4, 42 bytes
Processor Information
Socket Designation: CPU #127
Type: Central Processor
Family: Unknown
Manufacturer: GenuineIntel
ID: EA 06 00 00 FF FB 8B 1F
Version: Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
Voltage: 3.3 V
External Clock: Unknown
Max Speed: 30000 MHz
Current Speed: 2600 MHz
Status: Populated, Disabled By BIOS
Upgrade: ZIF Socket
L1 Cache Handle: 0x0112
L2 Cache Handle: 0x0192
L3 Cache Handle: Not Provided
Serial Number: Not Specified
Asset Tag: Not Specified
Part Number: Not Specified
Core Count: 4
Core Enabled: 4
Characteristics:
64-bit capable
Multi-Core
Execute Protectionlspci
lspci是Linux系統(tǒng)中的一個命令,它可以列出計算機中所有PCI設備的信息,包括顯示卡、聲卡、網卡等等??梢岳斫鉃?,lspci是一個工具,它幫助我們查看計算機中的硬件設備。
lspci [-vvn] 選項: -v:顯示更多的PCI設備的詳細信息 -vv:比-v還要更詳細的詳細信息 -n:直接查看PCI的ID而不是廠商名稱 -s:只顯示指定設備的信息
使用案例
去看系統(tǒng)內的PCI相關設備
[root@localhost ~]# lspci 00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01) 00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01) 00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08) 00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01) 00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08) 00:07.7 System peripheral: VMware Virtual Machine Communication Interface (rev 10) 00:0f.0 VGA compatible controller: VMware SVGA II Adapter 00:10.0 SCSI storage controller: Broadcom / LSI 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01) 00:11.0 PCI bridge: VMware PCI bridge (rev 02) 00:15.0 PCI bridge: VMware PCI Express Root Port (rev 01) 00:15.1 PCI bridge: VMware PCI Express Root Port (rev 01) 00:15.2 PCI bridge: VMware PCI Express Root Port (rev 01) 00:15.3 PCI bridge: VMware PCI Express Root Port (rev 01) 00:15.4 PCI bridge: VMware PCI Express Root Port (rev 01) 00:15.5 PCI bridge: VMware PCI Express Root Port (rev 01) 00:15.6 PCI bridge: VMware PCI Express Root Port (rev 01) 00:15.7 PCI bridge: VMware PCI Express Root Port (rev 01) 00:16.0 PCI bridge: VMware PCI Express Root Port (rev 01) 00:16.1 PCI bridge: VMware PCI Express Root Port (rev 01) 00:16.2 PCI bridge: VMware PCI Express Root Port (rev 01) 00:16.3 PCI bridge: VMware PCI Express Root Port (rev 01) 00:16.4 PCI bridge: VMware PCI Express Root Port (rev 01) 00:16.5 PCI bridge: VMware PCI Express Root Port (rev 01) 00:16.6 PCI bridge: VMware PCI Express Root Port (rev 01) 00:16.7 PCI bridge: VMware PCI Express Root Port (rev 01) 00:17.0 PCI bridge: VMware PCI Express Root Port (rev 01) 00:17.1 PCI bridge: VMware PCI Express Root Port (rev 01) 00:17.2 PCI bridge: VMware PCI Express Root Port (rev 01) 00:17.3 PCI bridge: VMware PCI Express Root Port (rev 01) 00:17.4 PCI bridge: VMware PCI Express Root Port (rev 01) 00:17.5 PCI bridge: VMware PCI Express Root Port (rev 01) 00:17.6 PCI bridge: VMware PCI Express Root Port (rev 01) 00:17.7 PCI bridge: VMware PCI Express Root Port (rev 01) 00:18.0 PCI bridge: VMware PCI Express Root Port (rev 01) 00:18.1 PCI bridge: VMware PCI Express Root Port (rev 01) 00:18.2 PCI bridge: VMware PCI Express Root Port (rev 01) 00:18.3 PCI bridge: VMware PCI Express Root Port (rev 01) 00:18.4 PCI bridge: VMware PCI Express Root Port (rev 01) 00:18.5 PCI bridge: VMware PCI Express Root Port (rev 01) 00:18.6 PCI bridge: VMware PCI Express Root Port (rev 01) 00:18.7 PCI bridge: VMware PCI Express Root Port (rev 01) 02:00.0 USB controller: VMware USB1.1 UHCI Controller 02:01.0 Ethernet controller: Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) (rev 01) 02:02.0 Multimedia audio controller: Ensoniq ES1371/ES1373 / Creative Labs CT2518 (rev 02) 02:03.0 USB controller: VMware USB2 EHCI Controller
不必加任何參數(shù),就能夠顯示出目前主機上面的各個PCI設備
如果你要知道以太網的詳細信息
[root@localhost ~]# lspci -s 00:03.0 -vv
/usr/share/hwdata/pci.ids
其實那個就是PCI的標準ID與品牌名稱的對于表。此外,剛剛我們使用lspci時,其實所有數(shù)據都是從 /proc/bus/pci/ 目錄中獲取的。不過由于硬件發(fā)展太過迅速,所以你的 pci.ids 文件可能會落伍,可以使用下面的方式來在線更新你的對應文件
[root@localhost ~]# update-pciids
lsusb
lsusb命令用于列出系統(tǒng)中所有的USB設備信息,包括USB控制器、USB設備及其屬性等。具體使用方法如下:
lsusb [-t] 選項: -t:以樹形結構顯示設備信息 -s [bus]:[device]:只顯示指定總線(bus)和設備(device)的信息,例如 lsusb -s 001:002。 -d [vendor]:[product]:只顯示指定供應商(vendor)和產品(product)的信息,例如 lsusb -d 045e:00cb。
使用案例
列出目前主機USB各端口狀態(tài)
[root@localhost ~]# lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 004: ID 0e0f:0008 VMware, Inc. Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
iostat
iostat是一個Linux系統(tǒng)性能監(jiān)控工具,用于顯示CPU、磁盤和tty設備的統(tǒng)計信息。
如果沒有這個軟件就執(zhí)行如下命令安裝它
yum install -y sysstat
iostat [選項] [間隔時間] [次數(shù)] 選項: -c:顯示CPU的統(tǒng)計信息 -d:顯示磁盤的統(tǒng)計信息 -k:以KB為單位顯示統(tǒng)計信息 -m:以MB為單位顯示統(tǒng)計信息 -t:顯示時間戳
使用案例
顯示一下目前整個系統(tǒng)的CPU與存儲設備的狀態(tài)
[root@localhost ~]# iostat
Linux 3.10.0-1160.el7.x86_64 (localhost.localdomain) 2023年05月25日 _x86_64_ (8 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.28 0.00 0.87 0.00 0.00 98.85
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 1.26 24.06 8.13 545074 184191
scd0 0.00 0.05 0.00 1028 0輸出詳解:
1.第一行:顯示Linux系統(tǒng)的版本信息、當前日期和時間、CPU的架構和數(shù)量。
2.第二行:顯示CPU的利用率統(tǒng)計信息,包括以下各列:
%user:表示用戶進程占用CPU時間的百分比。
%nice:表示“優(yōu)先級較高的進程”占用CPU時間的百分比。
%system:表示內核占用CPU時間的百分比。
%iowait:表示CPU等待I/O操作完成的時間占用的百分比。
%steal:表示虛擬機監(jiān)控程序(如KVM)偷取CPU時間的百分比。
%idle:表示CPU空閑時間的百分比。
3.第三行:顯示磁盤I/O統(tǒng)計信息,包括以下各列:
Device:表示磁盤設備的名稱。
tps :平均每秒鐘的傳送次數(shù),與數(shù)據傳輸【次數(shù)】有關,非容量
KB_read/s:開機到現(xiàn)在平均的讀取單位
KB_wrtn/s:開機到現(xiàn)在平均的寫入單位
KB_read:開機到現(xiàn)在,總共讀出來的數(shù)據
KB_wrtn:開機到現(xiàn)在,總共寫入的數(shù)據
僅針對sda,每兩秒檢測一次,并且共檢測三次存儲設備
[root@localhost ~]# iostat -d 2 3 sda Linux 3.10.0-1160.el7.x86_64 (localhost.localdomain) 2023年05月25日 _x86_64_ (8 CPU) Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 1.24 23.25 8.07 545074 189201 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 1.00 0.00 10.75 0 21 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 0.00 0.00 0.00 0 0
仔細看看,如果是有檢測次數(shù)的情況,那么第一次顯示的是【從開機到現(xiàn)在的數(shù)據】
第二次以后所顯示的數(shù)據則代表兩次檢測之間的系統(tǒng)傳輸值,舉例來說,上面的信息中,
第二次顯示的數(shù)據,則是兩秒鐘內(本案例)系統(tǒng)的總傳輸量的平均值
了解磁盤的健康狀態(tài)
其實Linux服務器最重要的就是【數(shù)據安全】,而數(shù)據都是放在磁盤當中的,所以,無時無刻了解以下你的磁盤健康狀況,應該是個好習慣。我呢提提,你怎么知道你的磁盤是好還是壞?
smartctl是smartmontools軟件包中的命令行工具,用于讀取和顯示磁盤的S.M.A.R.T(Self-Monitoring, Analysis and Reporting Technology)信息。S.M.A.R.T是一種嵌入在計算機硬件中的技術,可以在磁盤上記錄各種故障預測和錯誤信息,從而提前預測磁盤故障并采取相應措施。
smartctl命令的基本語法如下:
smartctl [options] device
其中,device參數(shù)指定要顯示S.M.A.R.T信息的磁盤設備,可以是設備文件名(如/dev/sda)、磁盤代號(如sda)或磁盤路徑(如/sys/block/sda)。
下面是一些常用的選項和參數(shù):
- -a:顯示磁盤的所有S.M.A.R.T信息。
- -H:顯示磁盤的健康狀態(tài)
- -i:顯示磁盤的基本信息,包括制造商、型號、序列號、固件版本等。
- -l error:顯示磁盤的錯誤日志。
- -t [testname]:執(zhí)行磁盤的自測,testname參數(shù)指定自測的類型,如short(短自測)、long(長自測)等。
除了以上常用選項,smartctl命令還支持許多其他選項,可以使用“man smartctl”命令查看完整的手冊。
使用案例
用smartctl 顯示完整的 /dev/sda 的信息
[root@localhost ~]# smartctl -a /dev/sdb smartctl 7.0 2018-12-30 r4883 [x86_64-linux-3.10.0-1160.el7.x86_64] (local build) Copyright (C) 2002-18, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Vendor: VMware, Product: VMware Virtual S Revision: 1.0 User Capacity: 21,474,836,480 bytes [21.4 GB] Logical block size: 512 bytes Rotation Rate: Solid State Device Device type: disk Local Time is: Thu May 25 16:08:23 2023 CST SMART support is: Unavailable - device lacks SMART capability. === START OF READ SMART DATA SECTION === Current Drive Temperature: 0 C Drive Trip Temperature: 0 C Error Counter logging not supported Device does not support Self Test logging
查看磁盤的健康狀態(tài)
[root@localhost ~]# smartctl -H /dev/sdb smartctl 7.0 2018-12-30 r4883 [x86_64-linux-3.10.0-1160.el7.x86_64] (local build) Copyright (C) 2002-18, Bruce Allen, Christian Franke, www.smartmontools.org === START OF READ SMART DATA SECTION === SMART Health Status: OK
到此這篇關于Linux 服務器硬件數(shù)據的收集的文章就介紹到這了,更多相關Linux 服務器硬件數(shù)據的收集內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Linux服務器搭建nvidia-docker環(huán)境過程詳解
這篇文章主要介紹了Linux服務器搭建nvidia-docker環(huán)境過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-07-07
Apache Spark 2.0 在作業(yè)完成時卻花費很長時間結束
大家在使用 Apache Spark 2.x 的時候可能會遇到這種現(xiàn)象:雖然我們的 Spark Jobs 已經全部完成了,但是我們的程序卻還在執(zhí)行。怎么回事呢?下面小編通過實例代碼給大家介紹下2019-06-06
CentOS 6.3下源碼安裝LAMP(Linux+Apache+Mysql+Php)運行環(huán)境步驟
這篇文章主要介紹了CentOS 6.3下源碼安裝LAMP(Linux+Apache+Mysql+Php)運行環(huán)境步驟,需要的朋友可以參考下2014-07-07

