GNU/Linux >> Znalost Linux >  >> Linux

Příkaz Linux lshw – Získejte informace o hardwaru Linuxu

Příkaz lshw pro Linux uvádí všechny hardwarové konfigurace systému.

Některé z běžných informací, které můžeme získat z příkazu lshw, jsou:

  • Informace o paměti RAM
  • Konfigurace CPU
  • Informace o základní desce
  • Informace o pevném disku
  • Informace o síťových zařízeních

Funkce příkazu Linux lshw

  • Schopnost vytvářet výstup v různých formátech, jako je XML, JSON a HTML.
  • Výstup můžeme snadno uložit do souboru pomocí operátoru přesměrování.
  • Výchozí výstup obsahuje mnoho informací, konkrétní informace o hardwaru můžeme získat pomocí různých možností.
  • Podporuje také grafické uživatelské rozhraní, užitečné pouze pro desktopová prostředí. Většinu času spouštíme tyto příkazy na serveru Linux, kde nemáme software GUI.

omezení příkazů lshw

  • V tuto chvíli nedetekuje zařízení Firewire.
  • Abyste získali správné podrobnosti o hardwaru, musí být spuštěn jako superuživatel, buď root, nebo pomocí sudo.
  • Zjistil jsem, že možnost -dump pro uložení výstupu do souboru nefunguje.

Příklady informací o hardwaru Linux

Podívejme se na několik příkladů, jak získat informace o hardwaru linuxu pomocí příkazu lshw.

1. Získání úplných informací o hardwaru Linux

root@localhost:~# sudo lshw
localhost                   
    description: Computer
    product: Standard PC (Q35 + ICH9, 2009)
    vendor: QEMU
    version: pc-q35-3.1
    width: 64 bits
    capabilities: smbios-2.8 dmi-2.8 vsyscall32
    configuration: boot=normal
  *-core
       description: Motherboard
       physical id: 0
     *-firmware
          description: BIOS
          vendor: SeaBIOS
          physical id: 0
          version: rel-1.12.0-0-ga698c8995f-prebuilt.qemu.org
          date: 04/01/2014
          size: 96KiB
     *-cpu
          description: CPU
          product: AMD EPYC 7501 32-Core Processor
          vendor: Advanced Micro Devices [AMD]
          physical id: 400
          bus info: cpu@0
          version: pc-q35-3.1
          slot: CPU 0
          size: 2GHz
          capacity: 2GHz
          width: 64 bits
          capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp x86-64 rep_good nopl cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw perfctr_core ssbd ibpb vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 virt_ssbd arat
          configuration: cores=1 enabledcores=1 threads=1
     *-memory
          description: System Memory
          physical id: 1000
          size: 2GiB
          capacity: 2GiB
          capabilities: ecc
          configuration: errordetection=multi-bit-ecc
        *-bank
             description: DIMM RAM
             vendor: QEMU
             physical id: 0
             slot: DIMM 0
             size: 2GiB
     *-pci
          description: Host bridge
          product: 82G33/G31/P35/P31 Express DRAM Controller
          vendor: Intel Corporation
          physical id: 100
          bus info: pci@0000:00:00.0
          version: 00
          width: 32 bits
          clock: 33MHz
        *-display UNCLAIMED
             description: VGA compatible controller
             physical id: 1
             bus info: pci@0000:00:01.0
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: vga_controller
             configuration: latency=0
             resources: memory:fd000000-fdffffff memory:febd0000-febd0fff memory:c0000-dffff
        *-scsi:0
             description: SCSI storage controller
             product: Virtio SCSI
             vendor: Red Hat, Inc.
             physical id: 2
             bus info: pci@0000:00:02.0
             version: 00
             width: 64 bits
             clock: 33MHz
             capabilities: scsi msix bus_master cap_list
             configuration: driver=virtio-pci latency=0
             resources: irq:22 ioport:c000(size=64) memory:febd1000-febd1fff memory:fe000000-fe003fff
           *-virtio0 UNCLAIMED
                description: Virtual I/O device
                physical id: 0
                bus info: virtio@0
                configuration: driver=virtio_scsi
        *-scsi:1
             description: SCSI storage controller
             product: Virtio SCSI
             vendor: Red Hat, Inc.
             physical id: 3
             bus info: pci@0000:00:03.0
             version: 00
             width: 64 bits
             clock: 33MHz
             capabilities: scsi msix bus_master cap_list
             configuration: driver=virtio-pci latency=0
             resources: irq:23 ioport:c040(size=64) memory:febd2000-febd2fff memory:fe004000-fe007fff
           *-virtio1 UNCLAIMED
                description: Virtual I/O device
                physical id: 0
                bus info: virtio@1
                configuration: driver=virtio_scsi
        *-network
             description: Ethernet controller
             product: Virtio network device
             vendor: Red Hat, Inc.
             physical id: 4
             bus info: pci@0000:00:04.0
             version: 00
             width: 64 bits
             clock: 33MHz
             capabilities: msix bus_master cap_list rom
             configuration: driver=virtio-pci latency=0
             resources: irq:20 ioport:c0c0(size=32) memory:febd3000-febd3fff memory:fe008000-fe00bfff memory:feb80000-febbffff
           *-virtio2
                description: Ethernet interface
                physical id: 0
                bus info: virtio@2
                logical name: eth0
                serial: f2:3c:92:d4:76:9e
                capabilities: ethernet physical
                configuration: autonegotiation=off broadcast=yes driver=virtio_net driverversion=1.0.0 ip=45.79.122.188 link=yes multicast=yes
        *-isa
             description: ISA bridge
             product: 82801IB (ICH9) LPC Interface Controller
             vendor: Intel Corporation
             physical id: 1f
             bus info: pci@0000:00:1f.0
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: isa
             configuration: driver=lpc_ich latency=0
             resources: irq:0
        *-storage
             description: SATA controller
             product: 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode]
             vendor: Intel Corporation
             physical id: 1f.2
             bus info: pci@0000:00:1f.2
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: storage msi ahci_1.0 bus_master cap_list
             configuration: driver=ahci latency=0
             resources: irq:31 ioport:c0e0(size=32) memory:febd4000-febd4fff
        *-serial UNCLAIMED
             description: SMBus
             product: 82801I (ICH9 Family) SMBus Controller
             vendor: Intel Corporation
             physical id: 1f.3
             bus info: pci@0000:00:1f.3
             version: 02
             width: 32 bits
             clock: 33MHz
             configuration: latency=0
             resources: ioport:700(size=64)
     *-scsi:0
          physical id: 1
          logical name: scsi0
        *-disk
             description: EXT4 volume
             product: QEMU HARDDISK
             vendor: Linux
             physical id: 0.0.0
             bus info: scsi@0:0.0.0
             logical name: /dev/sda
             logical name: /
             version: 1.0
             serial: ccf427b1-b94a-4237-b067-d9e9fc34756f
             size: 49GiB
             capabilities: 5400rpm journaled extended_attributes large_files huge_files dir_nlink recover extents ext4 ext2 initialized
             configuration: ansiversion=5 created=2020-02-19 14:27:58 filesystem=ext4 lastmountpoint=/ logicalsectorsize=512 modified=2020-04-28 08:10:42 mount.fstype=ext4 mount.options=rw,relatime,errors=remount-ro,data=ordered mounted=2020-04-28 08:10:43 sectorsize=512 state=mounted
     *-scsi:1
          physical id: 2
          logical name: scsi1
        *-disk
             description: Linux swap volume
             product: QEMU HARDDISK
             vendor: QEMU
             physical id: 0.1.2
             bus info: scsi@1:0.1.2
             logical name: /dev/sdb
             version: 1
             serial: 179fdb40-6f5a-4973-99fd-2c0dfee57907
             size: 512MiB
             capacity: 512MiB
             capabilities: 5400rpm swap initialized
             configuration: ansiversion=5 filesystem=swap logicalsectorsize=512 pagesize=4096 sectorsize=512
root@localhost:~# 

Jak vidíte, je to hodně informací, pokud chcete rychlé informace o hardwaru, spusťte je pomocí volby -short.

root@localhost:~# sudo lshw -short
H/W path     Device    Class      Description
=============================================
                       system     Standard PC (Q35 + ICH9, 2009)
/0                     bus        Motherboard
/0/0                   memory     96KiB BIOS
/0/400                 processor  AMD EPYC 7501 32-Core Processor
/0/1000                memory     2GiB System Memory
/0/1000/0              memory     2GiB DIMM RAM
/0/100                 bridge     82G33/G31/P35/P31 Express DRAM Controller
/0/100/1               display    VGA compatible controller
/0/100/2               storage    Virtio SCSI
/0/100/2/0             generic    Virtual I/O device
/0/100/3               storage    Virtio SCSI
/0/100/3/0             generic    Virtual I/O device
/0/100/4               network    Virtio network device
/0/100/4/0   eth0      network    Ethernet interface
/0/100/1f              bridge     82801IB (ICH9) LPC Interface Controller
/0/100/1f.2            storage    82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA Controller [AHCI mode]
/0/100/1f.3            bus        82801I (ICH9 Family) SMBus Controller
/0/1         scsi0     storage    
/0/1/0.0.0   /dev/sda  volume     49GiB QEMU HARDDISK
/0/2         scsi1     storage    
/0/2/0.1.2   /dev/sdb  volume     512MiB QEMU HARDDISK
root@localhost:~# 

2. Získání informací o procesoru Linux

Můžeme spustit lshw -C class_name získat informace o konkrétní hardwarové třídě. Podívejme se, jak získat informace o CPU.

root@localhost:~# sudo lshw -C cpu
  *-cpu                     
       description: CPU
       product: AMD EPYC 7501 32-Core Processor
       vendor: Advanced Micro Devices [AMD]
       physical id: 400
       bus info: cpu@0
       version: pc-q35-3.1
       slot: CPU 0
       size: 2GHz
       capacity: 2GHz
       width: 64 bits
       capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp x86-64 rep_good nopl cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw perfctr_core ssbd ibpb vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 virt_ssbd arat
       configuration: cores=1 enabledcores=1 threads=1
root@localhost:~# 

Pokud máte více CPU, pak příkaz poskytne informace o všech CPU.

lshw -C processor příkaz také vytiskne informace o CPU.

Pokud si nejste jisti názvem třídy, podívejte se na něj v krátkém výstupu lshw.

3. Získání informací o paměti Linux

root@localhost:~# sudo lshw -C memory
  *-firmware                
       description: BIOS
       vendor: SeaBIOS
       physical id: 0
       version: rel-1.12.0-0-ga698c8995f-prebuilt.qemu.org
       date: 04/01/2014
       size: 96KiB
  *-memory
       description: System Memory
       physical id: 1000
       size: 2GiB
       capacity: 2GiB
       capabilities: ecc
       configuration: errordetection=multi-bit-ecc
     *-bank
          description: DIMM RAM
          vendor: QEMU
          physical id: 0
          slot: DIMM 0
          size: 2GiB
root@localhost:~# 

4. Získání informací o linuxovém pevném disku

root@localhost:~# sudo lshw -C storage

5. Získání informací o základní desce Linux

root@localhost:~# sudo lshw -C bus
  *-core                    
       description: Motherboard
       physical id: 0
  *-serial UNCLAIMED
       description: SMBus
       product: 82801I (ICH9 Family) SMBus Controller
       vendor: Intel Corporation
       physical id: 1f.3
       bus info: pci@0000:00:1f.3
       version: 02
       width: 32 bits
       clock: 33MHz
       configuration: latency=0
       resources: ioport:700(size=64)
root@localhost:~# 

6. Získání informací o síťových rozhraních Linux

root@localhost:~# sudo lshw -C network
  *-network                 
       description: Ethernet controller
       product: Virtio network device
       vendor: Red Hat, Inc.
       physical id: 4
       bus info: pci@0000:00:04.0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: msix bus_master cap_list rom
       configuration: driver=virtio-pci latency=0
       resources: irq:20 ioport:c0c0(size=32) memory:febd3000-febd3fff memory:fe008000-fe00bfff memory:feb80000-febbffff
     *-virtio2
          description: Ethernet interface
          physical id: 0
          bus info: virtio@2
          logical name: eth0
          serial: f2:3c:92:d4:76:9e
          capabilities: ethernet physical
          configuration: autonegotiation=off broadcast=yes driver=virtio_net driverversion=1.0.0 ip=45.79.122.188 link=yes multicast=yes
root@localhost:~# 

7. Informace o hardwaru Linuxu ve formátech HTML, XML a JSON

Výchozí výstup příkazu lshw je v prostém textu. Zadáním odpovídajících možností můžeme získat výstup ve formátech HTML, XML a JSON.

XML:

root@localhost:~# sudo lshw -C bus -xml
<?xml version="1.0" standalone="yes" ?>
<!-- generated by lshw-B.02.18 -->
<!-- GCC 7.3.0 -->
<!-- Linux 4.15.0-88-generic #88-Ubuntu SMP Tue Feb 11 20:11:34 UTC 2020 x86_64 -->
<!-- GNU libc 2 (glibc 2.27) -->
<list>
  <node id="core" claimed="true" class="bus" handle="">
   <description>Motherboard</description>
   <physid>0</physid>
  <node id="serial" class="bus" handle="PCI:0000:00:1f.3">
   <description>SMBus</description>
   <product>82801I (ICH9 Family) SMBus Controller</product>
   <vendor>Intel Corporation</vendor>
   <physid>1f.3</physid>
   <businfo>pci@0000:00:1f.3</businfo>
   <version>02</version>
   <width units="bits">32</width>
   <clock units="Hz">33000000</clock>
   <configuration>
    <setting id="latency" value="0" />
   </configuration>
   <resources>
    <resource type="ioport" value="700(size=64)" />
   </resources>
  </node>
  </node>
</list>
root@localhost:~# 

JSON:

root@localhost:~# sudo lshw -C memory -json
          {                 
    "id" : "firmware",
    "class" : "memory",
    "claimed" : true,
    "description" : "BIOS",
    "vendor" : "SeaBIOS",
    "physid" : "0",
    "version" : "rel-1.12.0-0-ga698c8995f-prebuilt.qemu.org",
    "date" : "04/01/2014",
    "units" : "bytes",
    "size" : 98304
  },
            {
    "id" : "memory",
    "class" : "memory",
    "claimed" : true,
    "handle" : "DMI:1000",
    "description" : "System Memory",
    "physid" : "1000",
    "units" : "bytes",
    "size" : 2147483648,
    "capacity" : 2147483648,
    "configuration" : {
      "errordetection" : "multi-bit-ecc"
    },
    "capabilities" : {
      "ecc" : "Multi-bit error-correcting code (ECC)"
    },
    "children" : [
      {
        "id" : "bank",
        "class" : "memory",
        "claimed" : true,
        "handle" : "DMI:1100",
        "description" : "DIMM RAM",
        "vendor" : "QEMU",
        "physid" : "0",
        "slot" : "DIMM 0",
        "units" : "bytes",
        "size" : 2147483648
      }
    ]
  },
                                                                                          
root@localhost:~# 

HTML:

root@localhost:~# sudo lshw -C memory -html

8. Ukládání informací o hardwaru Linuxu do souboru

Zkoušel jsem použít volbu -dump s příkazem lshw, ale nefungovalo to pro mě. Vždy však můžeme použít operátor přesměrování (>) k uložení do nového souboru.

# sudo lshw -html > hardware_info.html

Závěr

Příkaz lshw pro Linux je jednoduchý nástroj pro získání úplných informací o hardwaru. Různé možnosti, jak získat informace o konkrétním hardwaru a v různých formátech, jako je HTML a JSON, jsou také velmi užitečné při sdílení podrobností s ostatními.

Reference :HardwareLiSter


Linux
  1. Jak získat informace o systému a hardwaru v linuxu

  2. Příklady příkazů lvmdump v Linuxu

  3. Získání informací o hardwaru počítače v Linuxu

  1. dmidecode:Získejte informace o systémovém hardwaru v systému Linux

  2. Linux – Získávání informací o hardwaru stroje v Linuxu?

  3. 7 Příklady příkazů Linux lspci pro získání informací o hardwarovém zařízení sběrnice PCI

  1. 10 příkazů pro sběr informací o systému a hardwaru v Linuxu

  2. Příklady příkazů lshw v Linuxu

  3. Příkaz Linuxu získat nepoužívaný port