GNU/Linux >> Linux の 問題 >  >> Linux

Linux lshwコマンド–Linuxハードウェア情報を取得する

Linux lshwコマンドは、システムのすべてのハードウェア構成を一覧表示します。

lshwコマンドから抽出できる一般的な情報のいくつかは次のとおりです。

  • RAMメモリ情報
  • CPU構成
  • マザーボード情報
  • ハードディスク情報
  • ネットワークデバイス情報

Linuxlshwコマンドの機能

  • XML、JSON、HTMLなどのさまざまな形式で出力を生成する機能。
  • リダイレクト演算子を使用して、出力をファイルに簡単にダンプできます。
  • デフォルトの出力には多くの情報が含まれているため、さまざまなオプションを使用して特定のハードウェア情報を取得できます。
  • GUIもサポートし、デスクトップ環境でのみ役立ちます。ほとんどの場合、これらのコマンドはGUIソフトウェアがないLinuxサーバーで実行します。

lshwコマンドの制限

  • 現時点ではFirewireデバイスを検出していません。
  • 正しいハードウェアの詳細を取得するには、rootまたはsudoを使用してスーパーユーザーとして実行する必要があります。
  • 出力をファイルに保存する-dumpオプションが機能していないことがわかりました。

Linuxハードウェア情報の例

lshwコマンドを使用してLinuxハードウェア情報を取得するためのいくつかの例を見てみましょう。

1。完全な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:~# 

多くの情報があることがわかるように、迅速なハードウェア情報が必要な場合は、-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。 LinuxCPU情報の取得

lshw -C class_nameを実行できます 特定のハードウェアクラス情報を取得します。 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:~# 

複数のCPUがある場合、コマンドはすべてのCPUの情報を提供します。

lshw -C processor コマンドはCPU情報も出力します。

クラス名がわからない場合は、lshwの短い出力で確認してください。

3。 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。 Linuxハードディスク情報の取得

root@localhost:~# sudo lshw -C storage

5。 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。 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。 HTML、XML、およびJSON形式のLinuxハードウェア情報

lshwコマンドのデフォルト出力はプレーンテキストです。対応するオプションを指定することで、HTML、XML、および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。 Linuxハードウェア情報をファイルに保存する

lshwコマンドで-dumpオプションを使用しようとしましたが、うまくいきませんでした。ただし、いつでもリダイレクト演算子(>)を使用して新しいファイルに保存できます。

# sudo lshw -html > hardware_info.html

結論

Linux lshwコマンドは、完全なハードウェア情報を取得するためのシンプルなツールです。特定のハードウェア情報をHTMLやJSONなどの複数の形式で取得するためのさまざまなオプションは、他のユーザーと詳細を共有する場合にも非常に役立ちます。

参照 :HardwareLiSter


Linux
  1. 7 PCI バス ハードウェア デバイス情報を取得するための Linux lspci コマンドの例

  2. Linux での lvmdump コマンドの例

  3. Linux での lshw コマンドの例

  1. dmidecode:Linuxでシステムハードウェア情報を取得する

  2. Linux コマンドは未使用のポートを取得します

  3. Linux でマシンのハードウェアに関する情報を取得する

  1. Linuxでシステムとハードウェアの情報を取得する方法

  2. Linuxでシステムおよびハードウェア情報を収集するための10個のコマンド

  3. Linux – Linuxでマシンのハードウェアに関する情報を取得しますか?