10 個用於收集硬體資訊的 Linux 命令
本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃!
知道自己的Linux系統執行在什麼樣的硬體元件上總是好的,因為如果涉及到在系統上安裝軟體包和驅動程式的話,這將有助於你處理相容性問題。
因此,下面我們將給出一些非常有用的命令,它們可以幫助你提取你的Linux系統和硬體元件的資訊。
1.如何檢視Linux系統的資訊
如果只想知道系統名稱,可以使用不帶任何引數選項的uname命令,就可以輸出系統資訊,或使用uname -s命令輸出系統的核心名稱。
tecmint@tecmint ~ $ uname Linux
要檢視網路主機名,用“-n”引數選項的uname命令,如下所示。
tecmint@tecmint ~ $ uname -n tecmint.com
要獲取有關核心版本的資訊,使用“-v”引數選項。
tecmint@tecmint ~ $ uname -v #64-Ubuntu SMP Mon Sep 22 21:28:38 UTC 2014
要得到有關你的核心的發行版資訊,請使用“-r”引數選項。
tecmint@tecmint ~ $ uname -r 3.13.0-37-generic
要輸出你的機器的硬體名,使用“-m”引數選項:
tecmint@tecmint ~ $ uname -m x86_64
所有這些資訊可以通過執行“uname -a”命令,如下圖所示一次性輸出。
tecmint@tecmint ~ $ uname -a Linux tecmint.com 3.13.0-37-generic #64-Ubuntu SMP Mon Sep 22 21:28:38 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
2.如何檢視Linux的系統硬體資訊
你可以使用lshw工具來收集有關硬體部件,如CPU,硬碟,記憶體,USB控制器等的大量資訊。
lshw是一個相對比較小巧的工具,當你提取資訊的時候,只有為數不多的幾個選項可供你使用。由lshw提供的資訊收集形成了不同的/ proc檔案。
注:請記住,lshw命令是由superuser (root)或sudo使用者執行的。
參見:《Difference Between su and sudo User in Linux》
要輸出你的Linux系統的硬體資訊,執行此命令。
tecmint@tecmint ~ $ sudo lshw tecmint.com description: Notebook product: 20354 (LENOVO_MT_20354_BU_idea_FM_Lenovo Z50-70) vendor: LENOVO version: Lenovo Z50-70 serial: 1037407803441 width: 64 bits capabilities: smbios-2.7 dmi-2.7 vsyscall32 configuration: administrator_password=disabled boot=normal chassis=notebook family=IDEAPAD frontpanel_password=disabled keyboard_password=disabled power-on_password=disabled sku=LENOVO_MT_20354_BU_idea_FM_Lenovo Z50-70 uuid=E4B1D229-D237-E411-9F6E-28D244EBBD98 *-core description: Motherboard product: Lancer 5A5 vendor: LENOVO physical id: 0 version: 31900059WIN serial: YB06377069 slot: Type2 - Board Chassis Location *-firmware description: BIOS vendor: LENOVO physical id: 0 version: 9BCN26WW date: 07/31/2014 size: 128KiB capacity: 4032KiB capabilities: pci upgrade shadowing cdboot bootselect edd int13floppynec int13floppytoshiba int13floppy360 int13floppy1200 int13floppy720 int13floppy2880 int9keyboard int10video acpi usb biosbootspecification uefi ......
你可以通過使用-short選項來輸出彙總的硬體資訊。
tecmint@tecmint ~ $ sudo lshw -short H/W path Device Class Description ===================================================== system 20354 (LENOVO_MT_20354_BU_idea_FM_Lenovo Z50-70) /0 bus Lancer 5A5 /0/0 memory 128KiB BIOS /0/4 processor Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz /0/4/b memory 32KiB L1 cache /0/4/c memory 256KiB L2 cache /0/4/d memory 3MiB L3 cache /0/a memory 32KiB L1 cache /0/12 memory 8GiB System Memory /0/12/0 memory DIMM [empty] /0/12/1 memory DIMM [empty] /0/12/2 memory 8GiB SODIMM DDR3 Synchronous 1600 MHz (0.6 ns) /0/12/3 memory DIMM [empty] /0/100 bridge Haswell-ULT DRAM Controller /0/100/2 display Haswell-ULT Integrated Graphics Controller /0/100/3 multimedia Haswell-ULT HD Audio Controller ...
如果你想生成輸出為HTML檔案,可以使用選項-html。
tecmint@tecmint ~ $ sudo lshw -html > lshw.html
3.如何檢視Linux的CPU資訊
要檢視關於CPU的資訊,就使用lscpu命令,因為它能從sysfs和/ proc / cpuinfo中顯示CPU體系結構的資訊,例如CPU數字,核心,CPU系列型號,CPU快取記憶體,執行緒等。
tecmint@tecmint ~ $ lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 4 On-line CPU(s) list: 0-3 Thread(s) per core: 2 Core(s) per socket: 2 Socket(s): 1 NUMA node(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 69 Stepping: 1 CPU MHz: 768.000 BogoMIPS: 4788.72 Virtualization: VT-x L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 3072K NUMA node0 CPU(s): 0-3
4.如何收集Linux塊裝置資訊
塊裝置是諸如硬碟,快閃記憶體驅動器等的儲存裝置。lsblk命令可用於報告有關塊裝置的資訊,如下所示。
tecmint@tecmint ~ $ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 931.5G 0 disk ├─sda1 8:1 0 1000M 0 part ├─sda2 8:2 0 260M 0 part /boot/efi ├─sda3 8:3 0 1000M 0 part ├─sda4 8:4 0 128M 0 part ├─sda5 8:5 0 557.1G 0 part ├─sda6 8:6 0 25G 0 part ├─sda7 8:7 0 14.7G 0 part ├─sda8 8:8 0 1M 0 part ├─sda9 8:9 0 324.5G 0 part / └─sda10 8:10 0 7.9G 0 part [SWAP] sr0 11:0 1 1024M 0 rom
如果你想檢視系統上所有的塊裝置,那麼就加一個-a選項。
tecmint@tecmint ~ $ lsblk -a NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 931.5G 0 disk ├─sda1 8:1 0 1000M 0 part ├─sda2 8:2 0 260M 0 part /boot/efi ├─sda3 8:3 0 1000M 0 part ├─sda4 8:4 0 128M 0 part ├─sda5 8:5 0 557.1G 0 part ├─sda6 8:6 0 25G 0 part ├─sda7 8:7 0 14.7G 0 part ├─sda8 8:8 0 1M 0 part ├─sda9 8:9 0 324.5G 0 part / └─sda10 8:10 0 7.9G 0 part [SWAP] sdb 8:16 1 0 disk sr0 11:0 1 1024M 0 rom ram0 1:0 0 64M 0 disk ram1 1:1 0 64M 0 disk ram2 1:2 0 64M 0 disk ram3 1:3 0 64M 0 disk ram4 1:4 0 64M 0 disk ram5 1:5 0 64M 0 disk ram6 1:6 0 64M 0 disk ram7 1:7 0 64M 0 disk ram8 1:8 0 64M 0 disk ram9 1:9 0 64M 0 disk loop0 7:0 0 0 loop loop1 7:1 0 0 loop loop2 7:2 0 0 loop loop3 7:3 0 0 loop loop4 7:4 0 0 loop loop5 7:5 0 0 loop loop6 7:6 0 0 loop loop7 7:7 0 0 loop ram10 1:10 0 64M 0 disk ram11 1:11 0 64M 0 disk ram12 1:12 0 64M 0 disk ram13 1:13 0 64M 0 disk ram14 1:14 0 64M 0 disk ram15 1:15 0 64M 0 disk
5.如何輸出USB控制器的資訊
lsusb命令可用於報告關於USB控制器和所有連線到它們的裝置的資訊。
tecmint@tecmint ~ $ lsusb Bus 001 Device 002: ID 8087:8000 Intel Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 002 Device 005: ID 0bda:b728 Realtek Semiconductor Corp. Bus 002 Device 004: ID 5986:0249 Acer, Inc Bus 002 Device 003: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller Bus 002 Device 002: ID 045e:00cb Microsoft Corp. Basic Optical Mouse v2.0 Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
你可以使用-v選項生成有關於每個USB裝置的詳細資訊。
tecmint@tecmint ~ $ lsusb -v
6.如何輸出PCI裝置資訊
PCI裝置可能包括USB介面,顯示卡,網路卡等。lspci工具能用來生成系統上所有PCI控制器以及連線到它們的裝置的資訊。
要輸出有關PCI裝置的資訊,可執行以下命令。
tecmint@tecmint ~ $ lspci 00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 0b) 00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b) 00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 0b) 00:14.0 USB controller: Intel Corporation Lynx Point-LP USB xHCI HC (rev 04) 00:16.0 Communication controller: Intel Corporation Lynx Point-LP HECI #0 (rev 04) 00:1b.0 Audio device: Intel Corporation Lynx Point-LP HD Audio Controller (rev 04) 00:1c.0 PCI bridge: Intel Corporation Lynx Point-LP PCI Express Root Port 3 (rev e4) 00:1c.3 PCI bridge: Intel Corporation Lynx Point-LP PCI Express Root Port 4 (rev e4) 00:1c.4 PCI bridge: Intel Corporation Lynx Point-LP PCI Express Root Port 5 (rev e4) 00:1d.0 USB controller: Intel Corporation Lynx Point-LP USB EHCI #1 (rev 04) 00:1f.0 ISA bridge: Intel Corporation Lynx Point-LP LPC Controller (rev 04) 00:1f.2 SATA controller: Intel Corporation Lynx Point-LP SATA Controller 1 [AHCI mode] (rev 04) 00:1f.3 SMBus: Intel Corporation Lynx Point-LP SMBus Controller (rev 04) 01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 10) 02:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8723BE PCIe Wireless Network Adapter 03:00.0 3D controller: NVIDIA Corporation GM108M [GeForce 840M] (rev a2)
使用-t選項將以樹的形式生成輸出。
tecmint@tecmint ~ $ lspci -t -[0000:00]-+-00.0 +-02.0 +-03.0 +-14.0 +-16.0 +-1b.0 +-1c.0-[01]----00.0 +-1c.3-[02]----00.0 +-1c.4-[03]----00.0 +-1d.0 +-1f.0 +-1f.2 \-1f.3
使用-v選項生成有關每個連線的裝置的詳細資訊。
tecmint@tecmint ~ $ lspci -v 00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 0b) Subsystem: Lenovo Device 3978 Flags: bus master, fast devsel, latency 0 Capabilities: 00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b) (prog-if 00 [VGA controller]) Subsystem: Lenovo Device 380d Flags: bus master, fast devsel, latency 0, IRQ 62 Memory at c3000000 (64-bit, non-prefetchable) [size=4M] Memory at d0000000 (64-bit, prefetchable) [size=256M] I/O ports at 6000 [size=64] Expansion ROM at [disabled] Capabilities: Kernel driver in use: i915 .....
7.如何輸出SCSI裝置的資訊
要檢視所有的scsi / sata裝置,可使用lsscsi命令,如下所示。如果你沒有安裝lsscsi工具,那麼執行下面的命令來安裝它。
$ sudo apt-get install lsscsi [on Debian derivatives] # yum install lsscsi [On RedHat based systems] # dnf install lsscsi [On Fedora 21+ Onwards]
安裝後,執行lsscsi命令,如下所示:
tecmint@tecmint ~ $ lsscsi [0:0:0:0] disk ATA ST1000LM024 HN-M 2BA3 /dev/sda [1:0:0:0] cd/dvd PLDS DVD-RW DA8A5SH RL61 /dev/sr0 [4:0:0:0] disk Generic- xD/SD/M.S. 1.00 /dev/sdb
使用-s選項來顯示裝置尺寸。
tecmint@tecmint ~ $ lsscsi -s [0:0:0:0] disk ATA ST1000LM024 HN-M 2BA3 /dev/sda 1.00TB [1:0:0:0] cd/dvd PLDS DVD-RW DA8A5SH RL61 /dev/sr0 - [4:0:0:0] disk Generic- xD/SD/M.S. 1.00 /dev/sdb -
8.如何列印有關SATA裝置的資訊
你可以使用hdparm實用工具在系統上找到有關sata裝置的一些資訊,如下所示。在下面的例子中,我使用了塊裝置/ dev / sda1。
tecmint@tecmint ~ $ sudo hdparm /dev/sda1 /dev/sda1: multcount = 0 (off) IO_support = 1 (32-bit) readonly = 0 (off) readahead = 256 (on) geometry = 56065/255/63, sectors = 2048000, start = 2048
要輸出裝置有關柱面、磁頭、扇區、大小和起始偏移量的幾何資訊,使用-g選項。
tecmint@tecmint ~ $ sudo hdparm -g /dev/sda1 /dev/sda1: geometry = 56065/255/63, sectors = 2048000, start = 2048
9.如何輸出Linux檔案系統資訊
為了收集有關檔案系統分割槽的資訊,你可以使用fdisk命令。雖然fdisk命令的主要功能是修改檔案系統分割槽,但我們也可以用它來檢視檔案系統上不同分割槽的資訊。
你可以按如下方法輸出分割槽資訊。記住要用超級使用者的身份執行命令,否則你可能看不到任何輸出。
tecmint@tecmint ~ $ sudo fdisk -l WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted. Disk /dev/sda: 1000.2 GB, 1000204886016 bytes 255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk identifier: 0xcee8ad92 Device Boot Start End Blocks Id System /dev/sda1 1 1953525167 976762583+ ee GPT Partition 1 does not start on physical sector boundary.
10.如何提取有關硬體元件的資訊
你也可以使用dmidecode實用程式通過讀取DMI表中的資料提取硬體資訊。
輸出有關記憶體的資訊,作為超級使用者執行此命令。
tecmint@tecmint ~ $ sudo dmidecode -t memory # dmidecode 2.12 # SMBIOS entry point at 0xaaebef98 SMBIOS 2.7 present. Handle 0x0005, DMI type 5, 24 bytes Memory Controller Information Error Detecting Method: None Error Correcting Capabilities: None Supported Interleave: One-way Interleave Current Interleave: One-way Interleave Maximum Memory Module Size: 8192 MB Maximum Total Memory Size: 32768 MB Supported Speeds: Other Supported Memory Types: Other Memory Module Voltage: Unknown Associated Memory Slots: 4 0x0006 0x0007 0x0008 0x0009 Enabled Error Correcting Capabilities: None ...
要輸出有關係統的資訊,執行此命令。
tecmint@tecmint ~ $ sudo dmidecode -t system # dmidecode 2.12 # SMBIOS entry point at 0xaaebef98 SMBIOS 2.7 present. Handle 0x0001, DMI type 1, 27 bytes System Information Manufacturer: LENOVO Product Name: 20354 Version: Lenovo Z50-70 Serial Number: 1037407803441 UUID: 29D2B1E4-37D2-11E4-9F6E-28D244EBBD98 Wake-up Type: Power Switch SKU Number: LENOVO_MT_20354_BU_idea_FM_Lenovo Z50-70 Family: IDEAPAD ...
要輸出有關BIOS的資訊,執行此命令。
tecmint@tecmint ~ $ sudo dmidecode -t bios # dmidecode 2.12 # SMBIOS entry point at 0xaaebef98 SMBIOS 2.7 present. Handle 0x0000, DMI type 0, 24 bytes BIOS Information Vendor: LENOVO Version: 9BCN26WW Release Date: 07/31/2014 Address: 0xE0000 Runtime Size: 128 kB ROM Size: 4096 kB Characteristics: PCI is supported BIOS is upgradeable BIOS shadowing is allowed Boot from CD is supported Selectable boot is supported EDD is supported Japanese floppy for NEC 9800 1.2 MB is supported (int 13h) Japanese floppy for Toshiba 1.2 MB is supported (int 13h) 5.25"/360 kB floppy services are supported (int 13h) 5.25"/1.2 MB floppy services are supported (int 13h) 3.5"/720 kB floppy services are supported (int 13h) 3.5"/2.88 MB floppy services are supported (int 13h) 8042 keyboard services are supported (int 9h) CGA/mono video services are supported (int 10h) ACPI is supported USB legacy is supported BIOS boot specification is supported Targeted content distribution is supported UEFI is supported BIOS Revision: 0.26 Firmware Revision: 0.26 ...
要輸出關於處理器的資訊,執行此命令。
tecmint@tecmint ~ $ sudo dmidecode -t processor # dmidecode 2.12 # SMBIOS entry point at 0xaaebef98 SMBIOS 2.7 present. Handle 0x0004, DMI type 4, 42 bytes Processor Information Socket Designation: U3E1 Type: Central Processor Family: Core i5 Manufacturer: Intel(R) Corporation ID: 51 06 04 00 FF FB EB BF Signature: Type 0, Family 6, Model 69, Stepping 1 Flags: ...
總結
還有很多其他的方法能讓你用來獲取有關係統硬體元件的資訊。這些命令中的大多數使用/ proc目錄下的檔案來提取系統資訊。
希望這些方法和技巧能對你有用,如果你有任何其他看法的話,歡迎留言評論。
譯文連結:http://www.codeceo.com/article/10-linux-command-collect-info.html
英文原文:10 Useful Commands to Collect System and Hardware Information in Linux
翻譯作者:碼農網 – 小峰
[ 轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]
相關文章
- 檢查和收集 Linux 硬體資訊的 7 個命令Linux
- 用 Linux 命令顯示硬體資訊Linux
- Linux硬體資訊命令大全Linux
- linux硬體資訊檢視命令(ZT)Linux
- Linux常用資訊收集命令Linux
- Linux 系統下檢視硬體資訊命令大全Linux
- linux 檢視硬體資訊Linux
- rda收集資訊命令
- linux 看硬體配置 命令Linux
- 基於Linux許可權提升的資訊收集Linux
- 利用命令檢視Win10系統硬體配置資訊的方法Win10
- Linux中命令列下檢視硬體資訊及系統版本Linux命令列
- LINUX 檢視硬體配置命令Linux
- LINUX檢視硬體配置命令Linux
- linux 看硬體配置 命令2Linux
- LINUX命令收集Linux
- powershell滲透-資訊收集命令
- 檢視Linux硬體的一些命令Linux
- linux硬體相關的命令(待補充)Linux
- Linux本地資訊收集Linux
- 收集 Linux 命令列執行的命令Linux命令列
- 用C#獲取電腦硬體資訊C#
- Inxi:獲取Linux系統和硬體資訊的神器Linux
- Linux檢視CPU資訊、機器型號等硬體資訊Linux
- Linux系統檢視硬體具體型號資訊Linux
- Linux的10個風險命令Linux
- kudzu命令檢視及設定網路卡等硬體資訊
- 【資訊採集】IBM AIX系統硬體資訊檢視命令(shell指令碼)IBMAI指令碼
- 智慧硬體的商機——資訊圖
- 5 個獲取 Linux 主機資訊的命令Linux
- Linux檢查硬體錯誤工具—mcelog命令Linux
- 【VMware ESXi】使用 smbiosDump 命令獲取伺服器硬體資訊。iOS伺服器
- linux常用易忘命令收集Linux
- Solaris的硬體相關命令(轉)
- 通過Linux系統檢視硬體裝置資訊Linux
- 用 screenfetch 和 linux_logo 顯示帶有酷炫 Linux 標誌的基本硬體資訊LinuxGo
- C 還是 Rust:選擇哪個用於硬體抽象程式設計Rust抽象程式設計
- shell自動收集伺服器硬體系統資訊通過web頁面顯示伺服器Web