我们在 Linux 下进行开发时, 有时也需要知道当前的硬件信息, 比如: CPU 几核? 使用情况? 内存大小及使用情况? USB 设备是否被识别? 等等类似此类问题. 下面良许介绍一些常用的硬件查看命令.
lshw
lshw 这个命令是一个比较通用的工具, 它可以详细的列出本机的硬件信息. 但这个命令并非所有的发行版都有, 比如 Fedora 就默认没有, 需要自己安装.
lshw 可以从各个 /proc 文件中提取出硬件信息, 比如: CPU, 内存, usb 控制器, 硬盘等. 如果不带选项的话, 列出的信息将很长, 加上 -short 选项时, 将只列出概要信息.
- [alvin@VM_0_16_centos ~]$ sudo lshw -short
- # 篇幅关系, 以下结果有删减
- H/W path Device Class Description
- ==========================================================
- system Bochs
- /0 bus Motherboard
- /0/0 memory 96KiB BIOS
- /0/401 processor Intel(R) Xeon(R) CPU E5-26xx v4
- /0/1000 memory 2GiB System Memory
- /0/1000/0 memory 2GiB DIMM RAM
- /0/100 bridge 440FX - 82441FX PMC [Natoma]
- /0/100/1 bridge 82371SB PIIX3 ISA [Natoma/Triton II]
- /0/100/1.1/0.1.0 /dev/cdrom disk QEMU DVD-ROM
- /0/100/1.2/1 usb1 bus UHCI Host Controller
- /0/100/1.3 bridge 82371AB/EB/MB PIIX4 ACPI
- /0/100/4/0/1 /dev/vda1 volume 49GiB EXT3 volume
- /0/100/5 generic Virtio memory balloon
- /0/100/5/0 generic Virtual I/O device
- /0/1 system PnP device PNP0b00
- /0/2 input PnP device PNP0303
- lscpu
lscpu 可以列出本机的 CPU 的相关信息, 该命令没有任何选项及参数.
- [alvin@VM_0_16_centos ~]$ lscpu
- Architecture: x86_64
- CPU op-mode(s): 32-bit, 64-bit
- Byte Order: Little Endian
- CPU(s): 1
- On-line CPU(s) list: 0
- Thread(s) per core: 1
- Core(s) per socket: 1
- Socket(s): 1
- NUMA node(s): 1
- Vendor ID: GenuineIntel
- CPU family: 6
- Model: 79
- Model name: Intel(R) Xeon(R) CPU E5-26xx v4
- Stepping: 1
- CPU MHz: 2399.988
- BogoMIPS: 4799.97
- Hypervisor vendor: KVM
- Virtualization type: full
- L1d cache: 32K
- L1i cache: 32K
- L2 cache: 4096K
- NUMA node0 CPU(s): 0
- lsusb
lsusb 列出与本机相连的所有 USB 设备的信息. 默认情况下, 只列出概要信息, 使用 -v 选项可以列出每一个 USB 口的详细信息.
- [alvin@VM_0_16_centos ~]$ lsusb
- Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
- Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub
- Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
- lsscsi
lsscsi 可以列出诸如硬盘 / 光驱等 SCSI/SATA 设备信息.
- [alvin@VM_0_16_centos ~]$ lsscsi
- [0:0:1:0] cd/dvd QEMU QEMU DVD-ROM 1.2. /dev/sr0
- lspci
lspci 列出所有 PCI 总线, 以及与 PCI 总线相连的所有设备的详细信息, 比如 VGA 适配器, 显卡, 网络适配器, usb 端口, SATA 控制器等.
- [alvin@VM_0_16_centos ~]$ lspci
- 00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
- 00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
- 00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
- 00:01.2 USB controller: Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II] (rev 01)
- 00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
- 00:02.0 VGA compatible controller: Cirrus Logic GD 5446
- 00:03.0 Ethernet controller: Red Hat, Inc Virtio network device
- 00:04.0 SCSI storage controller: Red Hat, Inc Virtio block device
- 00:05.0 Unclassified device [00ff]: Red Hat, Inc Virtio memory balloon
- df
df 命令可以列出不同分区的大小, 使用情况, 使用率, 挂载点等信息, 加上 -h 选项可以以 k, M, G 等单位表示大小, 否则默认是字节, 不容易阅读.
- [alvin@VM_0_16_centos ~]$ df -h
- Filesystem Size Used Avail Use% Mounted on
- /dev/vda1 50G 7.5G 40G 16% /
- devtmpfs 911M 0 911M 0% /dev
- tmpfs 920M 68K 920M 1% /dev/shm
- tmpfs 920M 364K 920M 1% /run
- tmpfs 920M 0 920M 0% /sys/fs/cgroup
- tmpfs 184M 0 184M 0% /run/user/0
- tmpfs 184M 0 184M 0% /run/user/1001
- tmpfs 184M 0 184M 0% /run/user/1000
- free
free 命令可以查看系统中使用的, 闲置的和 RAM 的总体数量, 一般带上 -m 参数.
- [alvin@VM_0_16_centos ~]$ free -m
- total used free shared buff/cache available
- Mem: 1839 221 156 0 1461 1400
- Swap: 0 0 0
来源: http://os.51cto.com/art/201905/596946.htm