使用Hwinfo查找Linux系统硬件信息

时间:2020-03-21 11:43:39  来源:igfitidea点击:

有许多程序可用于查找Linux系统中的硬件和软件信息。

今天,我们将学习另一个名为Hwinfo的类似工具。
Hwinfo是一个免费的开放源代码和命令行实用程序,用于查找Linux系统硬件信息。

Hwinfo会探测Linux系统中存在的硬件,并显示每个硬件设备的详细信息。
如果我们认为细节太多而无法理解,则Hwinfo提供了一个显示缩写输出的选项。
它使用libhd.so库收集几乎所有硬件的详细信息,例如BIOS,CPU,体系结构,内存,硬盘,分区,相机,蓝牙,CD/DVD驱动器,键盘/鼠标,图形卡,显示器,调制解调器,Scanner,打印机,PCI,IDE,SCSI,声卡,网络接口卡,USB等。

Hwinfo最初是为openSUSE操作系统开发的。
后来被其他一些流行的Linux发行版采用,例如Arch Linux,Debian,Fedora,RHEL,CentOS,Ubuntu等。

在Linux中安装hwinfo

hwinfo在许多Linux发行版的官方存储库中都可用。

在Arch Linux及其类似Manjaro Linux的变体上,使用以下命令安装hwinfo:

$sudo pacman -S hwinfo

在Debian,Ubuntu上:

$sudo apt install hwinfo

在Fedora上:

$sudo dnf install hwinfo

在CentOS上,RHEL:

首先,使用以下命令启用[EPEL]存储库:

$sudo dnf install epel-release

然后使用以下命令安装hwinfo:

$sudo yum install hwinfo

在openSUSE上:

$sudo zypper install hwinfo

使用Hwinfo查找Linux系统硬件信息

当不带任何选项运行Hwinfo时,我们将获得Linux系统中存在的硬件的完整详细信息:

$sudo hwinfo

或者,

$sudo hwinfo --all

输出示例:

============ start debug info ============                      
libhd version 21.68 (x86-64) [7688]
using /var/lib/hardware
kernel version is 5.4
----- /proc/cmdline ----
  BOOT_IMAGE=/boot/vmlinuz-5.4.0-29-generic root=UUID=3968763a-adde-46e0-ae93-e2a1e51120da ro quiet splash vt.handoff=7
----- /proc/cmdline end ----
debug = 0xff7ffff7
probe = 0x15938fcdaa17fcf9fffe (+memory +pci +isapnp +net +floppy +misc +misc.serial +misc.par +misc.floppy +serial +cpu +bios +monitor +mouse +scsi +usb -usb.mods +modem +modem.usb +parallel +parallel.lp +parallel.zip -isa -isa.isdn +isdn +kbd +prom +sbus +int +braille +braille.alva +braille.fhp +braille.ht -ignx11 +sys -bios.vbe -isapnp.old -isapnp.new -isapnp.mod +braille.baum -manual +fb +pppoe -scan +pcmcia +fork -parallel.imm +s390 +cpuemu -sysfs -s390disks +udev +block +block.cdrom +block.part +edd +edd.mod -bios.ddc -bios.fb -bios.mode +input +block.mods +bios.vesa -cpuemu.debug -scsi.noserial +wlan -bios.crc -hal +bios.vram +bios.acpi -bios.ddc.ports=0 +modules.pata -net.eeprom +x86emu=dump -max -lxrc)
shm: attached segment 131081 at 0x7f3ae1378000
>> hal.1: read hal data
>> floppy.1: get nvram
----- /proc/nvram ----
  Checksum status: valid
  # floppies     : 3
  Floppy 0 type  : none
  Floppy 1 type  : none
  HD 0 type      : 02
  HD 1 type      : 01
  HD type 48 data: 44876/196/142 C/H/S, precomp 45431, lz 38938
  HD type 49 data: 511/175/180 C/H/S, precomp 40874, lz 56627
  DOS base memory: 629 kB
  Extended memory: 65535 kB (configured), 65535 kB (tested)
  Gfx adapter    : CGA (80 cols)
  FPU            : installed
----- /proc/nvram end ----
>> floppy.2: nvram info
>> bios.1: cmdline
>> bios.1.1: apm
>> bios.2: ram
/dev/mem[0x400, 256]: mmap(, 4096,,,, 0x0) ok
/dev/mem[0xc0000, 262144]: mmap(, 262144,,,, 0xc0000) ok
[...]

如前所述,Hwinfo将报告所有硬件设备的详细信息。
幸运的是,有一个选项可以显示每个设备的摘要,从而使读取输出变得更加容易。

要显示硬件信息的简短摘要,请运行:

$sudo hwinfo --short

输出示例:

cpu:                                                            
                       Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz, 1508 MHz
                       Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz, 1371 MHz
                       Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz, 1516 MHz
                       Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz, 1333 MHz
keyboard:
                       Logitech Unifying Receiver
  /dev/input/event4    AT Translated Set 2 keyboard
mouse:
                       Logitech Unifying Receiver
  /dev/input/mice      AlpsPS/2 ALPS GlidePoint
monitor:
                       4Y4GM 156AT LCD Monitor
graphics card:
                       Intel 2nd Generation Core Processor Family Integrated Graphics Controller
sound:
                       Intel 6 Series/C200 Series Chipset Family High Definition Audio Controller
storage:
                       Intel 6 Series/C200 Series Chipset Family 6 port Mobile SATA AHCI Controller
network:
  wlp9s0               Dell Wireless 1702 802.11bgn Half-size Mini PCIe Card [AR9002WB-1NGCD]
  enp5s0               Realtek RTL810xE PCI Express Fast Ethernet controller
network interface:
  mpqemubr0-dummy      Ethernet network interface
  tap-d8f1eebb39f      Ethernet network interface
  wlp9s0               Ethernet network interface
  mpqemubr0            Ethernet network interface
  lo                   Loopback network interface
  enp5s0               Ethernet network interface
disk:
  /dev/sdb             Generic Multi-Card
  /dev/sda             ST9500325AS
                       Realtek RTS5138 Card Reader Controller
partition:
  /dev/sda1            Partition
cdrom:
  /dev/sr0             PLDS DVD+-RW DS-8A8SH
usb controller:
                       Intel 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2
                       Intel 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1
bios:
                       BIOS
bridge:
                       Intel 6 Series/C200 Series Chipset Family PCI Express Root Port 1
                       Intel HM67 Express Chipset LPC Controller
                       Intel 6 Series/C200 Series Chipset Family PCI Express Root Port 8
                       Intel 6 Series/C200 Series Chipset Family PCI Express Root Port 4
                       Intel 2nd Generation Core Processor Family DRAM Controller
                       Intel 6 Series/C200 Series Chipset Family PCI Express Root Port 2
hub:
                       Intel Integrated Rate Matching Hub
                       Linux Foundation 2.0 root hub
                       Intel Integrated Rate Matching Hub
                       Linux Foundation 2.0 root hub
memory:
                       Main Memory
bluetooth:
                       Qualcomm Atheros AR3011 Bluetooth
unknown:
                       FPU
                       DMA controller
                       PIC
                       Keyboard controller
                       PS/2 Controller
                       Intel 6 Series/C200 Series Chipset Family MEI Controller #1
                       Intel 6 Series/C200 Series Chipset Family SMBus Controller
                       Logitech Unifying Receiver
                       Suyin Integrated Webcam

看?
上面的命令排除了全面的技术细节,仅显示每个硬件设备的基本细节。
现在,更容易知道系统中存在哪些硬件。

使用Hwinfo显示特定于设备的信息

Hwinfo不仅显示完整的硬件信息,而且还显示单个设备的详细信息。
我们可以列出特定硬件的详细信息。

在Linux中使用Hwinfo显示CPU详细信息

例如,以下命令显示CPU的详细信息:

$sudo hwinfo --cpu

这将完成CPU的详细信息。

01: None 00.0: 10103 CPU                                        
  [Created at cpu.465]
  Unique ID: rdCR.j8NaKXDZtZ6
  Hardware Class: cpu
  Arch: X86-64
  Vendor: "GenuineIntel"
  Model: 6.42.7 "Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz"
  Features: fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,dts,acpi,mmx,fxsr,sse,sse2,ht,tm,pbe,syscall,nx,rdtscp,lm,constant_tsc,arch_perfmon,pebs,bts,rep_good,nopl,xtopology,nonstop_tsc,cpuid,aperfmperf,pni,pclmulqdq,dtes64,monitor,ds_cpl,vmx,est,tm2,ssse3,cx16,xtpr,pdcm,pcid,sse4_1,sse4_2,x2apic,popcnt,tsc_deadline_timer,xsave,avx,lahf_lm,epb,pti,ssbd,ibrs,ibpb,stibp,tpr_shadow,vnmi,flexpriority,ept,vpid,xsaveopt,dtherm,arat,pln,pts,md_clear,flush_l1d
  Clock: 1437 MHz
  BogoMips: 4589.48
  Cache: 3072 kb
  Units/Processor: 16
  Config Status: cfg=new, avail=yes, need=no, active=unknown
[...]

当然,我们可以显示CPU的简短摘要:

$sudo hwinfo --short --cpu

输出示例:

cpu:                                                            
                       Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz, 1650 MHz
                       Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz, 1803 MHz
                       Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz, 1462 MHz
                       Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz, 1621 MHz

在Linux中使用Hwinfo显示系统架构详细信息

要查找系统架构详细信息,请运行:

$sudo hwinfo --arch

或者,

$sudo hwinfo --short --arch

在Linux中使用Hwinfo显示内存详细信息

要查找内存(内存)详细信息,请运行:

$sudo hwinfo --memory

或者,

$sudo hwinfo --short --memory

在Linux中使用Hwinfo显示磁盘详细信息

要查找硬盘详细信息,请运行:

$sudo hwinfo --disk

或者,

$sudo hwinfo --short --disk

在Linux中使用Hwinfo显示分区详细信息

要查找硬盘的分区详细信息,请运行:

$sudo hwinfo --partition

或者,

$sudo hwinfo --short --partition

在Linux中使用Hwinfo显示网络详细信息

要查找网络接口卡的详细信息,请运行:

$sudo hwinfo --network

或者,

$sudo hwinfo --short --network

在Linux中使用Hwinfo显示声卡详细信息

要查找声卡详细信息,请运行:

$sudo hwinfo --sound

或者,

$sudo hwinfo --short --sound

在Linux中使用Hwinfo显示BiOS详细信息

要查找BIOS详细信息,请运行:

$sudo hwinfo --bios

或者,

$sudo hwinfo --short --bios

同样,Hwinfo可以探测所有其他硬件项目。
可用的硬件项目列表为:

  • all,
  • arch,
  • bios,
  • block,
  • bluetooth,
  • braille,
  • bridge,
  • camera,
  • cdrom,
  • chipcard,
  • cpu,
  • disk,
  • dsl,
  • dvb,
  • fingerprint,
  • floppy,
  • framebuffer,
  • gfxcard,
  • hub,
  • ide,
  • isapnp,
  • isdn,
  • joystick,
  • keyboard,
  • memory,
  • mmc-ctrl,
  • modem,
  • monitor,
  • mouse,
  • netcard,
  • network,
  • partition,
  • pci,
  • pcmcia,
  • pcmcia-ctrl,
  • pppoe,
  • printer,
  • redasd,
  • reallyall,
  • scanner,
  • scsi,
  • smp,
  • sound,
  • storage-ctrl,
  • sys,
  • tape,
  • tv,
  • uml,
  • usb,
  • usb-ctrl,
  • vbe,
  • wlan,
  • xen,
  • zip.

将硬件信息导出到文件

Hwinfo可用于生成完整的系统硬件报告,并轻松将详细信息导出到文本文件。
然后,我们可以将其与支持人员或者同事共享,以进行故障排除。

以下命令将所有硬件信息转储到名为“ hardwareinfo.txt”的文本文件中。

$hwinfo --all --log hardwareinfo.txt

或者,

$hwinfo --all > hardwareinfo.txt

也可以将特定的硬件设备详细信息(例如键盘)导出到文件中:

$hwinfo --keyboard > hardwareinfo.txt

获得帮助

要显示Hwino帮助部分,请运行:

$hwinfo --help

有关更多详细信息,请参见手册页。

$man hwinfo