Linux如何查看系统中所有已连接设备?

在Linux系统中,设备管理是系统运维和开发中的基础操作,无论是排查硬件故障、识别外接设备,还是优化系统配置,都需要准确掌握设备信息的查看方法,Linux提供了丰富的命令行工具,支持从不同维度(如块设备、PCI设备、USB设备、CPU、内存等)查看系统中的所有设备信息,本文将详细介绍常用命令的功能、用法及输出解读,帮助用户全面掌握Linux设备查看方法。

linux如何查看所有设备

Linux设备分类与查看概述

Linux系统中的设备主要分为三类:块设备(如硬盘、SSD、U盘,以块为单位读写数据)、字符设备(如鼠标、键盘、终端,以字符流方式交互)和网络设备(如网卡、无线适配器),还有PCI设备(连接到PCI总线的硬件,如显卡、声卡)、USB设备(通过USB接口连接的外设)等,不同类型的设备需使用不同的命令进行查看,以下将分类说明常用工具的使用方法。

查看块设备:硬盘、SSD、U盘等

块设备是Linux中最常见的存储设备,可通过以下命令查看详细信息:

lsblk:列出块设备信息

lsblk(list block devices)是查看块设备的常用命令,以树状结构展示设备及其分区信息,支持显示文件系统、挂载点、UUID等属性。
常用选项

  • -f:显示文件系统信息(如类型、UUID、挂载点);
  • -l:使用列表格式输出(默认为树状);
  • -t:显示设备拓扑结构(如RAID、多路径设备);
  • -b:以字节为单位显示设备大小。

示例输出

lsblk -f
NAME   FSTYPE FSVER LABEL UUID                                 FSAVAIL FSUSE% MOUNTPOINT
sda                                                                          
├─sda1 ntfs        Data  2A3B-4C5D                             916.2G    15% /mnt/Data
├─sda2 ext4       1.0   123e4567-89ab-cdef-0123-456789abcdef  45.2G    20% /
└─sda3 swap       1.0   456789ab-cdef-0123-4567-89abcdefabcdef  2.0G     0% [SWAP]
nvme0n1                                                                     
├─nvme0n1p1 ext4       1.0   abcdef12-3456-7890-abcd-ef1234567890  50.1G    10% /home
└─nvme0n1p2 vfat        FAT32 EF12-3456                             1.9G     5% /boot/efi

输出中,NAME为设备名(如sda为SATA硬盘,nvme0n1为NVMe SSD),FSTYPE为文件系统类型,UUID为唯一标识,MOUNTPOINT为挂载点。

fdiskparted:磁盘分区管理

fdisk(传统分区工具)和parted(现代分区工具)可用于查看磁盘分区表,但需注意它们主要用于分区操作,查看信息时需结合选项。
fdisk示例

sudo fdisk -l  # 查看所有磁盘分区信息

输出会显示磁盘大小、分区起始/结束扇区、分区类型(如Linux、NTFS)等。
parted示例

sudo parted -l  # 以列表形式查看分区信息

parted支持更多文件系统类型,输出更直观。

查看PCI设备:显卡、网卡、声卡等

PCI设备是连接到PCI总线的硬件,如独立显卡、千兆网卡、声卡等,需使用lspci命令查看。

linux如何查看所有设备

lspci:列出PCI设备

lspci(list PCI devices)需安装pciutils包(Ubuntu/Debian:sudo apt install pciutils;CentOS/RHEL:sudo yum install pciutils),支持显示设备厂商、型号、驱动等信息。
常用选项

  • -v:显示详细信息(包括驱动、资源占用);
  • -nn:显示十六进制厂商和设备ID(便于查手册);
  • -k:显示设备使用的内核驱动。

示例输出

lspci -nn
00:00.0 Host bridge [0600]: Intel Corporation 12th Gen Core Processor Host Bridge [8086:9a14]
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile] [10de:2520]
03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168]

00:00.0为PCI插槽地址(总线号:设备号:功能号),[0600]为设备类型代码(0600为主桥),厂商和设备ID(如8086:9a14)可用于查询具体型号。

查看USB设备:U盘、鼠标、键盘等

USB设备可通过lsusb命令查看,需安装usbutils包(安装方式同pciutils)。

lsusb:列出USB设备

lsusb支持显示USB设备的厂商、产品ID、版本、接口类型等信息,-v选项可输出详细信息(包括配置描述符、接口等)。
示例输出

lsusb -v
Bus 001 Device 005: ID 0781:5591 SanDisk Corp. Ultra Fit
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  idVendor           0x0781 SanDisk Corp.
  idProduct          0x5591 Ultra Fit
  iManufacturer           1 SanDisk
  iProduct                2 Ultra Fit
  iSerial                 3 0000000000000000

输出中,Bus 001 Device 005为USB总线号和设备号,idVendoridProduct为唯一标识,可用于驱动匹配。

查看硬件概览:CPU、内存、主板等

若需查看系统整体硬件信息(如CPU型号、内存容量、主板厂商等),可使用以下命令:

lscpu:查看CPU信息

lscpu以表格形式显示CPU架构、核心数、线程数、频率、缓存等信息,无需额外安装。
示例输出

lscpu
Architecture:                    x86_64
CPU op-mode(s):                  32-bit, 64-bit
Byte Order:                      Little Endian
Address sizes:                   46 bits physical, 48 bits virtual
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

CPU(s)为逻辑核心数(线程数),Core(s) per socket为物理核心数,Socket(s)为CPU插槽数。

linux如何查看所有设备

dmidecode:查看DMI表信息

dmidecode(DMI table decoder)读取主板BIOS中的DMI表(硬件管理数据),可获取主板型号、BIOS版本、内存类型、序列号等信息,需root权限。
常用选项

  • -t:指定信息类型(如system系统信息、memory内存信息、baseboard主板信息)。

示例

sudo dmidecode -t system
# Manufacturer: Dell Inc.
# Product Name: Latitude 5420
# Serial Number: 1ABC2D3E4F
# UUID: 12345678-9abc-def0-1234-56789abcdef0

lshwhwinfo:综合硬件信息

lshw(Hardware Lister)和hwinfo(Hardware Info)是功能强大的硬件查看工具,需安装(sudo apt install lshw/sudo apt install hwinfo)。

  • lshw:以树状结构展示硬件层级(CPU→内存→磁盘→外设等),-short选项输出简要信息。
  • hwinfo:支持更详细的硬件检测,--short列出设备摘要,--detail输出完整信息。

查看设备事件与属性:udevadm

udevadm是udev设备管理器的工具,可查看设备事件(如USB插入/拔出、磁盘挂载)和设备属性(如设备路径、UUID)。
示例

# 查看最近的设备事件
udevadm monitor
# 查看指定设备的属性(如/dev/sda1)
udevadm info -a -n /dev/sda1

常用查看设备命令对比表

命令 主要功能 适用设备类型 常用选项
lsblk 列出块设备及分区信息 硬盘、SSD、U盘 -f(文件系统)、-l(列表格式)
lspci 列出PCI设备信息 显卡、网卡、声卡 -v(详细信息)、-nn(设备ID)
lsusb 列出USB设备信息 U盘、鼠标、键盘 -v(详细信息)、-t(树状结构)
lscpu 查看CPU详细信息 处理器 -e(扩展格式)、-p(处理器列表)
dmidecode 读取DMI表(硬件底层信息) 主板、BIOS、内存 -t(指定类型)
lshw 综合硬件信息概览 所有硬件 -short(简要)、-html(HTML输出)
udevadm 查看设备事件与属性 所有动态设备 monitor(监控事件)、info(属性)

相关问答FAQs

如何查看Linux系统中当前正在使用的硬件温度?

查看硬件温度需借助第三方工具,常用命令如下:

  • CPU温度:安装lm-sensorssudo apt install lm-sensors),运行sensors即可显示CPU及主板传感器温度。
  • GPU温度:NVIDIA显卡使用nvidia-smi -q | grep "GPU Current Temp";AMD显卡使用aticonfig --odgt(需安装fglrx驱动)。
  • 硬盘温度:使用smartctl(需安装smartmontools),如sudo smartctl -a /dev/sda | grep "Temperature_Celsius"

如何查看已连接的USB设备的详细信息(如厂商、设备ID)?

使用lsusb命令即可查看USB设备的详细信息,具体步骤:

  1. 安装usbutils(若未安装):sudo apt install usbutils(Ubuntu/Debian)或sudo yum install usbutils(CentOS/RHEL)。
  2. 运行lsusb -v,输出会包含厂商名称(iManufacturer)、产品名称(iProduct)、设备ID(idVendoridProduct)等详细信息。lsusb -v | grep -i "sandisk"可过滤出SanDisk设备的所有信息。

通过这些命令,用户可以全面掌握Linux系统中各类设备的状态和信息,为系统管理和问题排查提供有力支持。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/33629.html

(0)
酷番叔酷番叔
上一篇 2025年10月1日 06:50
下一篇 2025年10月1日 07:11

相关推荐

  • Linux中解压gz文件,具体命令和操作步骤是什么?

    在Linux系统中,gz文件是通过gzip工具压缩的文件格式,广泛应用于数据压缩和传输场景,解压gz文件主要依赖gzip或gunzip命令,本文将详细介绍解压gz文件的方法、常用选项、不同场景操作及常见问题解决,基本解压方法Linux中最常用的解压gz文件命令是gunzip,它是gzip的硬链接,功能与gzip……

    2025年9月17日
    4900
  • linux如何挂载ntfsu盘

    在Linux系统中使用NTFS格式的U盘时,由于Linux内核默认对NTFS的支持有限(仅支持只读),通常需要借助第三方工具ntfs-3g来实现读写挂载,以下是详细的挂载步骤、注意事项及常见问题处理,帮助用户顺利完成NTFS U盘的挂载与使用,准备工作:安装ntfs-3g工具ntfs-3g是一款开源的NTFS读……

    2025年8月23日
    5900
  • Linux如何开辟虚拟内存?具体操作步骤与方法详解?

    在Linux系统中,虚拟内存是内核为每个进程提供的独立、连续的地址空间抽象,通过将虚拟地址映射到物理内存或交换空间,实现了内存扩展、进程隔离、按需加载等功能,开辟虚拟内存本质上是内核为进程分配虚拟地址空间,并建立与物理内存的映射关系,这一过程涉及内核数据结构管理、系统调用处理及页表映射等多个层面,虚拟内存的核心……

    2025年10月3日
    3200
  • linux zip如何解压文件怎么打开

    Linux 中,使用 unzip 命令解压 zip 文件,`unzip

    2025年8月17日
    5600
  • 解压到/opt为何需要管理员权限?

    在Linux系统上安装Eclipse需要确保环境兼容并遵循正确步骤,以下是详细操作指南,所有步骤均基于官方推荐方法,确保安全可靠:安装前准备检查Java环境Eclipse依赖Java,需先安装JDK(建议JDK 11或17):sudo apt update && sudo apt install……

    2025年7月12日
    7300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信