百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

如何检查Linux系统硬件信息?从CPU到显卡,一网打尽!

ahcoder 2025-05-07 22:30 7 浏览

你可能会问:“我为什么要关心硬件信息?”答案很简单:硬件是Linux系统的根基,了解它可以帮你解决很多实际问题。比如:

  • 性能调优:知道CPU核心数和内存大小,才能更好地调整程序运行参数。
  • 故障排查:系统卡顿或崩溃时,硬件信息可能是找到原因的关键。
  • 兼容性确认:安装新软件或驱动前,得确认硬件是否支持。
  • 升级规划:想换个硬盘或加条内存?先得知道现在的配置。

Linux的好处在于,它内置了一堆强大的命令行工具,不用装额外的花哨软件,就能轻松查到这些信息。下面,我们就按硬件类别逐一攻破,带上命令和实例,给你一份超详细的指南!

CPU信息:探秘系统的大脑

CPU是电脑的“大脑”,它的性能直接影响系统速度。想知道你的CPU型号、核心数、频率有多高?试试下面这些命令。

1.lscpu:一览CPU全貌

lscpu是个简单又强大的工具,能快速展示CPU的整体信息。敲入命令:

lscpu 

你会看到类似这样的输出:

Architecture:        x86_64 CPU op-mode(s):      32-bit, 64-bit Byte Order:          Little Endian CPU(s):              8 On-line CPU(s) list: 0-7 Thread(s) per core:  2 Core(s) per socket:  4 Socket(s):           1 NUMA node(s):        1 Vendor ID:           GenuineIntel CPU family:          6 Model:               142 Model name:          Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz Stepping:            10 CPU MHz:             1992.000 BogoMIPS:            3984.00 Virtualization:      VT-x L1d cache:           32K L1i cache:           32K L2 cache:            256K L3 cache:            8192K NUMA node0 CPU(s):   0-7 

解读一下

  • Architecture: x86_64,说明是64位架构。
  • CPU(s): 8,表示有8个逻辑CPU。
  • Core(s) per socket: 4个核心,Thread(s) per core: 2个线程,说明是4核8线程。
  • Model name: Intel Core i7-8550U,主频1.8GHz。
  • L3 cache: 8MB三级缓存。

这个命令简单直白,适合快速概览。

2.cat /proc/cpuinfo:深入CPU细节

如果想要更细致的CPU信息,可以查看/proc/cpuinfo文件:

cat /proc/cpuinfo 

输出会很长,列出每个逻辑CPU的详细信息,比如:

processor       : 0 vendor_id       : GenuineIntel cpu family      : 6 model           : 142 model name      : Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz stepping        : 10 microcode       : 0xea cpu MHz         : 1992.000 cache size      : 8192 KB physical id     : 0 siblings        : 8 core id         : 0 cpu cores       : 4 apicid          : 0 fpu             : yes flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc ... 

亮点

  • 每个逻辑CPU都有单独条目(这里是processor 0)。
  • cpu MHz显示当前频率。
  • flags列出CPU支持的功能,比如avx2sse4_2,对程序优化很有用。

3.top和htop:实时监控CPU

想看看CPU忙不忙?tophtop能帮你实时查看。top是Linux自带工具:

top 

按下1键,可以看到每个核心的使用率,比如:

%Cpu0  :  5.0 us,  2.0 sy,  0.0 ni, 93.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st %Cpu1  :  6.0 us,  3.0 sy,  0.0 ni, 91.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st 

htop更直观,但需要安装(sudo apt install htop):

htop 

界面会显示每个核心的负载条,一目了然。


内存信息:系统的燃料

内存是系统运行的“燃料”,用得好能让系统飞起来。以下命令帮你摸清内存底细。

1.free -h:内存使用一览

free命令简单粗暴,显示内存使用情况:

free -h 

输出像这样:

              total        used        free      shared  buff/cache   available Mem:           15Gi       5.2Gi       6.8Gi       1.2Gi       3.6Gi       8.8Gi Swap:          2.0Gi          0B       2.0Gi 

解读

  • total: 总内存15GB。
  • used: 已用5.2GB。
  • free: 空闲6.8GB。
  • available: 实际可用8.8GB(考虑缓存后)。
  • Swap: 交换空间2GB,没用上。

2.cat /proc/meminfo:内存细节全解

想挖得更深?看看/proc/meminfo

cat /proc/meminfo 

输出很长,比如:

MemTotal:       16266240 kB MemFree:         6970624 kB MemAvailable:    9123456 kB Buffers:          245760 kB Cached:          3727360 kB SwapCached:            0 kB Active:          5120000 kB Inactive:        3123456 kB ... 

重点

  • MemTotal: 总内存。
  • MemAvailable: 可用内存。
  • Cached: 缓存占用,释放时可变可用。

3.vmstat:动态内存统计

vmstat能动态展示内存和CPU状态:

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      0 6970624 245760 3727360    0    0     0     0    0    0  5  2 93  0  0 

看点

  • free: 空闲内存。
  • si/so: 交换空间进出数据量。

硬盘和分区信息:数据的家园

硬盘是数据的“家”,容量和健康状态得心中有数。

1.df -h:磁盘使用概况

df命令显示文件系统使用情况:

df -h 

输出:

Filesystem      Size  Used Avail Use% Mounted on /dev/sda1       227G   39G  176G  18% / /dev/sda5       976M  144M  766M  16% /boot 

解读

  • /dev/sda1: 根分区,227GB总大小,用了39GB。
  • Use%: 使用率18%。

2.lsblk:块设备全览

lsblk列出硬盘和分区关系:

lsblk 

输出:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT sda      8:0    0 238.5G  0 disk  ├─sda1   8:1    0 227.5G  0 part / ├─sda5   8:5    0   976M  0 part /boot 

看点

  • sda: 硬盘,238.5GB。
  • sda1: 根分区,227.5GB。

3.fdisk -l:分区表详情

需要详细分区信息?用fdisk(需root权限):

sudo fdisk -l 

输出:

Disk /dev/sda: 238.5 GiB, 256060514304 bytes Device     Boot     Start       End   Sectors   Size Id Type /dev/sda1  *         2048 476774399 476772352 227.5G 83 Linux /dev/sda5       476776448 478822399   2045952   999M 83 Linux 

4.smartctl:硬盘健康检查

smartctl检查硬盘状态(需安装smartmontools):

sudo smartctl -a /dev/sda 

输出会显示温度、错误率等,帮你判断硬盘寿命。


网络设备信息:连接世界的桥梁

网络是系统的“外联通道”,配置得摸清楚。

1.ip addr show:网络接口详情

查看IP和MAC地址:

ip addr show 

输出:

2: enp0s3: <BROADCAST,MULTICAST,UP> mtu 1500     inet 192.168.1.100/24     link/ether 08:00:27:7a:6b:6a 

解读

  • IP: 192.168.1.100
  • MAC: 08:00:27:7a:6b:6a

2.ethtool:接口运行状态

查看网卡速度等:

sudo ethtool enp0s3 

输出:

Speed: 1000Mb/s Duplex: Full 

3.iwconfig:无线网络信息

如果是WiFi,用iwconfig

iwconfig 

输出:

wlan0     IEEE 802.11  ESSID:"MyWiFi"             Frequency:2.412 GHz 

显卡信息:视觉的引擎

显卡对图形处理至关重要,查查型号和驱动吧。

1.lspci | grep VGA:显卡型号

lspci | grep VGA 

输出:

00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 620 

2.glxinfo:显卡驱动详情

安装mesa-utils后运行:

glxinfo | grep "OpenGL renderer" 

输出:

OpenGL renderer string: Mesa Intel(R) UHD Graphics 620 

3.nvidia-smi:NVIDIA显卡状态

有NVIDIA显卡?试试:

nvidia-smi 

输出温度、内存使用等。


其他硬件信息:系统的骨架

还有主板、USB等硬件也别漏掉。

1.lshw:硬件全清单

安装后运行:

sudo lshw 

输出涵盖所有硬件。

2.dmidecode:主板和BIOS

sudo dmidecode -t baseboard 

输出主板型号等。

3.lsusb:USB设备

lsusb 

列出USB设备。

4.lspci:PCI设备

lspci 

列出所有PCI设备。

相关推荐

Nginx的http块sendfile,keepalive_timeout的配置指令说明,

sendfile是用来设置Ngnix服务的一种静态资源的写法sendfile:用来设置Nginx服务器是否使用sendfile()传输文件,该属性可以大大提高Nginx处理静态资源的性能这里send...

Docker安装和配置Nginx(docker-compose部署nginx)

下载镜像dockerpullnginx检查Nginx镜像dockerimages创建挂载目录mkdir-p/home/docker-nginx/confmkdir-p/home/doc...

记:Nginx 如何配置SSL证书(nginx添加ssl证书)

引言最近,有几个其他项目团队的同事问了我几个类似问题:“钦哥,我们微信小程序微信支付,怎么回调不没反应?”“钦哥,我们的项目怎么无法通过https访问的?”然后就有想把配置ssl证书的过程,记录一...

多项目nginx部署配置(nginx多站点配置示例)

在前后端分离的项目中,前端部署大部分都采用nginx部署。在我参与的一个项目中,后台管理前端和业务应用前端是作为两个独立项目开发的。以往部署时通过不同端口来访问这两个项目,这就导致前端存储的token...

NGINX最佳缓存配置策略(nginx最佳缓存配置策略有哪些)

Nginx可以配置的参数有很多,今天我们来看一下Nginx的缓存如何配置。no-cache和no-store“no-cache”表示必须先与服务器确认返回的响应是否发生了变化,然后才能使用该响应来满足...

通过 docker 学习 nginx,附全部配置及 API 测试,使用 apifox 直接打开

本篇文章以前端的视角,介绍下nginx的常见配置,并通过docker的方式学习nginx,这保证所有实例配置都能正常运行。我将本文所有关于docker/nginx的配置放置在simple...

nginx配置负载均衡 以及宕机了后,怎么配置高可用

Nginx负载均衡配置是一个分发请求的过程。可以通过将同一个服务的多个实例配置到不同的服务器上,通过Nginx代理请求,将请求分发到这些实例上实现负载均衡。下面详细介绍Nginx负载均衡的配置过程和宕...

nginx反向代理加https证书和自动跳转配置

nginx反向代理加https证书和自动跳转配置如果对运维课程感兴趣,可以在b站上搜索我的账号:运维实战课程,可以关注我,学习更多免费的运维实战技术视频1.机器规划:nginx代理机器:192.16...

【Nginx基础】Nginx常见负载均衡策略配置示例

下面是一些常用的Nginx负载均衡策略及其配置示例:轮询(RoundRobin)这是默认的负载均衡策略,它将请求依次分配给不同的后端服务器。upstreambackend{server...

nginx中配置固定的JSON响应(nginx指定conf)

前提在进行性能测试时,使用mock接口是一种非常有效的方法,可以帮助您模拟真实服务的行为,从而避免对外部系统的依赖。使用Nginx作为mock接口的返回源不仅可以快速配置,还能确保mock接口本身不...

Nginx基本安全配置(防盗连、隐藏版本号、防嵌套等)

在生产环境中nginx有很多安全方案,我在为生产环境部署中得到很多经验,收集到的一些常用配置,简单记录一下。安装Nginx正常安全Nginx大家应该都会,但是各位要知道在安全要求很高的生产环境中,是无...

nginx如何配置跨域(nginx配置解决跨域)

要在Nginx中配置跨域,可以使用add_header指令来添加Access-Control-Allow-*头信息,如下所示:location/api{if($reques...

Nginx合集-限流配置方案参考(nginx lua限流)

Nginx为我们提供了请求限制模块(ngx_http_limit_req_module)、基于令牌桶算法的流量限制模块(ngx_stream_limit_conn_module),可以方便的控制令牌速...

韩国站群服务器Nginx反向代理多IP配置指南

在站群服务器的运营中,Nginx反向代理技术如同一座智能调度中心,既能隐藏真实服务器架构,又能实现流量精准分发。尤其对于部署在韩国数据中心的站群而言,合理配置多IP反向代理,可显著提升SEO安全性与服...

Nginx配置前后端服务(nginx配置前端页面部署)

nginx安装完成后,可以通过命令查看配置文件nginx-t配置文件nginx.conf,是总的配置,有的人会把配置全部配置到这个文件中,如果服务很多,这个文件变得非常庞大,我见过一个配置很大的,在...