收集系统和硬件信息的10个Linux命令
在Linux系统中,有很多命令可以用来收集系统和硬件信息,这些信息对于系统管理员或使用者来说都非常有用。下面我们将介绍10个常用的Linux命令。
1. uname
uname
命令用于显示系统的相关信息,例如操作系统名称、内核版本和系统架构等。以下是该命令的示例代码:
$ uname -a
Linux ubuntu 5.4.0-83-generic #93-Ubuntu SMP Thu Sep 23 17:49:58 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
2. lspci
lspci
命令用于显示计算机硬件信息,例如PCI总线上连接的设备列表。以下是该命令的示例代码:
$ lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller (rev 06)
00:01.0 PCI bridge: Intel Corporation 4th Gen Core Processor PCIe x16 Controller (rev 06)
...
3. lsblk
lsblk
命令用于显示信息块设备的信息,例如磁盘分区的情况。以下是该命令的示例代码:
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931.5G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
├─sda2 8:2 0 39.2G 0 part /
...
4. iostat
iostat
命令用于显示磁盘和CPU的性能信息,例如磁盘读写速度、CPU利用率以及平均负载等。以下是该命令的示例代码:
$ iostat
Linux 5.4.0-83-generic (ubuntu) 09/28/2021 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
5.27 0.00 1.41 1.63 0.00 91.69
Device tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 8.17 280.14 209.54 6754956416 5053124599
5. vmstat
vmstat
命令用于显示系统的虚拟内存状态信息,例如内存使用情况、虚拟内存交换情况和进程数量等。以下是该命令的示例代码:
$ vmstat
procs memory swap io system cpu
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 13208 493292 93816 185M 0 0 53 43 444 226 5 1 94 0 0
6. df
df
命令用于显示磁盘空间的情况,例如文件系统容量、已用容量和可用容量等。以下是该命令的示例代码:
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 7.8G 0 7.8G 0% /dev
tmpfs 1.6G 2.5M 1.6G 1% /run
/dev/sda2 39G 7.6G 29G 21% /
...
7. free
free
命令用于显示系统内存的情况,例如总内存、已用内存和空闲内存等。以下是该命令的示例代码:
$ free -m
total used free shared buff/cache available
Mem: 7825 1995 4452 242 1376 5229
Swap: 2027 0 2027
8. top
top
命令用于显示系统进程的情况,例如进程的CPU使用率、内存使用率和进程数等。以下是该命令的示例代码:
$ top
top - 21:10:18 up 1:10, 1 user, load average: 0.05, 0.07, 0.02
Tasks: 190 total, 2 running, 148 sleeping, 0 stopped, 0 zombie
%Cpu(s): 6.8 us, 1.1 sy, 0.0 ni, 91.8 id, 0.2 wa, 0.0 hi, 0.1 si, 0.0 st
MiB Mem : 7825.5 total, 4452.0 free, 1863.3 used, 1509.7 buff/cache
MiB Swap: 2027.0 total, 2027.0 free, 0.0 used. 5294.4 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
...
9. ps
ps
命令用于显示进程列表,例如当前运行的进程和其状态等。以下是该命令的示例代码:
$ ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Sep25 ? 00:00:03 /sbin/init splash
...
10. hwinfo
hwinfo
命令用于显示硬件信息,例如CPU、硬盘、内存和网卡等。以下是该命令的示例代码:
$ sudo hwinfo
...
38: PCI 19.0: 0200 Ethernet controller
[Created at pci.386]
Unique ID: kzGz.FauYzbHX6P7
SysFS ID: /devices/pci0000:00/0000:00:19.0
SysFS BusID: 0000:00:19.0
Hardware Class: network
Model: "Intel Ethernet Connection I217-LM"
Vendor: pci 0x8086 "Intel Corporation"
Device: pci 0x153a "Ethernet Connection I217-LM"
SubVendor: pci 0x8086 "Intel Corporation"
SubDevice: pci 0x2110
Revision: 0x04
Driver: "e1000e"
Driver Modules: "e1000e"
Device File: eno1
HW Address: 00:22:67:f6:f8:85
Link detected: yes
Module Alias: "pci:v00008086d0000153Asv00008086sd00002110bc02sc00i00"
Driver Info #0:
Driver Status: e1000e is active
Driver Activation Cmd: "modprobe e1000e"
Features: PM, LAN, RxChecksum, TxChecksum, TCPv4_CSUM_OK, TCPv4_CSUM_ZERO_FILL, TCPv6_CSUM_OK, TCPv6_CSUM_ZERO_FILL, UDP_CSUM_OK, UDP_CSUM_ZERO_FILL, TCP_LRO, TSO4, TSO6, FCoE_CRC, FCoE_MPA, EEH, LRO
HW Protection Capabilities:
IPSec Offload: Supported
IPSec Offload Engine: Intel(R) Advanced Vector Extensions (AVX)
Second IPSec Offload: Disabled
Anti Spoofing: Supported
Speed: 1000 Mbps
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
MDI-X: on (auto)
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x0000003f (63)
.
结论
以上列举的这些命令只是Linux系统中众多命令中的一部分,但这些命令对于管理员或使用者来说都非常有用。通过这些命令,我们可以轻松地了解Linux系统的性能状况,进而找到相关问题的解决办法。