Linux中收集【系统】和【硬件】信息的30个常用命令总结

AI 概述
本文介绍了Linux系统与硬件信息收集的常用命令。系统信息收集方面,包括uname、hostname等基础命令,用于获取系统内核、主机标识等信息;还介绍了查看发行版、运行时间、日期、用户登录等信息的命令。硬件信息收集方面,涵盖lscpu、free、lsblk等命令,用于查看CPU、内存、磁盘等硬件信息,还介绍了获取网络接口、磁盘分区、硬盘参数和健康状态等信息的命令,如ip、fdisk、hdparm、smartctl等,最后提到lshw可生成全面硬件报告。
目录
文章目录隐藏
  1. 1. Linux 系统信息收集命令
  2. 2. Linux 硬件信息收集命令

Linux 中收集【系统】和【硬件】信息的 30 个常用命令总结

在 Linux 系统运维中,精准掌握系统与硬件信息是高效管理的基础。无论是日常监控、故障排查,还是性能优化,都需要依赖一系列强大的命令行工具。本文详细梳理了 30 个核心命令,涵盖从系统基础信息(如unamehostname)到硬件深度诊断(如lscpusmartctl)的全场景需求。这些命令不仅能帮助管理员快速识别系统架构、资源使用情况及硬件状态,还能通过脚本化实现自动化运维,显著提升管理效率与系统稳定性。以下是对这些命令的分类解析与实用示例。

1. Linux 系统信息收集命令

1.1 uname – 核心系统信息

显示 Linux 系统内核和硬件架构的基本信息,是最基础的系统识别命令,它能快速确认系统版本、架构,进行软件兼容性检查。常用选项如下:

选项 功能描述 使用场景
-a 显示所有系统信息 快速查看完整的系统概况,用于初步诊断和兼容性检查
-r 显示内核版本号 驱动安装、内核问题排查、安全漏洞评估
-m 显示系统硬件架构 软件包选择、架构兼容性确认
-s 显示内核名称 系统类型识别,确认是否为 Linux 系统
-p 显示处理器类型 处理器架构详细信息查询
-o 显示操作系统名称 确认操作系统类型(通常为 GNU/Linux)

如下,显示信息:

[wyadmin@backup ~]$ uname -a
Linux backup 5.14.0-570.17.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Fri May 23 22:47:01 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
[wyadmin@backup ~]$ uname -r
5.14.0-570.17.1.el9_6.x86_64
[wyadmin@backup ~]$ uname -m
x86_64
[wyadmin@backup ~]$ uname -s
Linux
[wyadmin@backup ~]$ uname -p
x86_64
[wyadmin@backup ~]$ uname -o
GNU/Linux
[wyadmin@backup ~]$ 

1.2 hostname – 主机标识信息

显示或设置系统的主机名,用于网络标识和服务器管理。

选项 功能描述 使用场景
(无选项) 显示当前系统主机名 快速查看服务器标识,日常系统检查
-f 显示完整域名(FQDN) DNS 配置验证、邮件服务器设置、网络服务配置
-I 显示所有网络接口的 IP 地址 网络配置检查、多 IP 服务器管理、防火墙规则设置
-i 显示主机的 IP 地址 快速获取服务器 IP 地址

如下,实际显示信息:

[root@yyzcdb81 ~]# hostname
yyzcdb81
[root@yyzcdb81 ~]# hostname -f
yyzcdb81
[root@yyzcdb81 ~]# hostname -I
172.16.250.81 192.168.122.1 
[root@yyzcdb81 ~]# hostname -i
172.16.250.81
[root@yyzcdb81 ~]# 

1.3 cat /etc/os-release – 发行版信息

查看 Linux 发行版的详细信息文件,包含版本号、发行版名称等。

命令 功能描述 使用场景
cat /etc/os-release 显示详细的发行版信息(标准格式) 获取准确发行版名称、版本号、ID 等标准化信息
cat /etc/*-release 兼容各种发行版的查看方式 在不了解具体发行版时,通用查看发行版信息
lsb_release -a 使用 LSB 标准显示发行版信息 获取符合 Linux 标准基础规范的系统信息,兼容性好

显示如下:

[wyadmin@backup ~]$ cat /etc/os-release
NAME="Rocky Linux"
VERSION="9.6 (Blue Onyx)"
ID="rocky"
ID_LIKE="rhel centos fedora"
VERSION_ID="9.6"
PLATFORM_ID="platform:el9"
PRETTY_NAME="Rocky Linux 9.6 (Blue Onyx)"
ANSI_COLOR="0;32"
LOGO="fedora-logo-icon"
CPE_NAME="cpe:/o:rocky:rocky:9::baseos"
HOME_URL="https://rockylinux.org/"
VENDOR_NAME="RESF"
VENDOR_URL="https://resf.org/"
BUG_REPORT_URL="https://bugs.rockylinux.org/"
SUPPORT_END="2032-05-31"
ROCKY_SUPPORT_PRODUCT="Rocky-Linux-9"
ROCKY_SUPPORT_PRODUCT_VERSION="9.6"
REDHAT_SUPPORT_PRODUCT="Rocky Linux"
REDHAT_SUPPORT_PRODUCT_VERSION="9.6"
[wyadmin@backup ~]$ 

1.4 uptime – 系统运行时间

显示系统已经运行了多长时间,当前登录用户数和系统平均负载。

选项 功能描述 使用场景
(无选项) 显示系统运行时间、登录用户数、系统平均负载 日常系统健康检查、负载监控
-p 以简洁格式显示系统运行时间 快速查看系统连续运行时间,易于阅读
-s 显示系统启动的具体时间戳 系统故障排查、启动时间记录、审计追踪

比如:

[wyadmin@backup ~]$ uptime
 10:11:02 up 82 days, 22:43,  1 user,  load average: 0.08, 0.08, 0.06
[wyadmin@backup ~]$ uptime -p
up 11 weeks, 5 days, 22 hours, 43 minutes
[wyadmin@backup ~]$ uptime -s
2025-10-22 11:27:22
[wyadmin@backup ~]$ 

1.5 date – 系统时间信息

显示或设置系统的日期和时间,支持多种格式输出,适用于时间同步检查、日志时间戳、定时任务调试。

命令格式 功能描述 使用场景
date 显示当前日期和时间(默认格式) 日常时间查看,快速确认系统时间
date +”%Y-%m-%d %H:%M:%S” 自定义格式显示日期时间 日志记录、文件名时间戳、脚本中格式化时间
date -R RFC 2822 格式显示日期时间 邮件头部、HTTP 协议、标准日志格式
date +%s 显示 Unix 时间戳(秒数) 脚本计时、时间间隔计算、数据库时间戳

示例:

[wyadmin@backup ~]$ date
Tue Jan 13 10:16:02 AM CST 2026
[wyadmin@backup ~]$ date +"%Y-%m-%d %H:%M:%S"
2026-01-13 10:16:41
[wyadmin@backup ~]$ date -R
Tue, 13 Jan 2026 10:16:52 +0800
[wyadmin@backup ~]$ date +%s
1768270625
[wyadmin@backup ~]$ 

1.6 who / w – 用户登录信息

显示当前登录系统的用户信息和活动状态。

命令 功能描述 使用场景
who 显示当前登录用户的用户名、终端、登录时间、来源 IP 当前会话监控,多用户系统管理
who -b 显示系统最后一次启动时间 系统稳定性分析,运行时间记录
w 显示详细的用户信息,包括登录时间、空闲时间、当前执行的命令 用户活动监控,系统资源占用分析
last 显示系统登录历史记录(包括登录、重启、关机) 安全审计,异常登录检测,访问历史追踪

举例:

[wyadmin@backup ~]$ who
wyadmin  pts/0        2026-01-13 09:33 (10.10.2.23)
[wyadmin@backup ~]$ who -b
         system boot  2025-10-22 19:27
[wyadmin@backup ~]$ w
 10:22:41 up 82 days, 22:55,  1 user,  load average: 0.15, 0.14, 0.09
USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
wyadmin  pts/0     09:33    0.00s  0.19s  0.00s w
[wyadmin@backup ~]$ last
wyadmin  pts/0        10.10.2.23      Tue Jan 13 09:33   still logged in
wyadmin  pts/0        10.10.2.23      Thu Jan  8 10:46 - 17:30  (06:44)
wyadmin  pts/0        10.10.2.23      Wed Jan  7 17:33 - 17:33  (00:00)
wyadmin  pts/0        10.10.2.23      Wed Jan  7 17:05 - 17:30  (00:24)

1.7 getconf – 系统配置参数

获取系统特定的配置值,如系统位数、内存页大小等。

命令 功能描述 使用场景
getconf LONG_BIT 显示系统位数:32 或 64 软件兼容性检查,确定应安装 32 位还是 64 位软件
getconf PAGE_SIZE 显示内存页大小(通常为 4096 字节) 内存管理和性能调优,内核参数配置参考
getconf -a 显示所有可用的系统配置值 全面的系统配置查看,高级调试和性能优化

举例:

[wyadmin@backup ~]$ getconf LONG_BIT
64
[wyadmin@backup ~]$ getconf PAGE_SIZE
4096
[wyadmin@backup ~]$ 

1.8 runlevel – 系统运行级别

显示当前系统的运行级别(init 系统)或默认目标(systemd 系统)。

命令 功能描述 使用场景
runlevel 显示前一个和当前运行级别(如:N 3) init 系统运行状态检查,启动过程分析
who -r 显示当前运行级别(init 系统) 快速查看系统运行级别,兼容性检查
systemctl get-default 显示 systemd 系统的默认启动目标 systemd 系统默认启动项管理,启动配置检查
systemctl list-units –type=target 显示 systemd 系统中所有可用的目标 systemd 启动目标管理,系统服务配置

举例:

[wyadmin@backup ~]$ runlevel
N 3
[wyadmin@backup ~]$ who -r
         run-level 3  2025-10-22 19:32
[wyadmin@backup ~]$ systemctl get-default
multi-user.target
[wyadmin@backup ~]$ 

1.9 env / printenv – 环境变量

显示当前 shell 环境中的所有环境变量或特定变量。

命令 功能描述 使用场景
env 显示当前 shell 的所有环境变量 全面查看环境配置,调试环境相关问题
printenv 显示所有环境变量(与 env 功能相似) 环境变量查看,脚本兼容性
echo $PATH 显示 PATH 环境变量的内容 检查命令搜索路径,解决命令找不到问题
echo $SHELL 显示当前使用的 shell 程序 确认用户 shell 类型,脚本兼容性检查
env | grep -i lang 查找语言和区域设置相关的环境变量 多语言环境配置,字符编码问题排查

举例:

[wyadmin@backup ~]$ env
SHELL=/bin/bash
HISTCONTROL=ignoredups
HISTSIZE=1000
HOSTNAME=backup
PWD=/home/wyadmin
LOGNAME=wyadmin
XDG_SESSION_TYPE=tty
MODULESHOME=/usr/share/Modules
MANPATH=/usr/share/man:
MOTD_SHOWN=pam
__MODULES_SHARE_MANPATH=:1
HOME=/home/wyadmin
LANG=en_US
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;
……
[wyadmin@backup ~]$ echo$PATH
/home/wyadmin/.local/bin:/home/wyadmin/bin:/usr/share/Modules/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
[wyadmin@backup ~]$ echo$SHELL
/bin/bash
[wyadmin@backup ~]$ env | grep -i lang
LANG=en_US
[wyadmin@backup ~]$ 

1.10 dmesg – 内核日志信息

显示内核环形缓冲区中的消息,包含系统启动时的硬件检测信息,主要进行硬件故障排查、驱动程序问题、启动过程分析。

命令用法 功能描述 使用场景
dmesg | head -50 查看最近 50 条内核消息 快速查看最新的内核事件和硬件检测信息
dmesg | grep -i memory 查找与内存相关的内核消息 内存故障排查,内存模块检测问题
dmesg -T 显示人类可读的时间戳 精确的时间线分析,事件发生时间追踪
dmesg –level=err,warn 只显示错误和警告级别的消息 快速定位系统错误和警告,故障排查

举例:

[wyadmin@backup ~]$ dmesg --level=err,warn
[    0.248891] pnp 00:04: disabling [mem 0xc0000000-0xcfffffff] because it overlaps 0000:00:02.0 BAR 9 [mem 0x00000000-0xdfffffff 64bit pref]
[    0.266009] pci 10000:e0:1d.4: Primary bus is hard wired to 0
[    0.266535] pci 10000:e0:1d.4: Primary bus is hard wired to 0
[    0.424491] pci 10000:e1:00.0: can't override BIOS ASPM; OS doesn't have ASPM control
[    0.424510] pcieport 10000:e0:1d.4: can't derive routing for PCI INT A
[    0.424511] pcieport 10000:e0:1d.4: PCI INT A: no GSI
[    0.427578] hpet_acpi_add: no address or irqs in _CRS
[    0.452491] tpm tpm0: [Firmware Bug]: TPM interrupt not working, polling instead
[    0.710971] ENERGY_PERF_BIAS: Set to 'normal', was 'performance'
[    1.055676] acpi PNP0C14:01: duplicate WMI GUID 05901221-D566-11D1-B2F0-00A0C9062910 (first instance was on PNP0C14:00)
……

1.11 journalctl – 系统日志(systemd 系统)

在 systemd 系统中查看和管理系统日志的强大工具。

命令 功能描述 使用场景
journalctl -k 查看内核日志(类似 dmesg) 内核问题诊断,硬件驱动故障排查
journalctl -b 查看本次系统启动的日志 启动问题分析,服务启动失败排查
journalctl –since “2026-01-10” –until “2026-01-12” 查看指定时间范围内的日志 时间相关事件追踪,安全审计
journalctl -u ssh 查看特定服务(如 ssh)的日志 服务故障排查,服务状态监控
journalctl -f 实时跟踪日志输出 实时监控系统活动,故障实时诊断

举例:

[wyadmin@backup ~]$ journalctl -b
Jan 11 08:31:09 backup sshd[1330041]: pam_unix(sshd:auth): check pass; user unknown
Jan 11 08:31:09 backup sshd[1330041]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 t>
Jan 11 08:31:09 backup rsyslogd[1569]: imjournal: journal files changed, reloading...  [v8.2412.0-1.el9 tr>
Jan 11 08:31:09 backup rsyslogd[1569]: imjournal: journal files changed, reloading...  [v8.2412.0-1.el9 tr>
Jan 11 08:31:09 backup rsyslogd[1569]: imjournal: journal files changed, reloading...  [v8.2412.0-1.el9 tr>
Jan 11 08:31:09 backup sshd[1330045]: pam_unix(sshd:auth): check pass; user unknown
……

1.12 ulimit – 用户资源限制

显示或设置当前用户会话的资源限制,如打开文件数、进程数等。

选项 功能描述 使用场景
-a 显示当前用户会话的所有资源限制 全面查看系统资源限制配置
-n 显示最大可打开文件描述符数量 高并发应用调优,文件处理问题排查
-u 显示最大用户进程数限制 进程数量限制检查,守护进程管理
-c 显示 core 文件大小限制 程序崩溃调试,core dump 文件生成配置

举例:

[wyadmin@backup ~]$ ulimit -a
real-time non-blocking time  (microseconds, -R) unlimited
core file size              (blocks, -c) unlimited
data seg size               (kbytes, -d) unlimited
scheduling priority                 (-e) 0
file size                   (blocks, -f) unlimited
pending signals                     (-i) 62427
max locked memory           (kbytes, -l) 8192
max memory size             (kbytes, -m) unlimited
open files                          (-n) 1024
pipe size                (512 bytes, -p) 8
POSIX message queues         (bytes, -q) 819200
real-time priority                  (-r) 0
stack size                  (kbytes, -s) 8192
cpu time                   (seconds, -t) unlimited
max user processes                  (-u) 62427
virtual memory              (kbytes, -v) unlimited
file locks                          (-x) unlimited
[wyadmin@backup ~]$ ulimit -c
unlimited
[wyadmin@backup ~]$ ulimit -n
1024
[wyadmin@backup ~]$ 

1.13 sysctl – 内核参数

在运行时查看和修改内核参数,影响系统行为和性能。

命令 功能描述 使用场景
sysctl -a 显示所有当前生效的内核参数 全面的内核配置查看,系统调优参考
sysctl kernel.version 显示内核版本参数 内核版本和编译信息确认
sysctl net.ipv4.ip_forward 查看 IP 转发设置状态 网络路由配置检查,网关/路由器功能验证

举例:

[wyadmin@backup ~]$ sysctl kernel.version
kernel.version = #1 SMP PREEMPT_DYNAMIC Fri May 23 22:47:01 UTC 2025
[wyadmin@backup ~]$ sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1
[wyadmin@backup ~]$ 

1.14 systemctl – 服务状态

管理系统服务状态,不同初始化系统使用不同的命令,这里主要针对 systemd 系统。

命令 功能描述 使用场景
systemctl status 显示系统整体状态概览 快速查看系统健康状态,服务运行概况
systemctl list-units –type=service 列出所有系统服务及其状态 服务管理,启动/停止服务操作
systemctl status sshd 查看特定服务(如 ssh)的详细状态 服务故障排查,服务监控和维护

举例:

[wyadmin@backup ~]$ systemctl status
* backup
    State: degraded
    Units: 429 loaded (incl. loaded aliases)
     Jobs: 0 queued
   Failed: 1 units
    Since: Wed 2025-10-22 19:27:24 CST; 2 months 21 days ago
  systemd: 252-51.el9
   CGroup: /
           |-init.scope
           | `-1 /usr/lib/systemd/systemd rhgb --switched-root --system --deserialize 31
           |-system.slice
           | |-ModemManager.service
           | | `-918 /usr/sbin/ModemManager
           | |-NetworkManager.service
           | | `-1048 /usr/sbin/NetworkManager --no-daemon
……

1.15 firewall-cmd – 防火墙状态查看(RHEL/CentOS 系)

firewall-cmd 是 RHEL/CentOS 系列 Linux 系统中用于配置和管理 firewalld 动态防火墙的命令行工具,用它来查看防火墙的信息

命令 功能描述 使用场景
firewall-cmd –state 检查 firewalld 防火墙运行状态 快速确认 firewalld 服务是否正在运行
firewall-cmd –list-all 显示当前区域的所有配置(服务、端口、源等) 查看完整的防火墙规则和区域配置
firewall-cmd –list-ports 列出所有开放的端口 端口开放状态检查,网络服务配置验证
firewall-cmd –list-services 列出所有允许的服务 服务访问权限检查,网络安全审计
firewall-cmd –get-active-zones 显示所有活动的区域 查看当前活动的防火墙区域配置
firewall-cmd –zone=public –list-all 查看指定区域(如 public)的配置 特定区域防火墙规则管理

举例:

[wyadmin@backup ~]$ sudo firewall-cmd --state
running
[wyadmin@backup ~]$ sudo firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: enp1s0
  sources: 
  services: cockpit dhcpv6-client ssh
  ports: 22/tcp
  protocols: 
  forward: yes
  masquerade: no
  forward-ports: 
source-ports: 
  icmp-blocks: 
  rich rules: 
[wyadmin@backup ~]$ sudo firewall-cmd --get-active-zones
public
  interfaces: enp1s0
[wyadmin@backup ~]$ 

2. Linux 硬件信息收集命令

2.1 lscpu – CPU 详细信息

显示 CPU 架构的详细信息,包括型号、核心、线程、缓存等。

# 显示完整的 CPU 信息
[root@backup ~]# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                20
On-line CPU(s) list:   0-19
Thread(s) per core:    2
Core(s) per socket:    10
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 85
Model name:            Intel(R) Xeon(R) Silver 4210R CPU @ 2.40GHz
Stepping:              7
CPU MHz:               1000.195
CPU max MHz:           3200.0000
CPU min MHz:           1000.0000
BogoMIPS:              4800.00
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              1024K
L3 cache:              14080K
NUMA node0 CPU(s):     0-19
……

以扩展表格格式显示:

[root@backup ~]# lscpu -e
CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE MAXMHZ    MINMHZ
0   0    0      0    0:0:0:0       yes    3200.0000 1000.0000
1   0    0      1    1:1:1:0       yes    3200.0000 1000.0000
2   0    0      2    2:2:2:0       yes    3200.0000 1000.0000
3   0    0      3    3:3:3:0       yes    3200.0000 1000.0000
4   0    0      4    4:4:4:0       yes    3200.0000 1000.0000
5   0    0      5    5:5:5:0       yes    3200.0000 1000.0000
6   0    0      6    6:6:6:0       yes    3200.0000 1000.0000
7   0    0      7    7:7:7:0       yes    3200.0000 1000.0000
8   0    0      8    8:8:8:0       yes    3200.0000 1000.0000
9   0    0      9    9:9:9:0       yes    3200.0000 1000.0000
10  0    0      0    0:0:0:0       yes    3200.0000 1000.0000
11  0    0      1    1:1:1:0       yes    3200.0000 1000.0000
12  0    0      2    2:2:2:0       yes    3200.0000 1000.0000
13  0    0      3    3:3:3:0       yes    3200.0000 1000.0000
14  0    0      4    4:4:4:0       yes    3200.0000 1000.0000
15  0    0      5    5:5:5:0       yes    3200.0000 1000.0000
16  0    0      6    6:6:6:0       yes    3200.0000 1000.0000
17  0    0      7    7:7:7:0       yes    3200.0000 1000.0000
18  0    0      8    8:8:8:0       yes    3200.0000 1000.0000
19  0    0      9    9:9:9:0       yes    3200.0000 1000.0000
[root@backup ~]# 

筛选关键信息:

[root@backup ~]# lscpu | grep -E "Model name|CPU\(s\)|Thread"
CPU(s):                20
On-line CPU(s) list:   0-19
Thread(s) per core:    2
Model name:            Intel(R) Xeon(R) Silver 4210R CPU @ 2.40GHz
NUMA node0 CPU(s):     0-19
[root@backup ~]# 

2.2 free – 内存使用情况

显示系统的物理内存和交换空间的使用情况。

人类可读格式(GB/MB)(最常用):

[root@backup ~]# free -h
              total        used        free      shared  buff/cache   available
Mem:            31G        904M         29G         88M        549M         29G
Swap:           47G          0B         47G
[root@backup ~]# 

2.3 lsblk – 块设备信息

列出所有可用的块设备(磁盘、分区)的信息,树状显示。

[root@backup ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0  7.3T  0 disk 
├─sda1            8:1    0  200M  0 part /boot/efi
├─sda2            8:2    0    1G  0 part /boot
├─sda3            8:3    0  7.2T  0 part /data
├─sda4            8:4    0   50G  0 part 
│ └─centos-root 253:0    0   50G  0 lvm  /
└─sda5            8:5    0 15.6G  0 part [SWAP]
sr0              11:0    1 1024M  0 rom  
[root@backup ~]# 

2.4 df – 磁盘空间使用

显示文件系统磁盘空间的使用情况,下面以人类可读格式,同时显示文件系统类型(最常用)查看磁盘空间使用情况:

[root@backup ~]# df -Th
Filesystem              Type      Size  Used Avail Use% Mounted on
devtmpfs                devtmpfs   16G     0   16G   0% /dev
tmpfs                   tmpfs      16G     0   16G   0% /dev/shm
tmpfs                   tmpfs      16G   83M   16G   1% /run
tmpfs                   tmpfs      16G     0   16G   0% /sys/fs/cgroup
/dev/mapper/centos-root xfs        50G   38G   13G  76% /
/dev/sda2               xfs      1016M  156M  860M  16% /boot
/dev/sda3               xfs       7.3T   51G  7.2T   1% /data
/dev/sda1               vfat      200M   12M  189M   6% /boot/efi
tmpfs                   tmpfs     3.2G   12K  3.2G   1% /run/user/42
tmpfs                   tmpfs     3.2G     0  3.2G   0% /run/user/0
[root@backup ~]# 

2.5 lspci – PCI 设备信息

PCI 设备可能包括 USB 端口、显卡、网络适配器等。列出所有连接到 PCI 总线的设备信息直接用 lspci 命令输出:

[root@backup ~]# lspci
00:00.0 Host bridge: Intel Corporation Sky Lake-E DMI3 Registers (rev 07)
00:05.0 System peripheral: Intel Corporation Sky Lake-E MM/Vt-d Configuration Registers (rev 07)
00:05.2 System peripheral: Intel Corporation Sky Lake-E RAS (rev 07)
00:05.4 PIC: Intel Corporation Sky Lake-E IOAPIC (rev 07)
00:08.0 System peripheral: Intel Corporation Sky Lake-E Ubox Registers (rev 07)
00:08.1 Performance counters: Intel Corporation Sky Lake-E Ubox Registers (rev 07)
00:08.2 System peripheral: Intel Corporation Sky Lake-E Ubox Registers (rev 07)
00:11.0 Unassigned class [ff00]: Intel Corporation C620 Series Chipset Family MROM 0 (rev 09)
00:11.5 SATA controller: Intel Corporation C620 Series Chipset Family SSATA Controller [AHCI mode] (rev 09)
00:14.0 USB controller: Intel Corporation C620 Series Chipset Family USB 3.0 xHCI Controller (rev 09)
00:14.2 Signal processing controller: Intel Corporation C620 Series Chipset Family Thermal Subsystem (rev 09)
00:16.0 Communication controller: Intel Corporation C620 Series Chipset Family MEI Controller #1 (rev 09)
……

要使用树状输出,加上-t 参数,如果要显示详细信息,包括驱动信息,加上-v 参数:

[root@backup ~]# lspci -t
-+-[0000:b2]-+-00.0-[b3]----00.0
 |           +-05.0
 |           +-05.2
 |           +-05.4
 |           +-0e.0
 |           +-0e.1
 |           +-0f.0
 |           +-0f.1
 |           +-12.0
 |           +-12.1
 |           +-12.2
 |           +-15.0
 |           +-15.1
 |           +-16.0
……

2.6 lsusb – USB 设备信息

列出所有连接到 USB 总线的设备信息。

[root@backup ~]# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 413c:2113 Dell Computer Corp. 
Bus 001 Device 006: ID 1604:10c0 Tascam 
Bus 001 Device 005: ID 1604:10c0 Tascam 
Bus 001 Device 004: ID 1604:10c0 Tascam 
Bus 001 Device 003: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
[root@backup ~]# 

树状显示 USB 设备层次结构:

[root@backup ~]# lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/16p, 480M
    |__ Port 3: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
    |__ Port 3: Dev 2, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
    |__ Port 10: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
    |__ Port 14: Dev 4, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 1: Dev 5, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 4: Dev 6, If 0, Class=Hub, Driver=hub/4p, 480M
[root@backup ~]# 

要显示详细信息,加上-v 参数。

2.7 dmidecode – 查看硬件组件信息

从 DMI 表中获取硬件信息,需要 root 权限,查看系统信息(制造商、产品名、序列号):

[root@backup ~]# dmidecode -t system
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 3.2.0 present.

Handle 0x0100, DMI type 1, 27 bytes
System Information
 Manufacturer: Dell Inc.
 Product Name: PowerEdge T440
 Version: Not Specified
 Serial Number: CK5****
 UUID: 4c4c4544-004b-3510-804c-c3c04f595133
 Wake-up Type: Power Switch
 SKU Number: SKU=07CB;ModelName=PowerEdge T440
 Family: PowerEdge

Handle 0x0C00, DMI type 12, 5 bytes
System Configuration Options
 Option 1: NVRAM_CLR: Clear user settable NVRAM areas and set defaults
 Option 2: PWRD_EN: Close to enable password

Handle 0x2000, DMI type 32, 11 bytes
System Boot Information
 Status: No errors detected

[root@backup ~]# 

另外查看内存信息(大小、类型、速度)、处理器信息、BIOS 信息、机箱信息分别用:

dmidecode -t memory      # 内存信息(大小、类型、速度)
dmidecode -t processor   # 处理器信息
dmidecode -t bios        # BIOS 信息
dmidecode -t chassis     # 机箱信息

2.8 cat /proc/cpuinfo – CPU 详细信息

通过 proc 文件系统查看 CPU 的详细信息。

cat /proc/cpuinfo                          # 显示所有 CPU 核心的详细信息
grep -c ^processor /proc/cpuinfo           # 统计 CPU 核心数
grep "model name" /proc/cpuinfo | head -1  # 显示 CPU 型号
grep "cpu MHz" /proc/cpuinfo | head -1     # 显示 CPU 频率

2.9 cat /proc/meminfo – 内存详细信息

通过 proc 文件系统查看内存的详细信息。

# 总内存大小
[root@backup ~]# grep -i memtotal /proc/meminfo
MemTotal:       32523412 kB

# 可用内存
[root@backup ~]# grep -i memavailable /proc/meminfo
MemAvailable:   31096936 kB

# 关键内存指标
[root@backup ~]# grep -E "MemTotal|MemFree|Buffers|Cached" /proc/meminfo
MemTotal:       32523412 kB
MemFree:        31030992 kB
Buffers:            1248 kB
Cached:           387556 kB
SwapCached:            0 kB
[root@backup ~]# 

2.10 lsscsi – SCSI/SATA 设备列表工具

lsscsi 命令用于列出系统中所有的 SCSI 设备及其属性,也兼容 SATA、SAS 等设备,是管理存储设备的基础工具。

常用的选项功能如下:

选项 功能描述 使用场景
不加选项 列出所有 SCSI/SATA/SAS 设备及其属性 存储设备识别和基本属性查看
-g 显示 SCSI 通用设备信息 查看设备对应的通用设备文件(sg*设备节点)
-s 显示设备容量信息 快速查看各存储设备的容量大小
-d 显示设备的主要节点信息 查看设备对应的块设备节点(如/dev/sda)
-H 显示主机控制器信息 存储控制器识别和拓扑结构分析
-c 以经典格式显示设备列表 传统的设备显示格式,兼容旧版输出样式

示例如下:

[wyadmin@backup ~]$ lsscsi
[5:0:0:0]    disk    ATA      WDC WD10EZEX-00B 1A01  /dev/sda 
[N:0:1:1]    disk    INTEL SSDPEKNU512GZH__1                    /dev/nvme0n1
[wyadmin@backup ~]$ lsscsi -g
[5:0:0:0]    disk    ATA      WDC WD10EZEX-00B 1A01  /dev/sda   /dev/sg0 
[N:0:1:1]    disk    INTEL SSDPEKNU512GZH__1                    /dev/nvme0n1  -        
[wyadmin@backup ~]$ lsscsi -s
[5:0:0:0]    disk    ATA      WDC WD10EZEX-00B 1A01  /dev/sda   1.00TB
[N:0:1:1]    disk    INTEL SSDPEKNU512GZH__1                    /dev/nvme0n1   512GB
[wyadmin@backup ~]$ lsscsi -d
[5:0:0:0]    disk    ATA      WDC WD10EZEX-00B 1A01  /dev/sda [8:0]
[N:0:1:1]    disk    INTEL SSDPEKNU512GZH__1                    /dev/nvme0n1 [259:0]
[wyadmin@backup ~]$ lsscsi -H
[0]    ahci          
[1]    ahci          
[2]    ahci          
[3]    ahci          
[4]    ahci          
[5]    ahci          
[6]    ahci          
[7]    ahci          
[N:0]  /dev/nvme0  INTEL SSDPEKNU512GZH              BTKA2122092Q512A    HPS1    
[wyadmin@backup ~]$ lsscsi -c
Attached devices: 
Host: scsi5 Channel: 00 Target: 00 Lun: 00
  Vendor: ATA      Model: WDC WD10EZEX-00B Rev: 1A01
  Type:   Direct-Access                    ANSI SCSI revision: 05
[wyadmin@backup ~]$ 

2.11 ip / ifconfig – 网络接口信息

显示网络接口配置信息,ip 是新工具,ifconfig 是传统工具。

ip addr show                  # 显示所有网络接口和 IP 地址(推荐)
ip link show                  # 显示网络接口链路状态
ifconfig                      # 传统网络配置查看工具
ifconfig -a                   # 显示所有接口,包括未激活的
ip route show                 # 显示路由表

适用于网络配置检查、IP 地址确认、网络故障排查。

2.12 fdisk – 磁盘分区表信息

显示和操作磁盘分区表的工具。可以进行分区表查看、磁盘容量验证、分区方案检查。

sudo fdisk -l                 # 
sudo fdisk -l /dev/sda        # 
sudo parted -l                # 另一种分区信息查看工具

列出所有磁盘的分区表:

[root@backup ~]# fdisk -l
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.

Disk /dev/sda: 8000.5 GB, 8000450330624 bytes, 15625879552 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 262144 bytes / 524288 bytes
Disk label type: gpt
Disk identifier: 693EFE34-8F58-488C-99E8-0324053B5AB4


#         Start          End    Size  Type            Name
 1         2048       411647    200M  EFI System      EFI System Partition
 2       411648      2508799      1G  Microsoft basic 
 3      2508800  15488370687    7.2T  Microsoft basic 
 4  15488370688  15593232383     50G  Linux LVM       
 5  15593232384  15625869311   15.6G  Linux swap      

Disk /dev/mapper/centos-root: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 262144 bytes / 524288 bytes

[root@backup ~]# 

要列出指定磁盘的分区信息,可以后面直接指定,如:fdisk -l /dev/sda 。

2.13 hdparm – 硬盘参数和性能

获取硬盘参数并测试硬盘性能,适用于硬盘性能测试、硬盘参数查看、存储性能评估。

查看硬盘详细信息(型号、序列号、特性):

[wyadmin@backup ~]$ sudo hdparm -I /dev/sda
[sudo] password for wyadmin: 

/dev/sda:

ATA device, with non-removable media
 Model Number:       WDC WD10EZEX-00BBHA0                    
 Serial Number:      WD-WCC6Y3UL5624
 Firmware Revision:  01.01A01
 Transport:          Serial, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
Standards:
 Used: unknown (minor revision code 0x001f) 
 Supported: 10 9 8 7 6 5 
 Likely used: 10
Configuration:
 Logical  max current
 cylinders 16383 0
 heads  16 0
 sectors/track 63 0
 --

测试硬盘读取速度:

[wyadmin@backup ~]$ sudo hdparm -tT /dev/sda

/dev/sda:
 Timing cached reads:   36064 MB in  2.00 seconds = 18061.88 MB/sec
 Timing buffered disk reads: 566 MB in  3.01 seconds = 188.08 MB/sec
[wyadmin@backup ~]$ 

要显示硬盘基本信息,直接输入:hdparm -i /dev/sda。

2.14 smartctl – 硬盘健康状态监控

smartctl 是用于监控硬盘 SMART(Self-Monitoring, Analysis and Reporting Technology)状态的专业工具。

smartctl 命令常用选项如下表所示:

选项 功能描述 使用场景
-a 显示硬盘所有 SMART 信息(最常用) 全面硬盘健康检查,一次性获取所有重要信息
-H 检查硬盘健康状态(PASSED/FAILED) 快速判断硬盘是否健康,日常监控
-i 显示硬盘基本信息(型号、序列号等) 资产识别,确认硬盘型号和规格
-A 显示所有 SMART 属性值(温度、坏道等) 详细性能监控,预测硬盘故障
-l selftest 显示自检历史记录 查看过往自检结果,分析历史问题
-l error 显示硬盘错误日志 故障排查,查看具体错误信息
-t short 执行快速自检(约 2 分钟) 定期预防性检查,不影响正常使用
-t long 执行完整自检(数小时) 深度健康检查,怀疑有潜在问题时
–scan 扫描系统可用硬盘设备 快速发现所有硬盘,确认设备路径

比如,查看硬盘所有 SMART 信息:

[wyadmin@backup ~]$ sudo smartctl -a /dev/sda
smartctl 7.2 2020-12-30 r5155 [x86_64-linux-5.14.0-570.17.1.el9_6.x86_64] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Western Digital Blue
Device Model:     WDC WD10EZEX-00BBHA0
Serial Number:    WD-WCC6Y3UL5624
LU WWN Device Id: 5 0014ee 214f40002
Firmware Version: 01.01A01
User Capacity:    1,000,204,886,016 bytes [1.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    7200 rpm
Form Factor:      3.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-3 T13/2161-D revision 3b
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Tue Jan 13 13:51:41 2026 CST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===

查看硬盘健康状态:

[wyadmin@backup ~]$ sudo smartctl -H /dev/sda
smartctl 7.2 2020-12-30 r5155 [x86_64-linux-5.14.0-570.17.1.el9_6.x86_64] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

[wyadmin@backup ~]$ 

2.15 lshw – 全面的硬件信息工具

lshw(Hardware Lister)是一个功能全面的 Linux 硬件检测工具,能够详细报告系统的硬件配置信息。它通过读取系统的多个信息源(如/proc 目录、DMI 表、PCI 总线、USB 总线等)来收集和显示几乎所有的硬件组件信息。

lshw 命令常用选项如下表:

选项 功能描述 使用场景
-short 以简短格式显示硬件摘要信息 快速查看硬件概览,日常系统检查
-businfo 输出总线信息(显示设备总线地址) 设备驱动关联,硬件故障定位
-class CLASS 只显示指定类别的硬件 针对性查看特定硬件(如 memory、disk、network 等)
-sanitize 隐藏敏感信息(序列号等) 分享系统信息时保护隐私,技术支持安全分享
-html 以 HTML 格式输出硬件信息 生成可视化报告,文档归档
-json 以 JSON 格式输出硬件信息 自动化处理,脚本集成
-xml 以 XML 格式输出硬件信息 结构化数据交换,企业管理系统集成
-numeric 显示数字 ID(PCI、USB 等设备 ID) 精确设备识别,驱动程序匹配

下面生成 HTML 格式的硬件报告:

[root@backup ~]# lshw -html > report.html
[root@backup ~]# sz report.html 

[root@backup ~]#       

最后将 report.html 文件导出查看:

通过本文介绍的 30 个常用命令,从 uname、hostname 等基础信息查询,到 lscpu、free、lsblk 等硬件状态监控,再到 smartctl、lshw 等专业诊断工具,这些命令形成了系统运维的多层次工具箱。它们不仅是故障排查的利器,更是系统优化、资源规划和日常监控的基础。掌握这些命令能帮助管理员快速定位问题、有效管理资源,并通过脚本化实现运维自动化,从而全面提升 Linux 系统的管理效率与稳定性。

以上关于Linux中收集【系统】和【硬件】信息的30个常用命令总结的文章就介绍到这了,更多相关内容请搜索码云笔记以前的文章或继续浏览下面的相关文章,希望大家以后多多支持码云笔记。

「点点赞赏,手留余香」

2

给作者打赏,鼓励TA抓紧创作!

微信微信 支付宝支付宝

还没有人赞赏,快来当第一个赞赏的人吧!

声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 admin@mybj123.com 进行投诉反馈,一经查实,立即处理!
重要:如软件存在付费、会员、充值等,均属软件开发者或所属公司行为,与本站无关,网友需自行判断
码云笔记 » Linux中收集【系统】和【硬件】信息的30个常用命令总结

发表回复