如何检查Linux系统硬件信息?从CPU到显卡,一网打尽!
liuian 2025-05-14 14:54 18 浏览
你可能会问:“我为什么要关心硬件信息?”答案很简单:硬件是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支持的功能,比如avx2、sse4_2,对程序优化很有用。
3.top和htop:实时监控CPU
想看看CPU忙不忙?top和htop能帮你实时查看。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设备。
相关推荐
- Python 中 必须掌握的 20 个核心函数——items()函数
-
items()是Python字典对象的方法,用于返回字典中所有键值对的视图对象。它提供了对字典完整内容的高效访问和操作。一、items()的基本用法1.1方法签名dict.items()返回:字典键...
- Python字典:键值对的艺术_python字典的用法
-
字典(dict)是Python的核心数据结构之一,与列表同属可变序列,但采用完全不同的存储方式:定义方式:使用花括号{}(列表使用方括号[])存储结构:以键值对(key-valuepair)...
- python字典中如何添加键值对_python怎么往字典里添加键
-
添加键值对首先定义一个空字典1>>>dic={}直接对字典中不存在的key进行赋值来添加123>>>dic['name']='zhangsan'>>...
- Spring Boot @ConfigurationProperties 详解与 Nacos 配置中心集成
-
本文将深入探讨SpringBoot中@ConfigurationProperties的详细用法,包括其语法细节、类型转换、复合类型处理、数据校验,以及与Nacos配置中心的集成方式。通过...
- Dubbo概述_dubbo工作原理和机制
-
什么是RPCRPC是RemoteProcedureCall的缩写翻译为:远程过程调用目标是为了实现两台(多台)计算机\服务器,互相调用方法\通信的解决方案RPC的概念主要定义了两部分内容序列化协...
- 再见 Feign!推荐一款微服务间调用神器,跟 SpringCloud 绝配
-
在微服务项目中,如果我们想实现服务间调用,一般会选择Feign。之前介绍过一款HTTP客户端工具Retrofit,配合SpringBoot非常好用!其实Retrofit不仅支持普通的HTTP调用,还能...
- SpringGateway 网关_spring 网关的作用
-
奈非框架简介早期(2020年前)奈非提供的微服务组件和框架受到了很多开发者的欢迎这些框架和SpringCloudAlibaba的对应关系我们要知道Nacos对应Eureka都是注册中心Dubbo...
- Sentinel 限流详解-Sentinel与OpenFeign服务熔断那些事
-
SentinelResource我们使用到过这个注解,我们需要了解的是其中两个属性:value:资源名称,必填且唯一。@SentinelResource(value="test/get...
- 超详细MPLS学习指南 手把手带你实现IP与二层网络的无缝融合
-
大家晚上好,我是小老虎,今天的文章有点长,但是都是干货,耐心看下去,不会让你失望的哦!随着ASIC技术的发展,路由查找速度已经不是阻碍网络发展的瓶颈。这使得MPLS在提高转发速度方面不再具备明显的优势...
- Cisco 尝试配置MPLS-V.P.N从开始到放弃
-
本人第一次接触这个协议,所以打算分两篇进行学习和记录,本文枯燥预警,配置命令在下一篇全为定义,其也是算我毕业设计的一个小挑战。新概念重点备注为什么选择该协议IPSecVPN都属于传统VPN传统VP...
- MFC -- 网络通信编程_mfc编程教程
-
要买东西的时候,店家常常说,你要是真心买的,还能给你便宜,你看真心就是不怎么值钱。。。----网易云热评一、创建服务端1、新建一个控制台应用程序,添加源文件server2、添加代码框架#includ...
- 35W快充?2TB存储?iPhone14爆料汇总,不要再漫天吹15了
-
iPhone14都还没发布,关于iPhone15的消息却已经漫天飞,故加紧整理了关于iPhone14目前已爆出的消息。本文将从机型、刘海、屏幕、存储、芯片、拍照、信号、机身材质、充电口、快充、配色、价...
- SpringCloud Alibaba(四) - Nacos 配置中心
-
1、环境搭建1.1依赖<!--nacos注册中心注解@EnableDiscoveryClient--><dependency><groupI...
- Nacos注册中心最全详解(图文全面总结)
-
Nacos注册中心是微服务的核心组件,也是大厂经常考察的内容,下面我就重点来详解Nacos注册中心@mikechen本篇已收于mikechen原创超30万字《阿里架构师进阶专题合集》里面。微服务注册中...
- 网络技术领域端口号备忘录,受益匪浅 !
-
你好,这里是网络技术联盟站,我是瑞哥。网络端口是计算机网络中用于区分不同应用程序和服务的标识符。每个端口号都是一个16位的数字,范围从0到65535。网络端口的主要功能是帮助网络设备(如计算机和服务器...
- 一周热门
-
-
【验证码逆向专栏】vaptcha 手势验证码逆向分析
-
Python实现人事自动打卡,再也不会被批评
-
Psutil + Flask + Pyecharts + Bootstrap 开发动态可视化系统监控
-
一个解决支持HTML/CSS/JS网页转PDF(高质量)的终极解决方案
-
再见Swagger UI 国人开源了一款超好用的 API 文档生成框架,真香
-
网页转成pdf文件的经验分享 网页转成pdf文件的经验分享怎么弄
-
C++ std::vector 简介
-
飞牛OS入门安装遇到问题,如何解决?
-
系统C盘清理:微信PC端文件清理,扩大C盘可用空间步骤
-
10款高性能NAS丨双十一必看,轻松搞定虚拟机、Docker、软路由
-
- 最近发表
-
- Python 中 必须掌握的 20 个核心函数——items()函数
- Python字典:键值对的艺术_python字典的用法
- python字典中如何添加键值对_python怎么往字典里添加键
- Spring Boot @ConfigurationProperties 详解与 Nacos 配置中心集成
- Dubbo概述_dubbo工作原理和机制
- 再见 Feign!推荐一款微服务间调用神器,跟 SpringCloud 绝配
- SpringGateway 网关_spring 网关的作用
- Sentinel 限流详解-Sentinel与OpenFeign服务熔断那些事
- 超详细MPLS学习指南 手把手带你实现IP与二层网络的无缝融合
- Cisco 尝试配置MPLS-V.P.N从开始到放弃
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)
- mysql刷新权限 (34)