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

相关推荐

  • NAT切换如何避免业务中断?

    在Linux系统中直接修改iptables/nftables规则(尤其是NAT表)会导致:现有连接中断:已建立的TCP连接和UDP会话因规则刷新而丢失,业务抖动:在线用户感知到网络闪断,影响实时应用(如视频会议、金融交易),状态不一致:conntrack表记录与NAT规则不匹配,引发数据包丢弃,平滑生效的核心原……

    2025年7月24日
    9900
  • Linux如何清屏?终端命令行操作与快捷键方法全解析?

    在Linux系统中,清屏操作是日常使用终端时的常见需求,无论是清理冗长的输出、提升终端可读性,还是在脚本中优化显示效果,掌握多种清屏方法都能提升操作效率,本文将详细介绍Linux系统中清屏的多种方式、原理及适用场景,帮助用户根据实际需求选择最合适的清屏方法,基础清屏方法:clear命令与Ctrl+L快捷键Lin……

    2025年8月22日
    8200
  • Linux中如何创建可执行的.sh脚本文件?

    在Linux系统中,.sh文件是Shell脚本文件,通过编写一系列Shell命令并保存为.sh文件,可以实现对Linux系统的自动化操作和任务管理,创建.sh文件是Linux系统管理中的一项基础技能,下面将详细介绍从文件创建到脚本执行的全过程,包括文件编写、权限设置、常见语法及注意事项等内容,创建.sh文件的基……

    2025年9月19日
    6900
  • 如何快速用命令行重启系统?

    在Linux系统中,重启操作是常见的系统管理任务,通常用于应用更新、修复故障或完成硬件配置变更,以下是多种安全重启Linux的方法,涵盖命令行和图形界面操作,适用于不同发行版(如Ubuntu、CentOS、Debian等),操作前务必保存所有工作,避免数据丢失,reboot 命令最直接的命令,需管理员权限:su……

    2025年6月24日
    11400
  • 在Linux系统中,删除文件和目录是基础但关键的操作。以下是详细指南,涵盖命令行、图形界面及安全实践,确保操作安全高效

    命令行删除(核心方法)删除文件rm 文件名 # 删除单个文件(例: rm report.txt)rm 文件1 文件2 # 批量删除文件rm *.log # 通配符删除所有.log后缀文件关键选项:-i:交互确认(推荐新手)rm -i important.txt # 删除前提示确认-f:强制删除(忽略错误提示)r……

    2025年8月7日
    7700

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信