Linux如何查看硬盘盘符?

在Linux系统中,硬盘盘符(更准确地说,是设备文件名,如/dev/sda、/dev/nvme0n1等)的查看是磁盘管理的基础操作,无论是分区、挂载还是故障排查,都需要先准确识别硬盘设备,Linux内核通过设备树管理硬件,硬盘设备文件通常位于/dev目录下,命名规则与接口类型(如SATA、NVMe、SCSI等)和识别顺序相关,以下是查看硬盘设备文件的常用方法,涵盖不同场景和需求。

linux如何查看硬盘盘符

使用lsblk命令:直观展示块设备层级关系

lsblk(list block devices)是Linux中最常用、最友好的块设备查看工具,它能以树状结构展示磁盘及其分区的层级关系,同时显示设备大小、挂载点、文件系统类型等关键信息,无需root权限即可运行(部分高级功能可能需要)。

基本用法
直接输入lsblk,默认输出会包含以下列:

  • NAME:设备文件名,如sda、nvme0n1(磁盘)或sda1、nvme0n1p1(分区);
  • SIZE:设备容量,如”100G”、”512M”;
  • RO:是否为只读设备(read-only),正常硬盘为”ro”;
  • TYPE:设备类型,如”disk”(磁盘)、”part”(分区)、”rom”(光驱)等;
  • MOUNTPOINT:挂载点,如”/”、”/home”、未挂载时显示空白。

进阶参数

  • -f:显示文件系统信息(如FSTYPE、UUID、LABEL),例如lsblk -f会额外输出文件系统类型(如ext4、xfs)和UUID;
  • -l:以列表形式输出(默认为树状),适合脚本处理;
  • -m:显示设备权限(如owner、group、mode),例如lsblk -m会输出root:disk:0660等权限信息;
  • -p:显示完整设备路径(如/dev/sda而非仅sda),避免歧义。

示例输出

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT  
nvme0n1     259:0    0 931.5G  0 disk  
├─nvme0n1p1 259:1    0   512M  0 part /boot/efi  
└─nvme0n1p2 259:2    0   931G  0 part /  
sda         8:0     0   1.8T  0 disk  
└─sda1      8:1     0   1.8T  0 part /data  
sr0        11:0     1  1024M  0 rom  

输出中,nvme0n1sda是两块磁盘,nvme0n1p1/nvme0n1p2是前者的分区,sda1是后者的分区,/boot/efi、、/data分别是它们的挂载点。

使用fdisk命令:查看磁盘分区表详情

fdisk是一个经典的分区管理工具,不仅能查看分区表,还能对分区进行操作(需root权限),通过fdisk -l(list)参数,可以列出系统中所有磁盘及其分区的详细信息,包括起始/结束扇区、分区类型ID等。

基本用法
sudo fdisk -l,输出会按磁盘逐个显示,每个磁盘部分包含以下信息:

  • Disk /dev/sda:磁盘设备路径及总容量(如”1.8TiB, 1953525168 sectors”);
  • Device:分区设备名(如/dev/sda1)、起始扇区(Sector)、结束扇区、扇区数、大小(如”1.8TiB”);
  • Id:分区类型ID(如83表示Linux原生分区,8e表示LVM分区,7表示NTFS分区);
  • Boot:是否为启动分区(标记为”*”)。

示例输出

linux如何查看硬盘盘符

Disk /dev/sda: 1.8 TiB, 1953525168 sectors, 9561331696 bytes  
Disk model: WDC WD180EDGZ-11B0CA0  
Units: sectors of 1 * 512 = 512 bytes  
Sector size (logical/physical): 512 bytes / 4096 bytes  
I/O size (minimum/optimal): 4096 bytes / 4096 bytes  
Disklabel type: gpt  
Device     Start        End    Sectors  Size Type  
/dev/sda1   2048 1953525167 1953523120  1.8T Linux filesystem  
Disk /dev/nvme0n1: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors  
Disk model: Samsung SSD 980 1TB  
Units: sectors of 1 * 512 = 512 bytes  
Sector size (logical/physical): 512 bytes / 512 bytes  
I/O size (minimum/optimal): 512 bytes / 512 bytes  
Disklabel type: gpt  
Device         Start        End    Sectors  Size Type  
/dev/nvme0n1p1   2048    1050623    1048576  512M EFI System  
/dev/nvme0n1p2 1050624 1953525167 1952474544  931G Linux filesystem  

fdisk适合需要查看分区表结构或确认分区类型的场景,尤其是处理多系统共存或修复分区表时。

使用df命令:查看已挂载文件系统的设备信息

df(disk free)主要用于显示文件系统的磁盘使用情况,但也能快速查看已挂载设备的设备文件名和挂载点,默认情况下,df以KB为单位显示容量,使用-h(human-readable)可转换为GB、MB等易读单位。

基本用法
df -h,输出包含以下列:

  • Filesystem:设备文件名(如/dev/nvme0n1p2)或挂载点(如/dev/sda1);
  • Size:文件系统总大小;
  • Used:已用空间;
  • Avail:可用空间;
  • Use%:使用率;
  • Mounted on:挂载点。

示例输出

Filesystem      Size  Used Avail Use% Mounted on  
/dev/nvme0n1p2  870G   50G  775G   6% /  
/dev/sda1       1.7T  800G  853G  48% /data  
tmpfs           3.8G     0  3.8G   0% /dev/shm  

注意:df只显示已挂载的文件系统,未挂载的分区不会出现在结果中,若需查看所有挂载信息(包括特殊文件系统如proc、sysfs),可使用df -a(all)。

使用blkid命令:查看块设备的属性信息

blkid用于显示块设备的属性,包括UUID(唯一标识符)、文件系统类型、卷标(LABEL)等,常用于挂载配置(如/etc/fstab中通过UUID挂载),需root权限才能查看所有设备信息。

基本用法
sudo blkid,输出格式为”设备名: 属性=值”,

/dev/nvme0n1p1: UUID="C12A7C8A-FC58-11E9-8804-001A4D671F8E" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="12345678-1234-1234-1234-123456789abc"  
/dev/nvme0n1p2: UUID="a1b2c3d4-e5f6-7890-abcd-ef1234567890" TYPE="ext4" PARTUUID="def01234-5678-90ab-cdef-abcdef12345"  
/dev/sda1: UUID="g1h2i3j4-k5l6-m7n8-o9p0-q1r2s3t4u5v6" TYPE="xfs" LABEL="data_disk"  

若需查看特定设备,可指定设备名,如sudo blkid /dev/sda1blkid的优势在于能快速获取设备的唯一标识(UUID),避免因设备文件名变化(如插拔硬盘后顺序改变)导致挂载失效。

linux如何查看硬盘盘符

其他工具:针对特定场景的硬盘信息查看

  1. smartctl(需安装smartmontools)
    用于读取硬盘的SMART(Self-Monitoring, Analysis and Reporting Technology)信息,查看硬盘健康状态、型号、固件版本等。
    示例:sudo smartctl --info /dev/sda,输出会包含”Device Model”、”Serial Number”、”Firmware Version”等硬件信息,以及”SMART Health Status”(如”OK”)。

  2. lshw(需安装lshw)
    以树状结构展示系统硬件信息,包括磁盘的厂商、型号、接口类型(SATA/NVMe/SCSI)等。
    示例:sudo lshw -class disk,输出会详细列出磁盘的”vendor”、”product”、”size”、”logical name”(设备文件名)等信息。

  3. hwinfo(需安装hwinfo)
    类似lshw,提供更全面的硬件信息,尤其适合查看磁盘的接口类型(如PCIe NVMe、SATA)和总线信息。
    示例:sudo hwinfo --disk,输出会包含”Device File”、”Model”、”Size”、”Type”(如”NVMe”)等字段。

不同查看方法的对比

方法 命令示例 主要用途 是否需root 输出特点
lsblk lsblk -f 查看块设备层级及挂载信息 树状结构,直观清晰
fdisk sudo fdisk -l 查看磁盘分区表及分区类型 详细的分区扇区、ID信息
df df -h 查看已挂载文件系统使用情况 仅显示已挂载设备,含使用率
blkid sudo blkid 查看设备UUID、文件系统类型 属性信息,适合挂载配置
smartctl sudo smartctl -i 查看硬盘健康状态及硬件信息 侧重硬盘硬件及SMART状态
lshw sudo lshw -class disk 查看磁盘硬件详细信息 硬件厂商、接口类型等

相关问答FAQs

Q1:为什么使用lsblkdf查看设备名时,结果可能不一致?
A:lsblk会列出系统中所有块设备(包括未挂载的磁盘和分区),而df仅显示已挂载的文件系统,若一块新硬盘(/dev/sdb)未挂载,lsblk会显示/dev/sdb/dev/sdb1,但df不会输出;若通过mount命令临时挂载/dev/sdb1/mntdf会显示/dev/sdb1和挂载点/mnt,而lsblk会同步更新MOUNTPOINT列。dfFilesystem列有时会显示挂载点(如/mnt)而非设备名,需结合Mounted on列确认。

Q2:如何确认一块硬盘是否为NVMe接口,并正确识别其盘符?
A:可通过以下步骤确认:

  1. 使用lsblk查看设备名:NVMe设备通常以nvme开头,如nvme0n1(磁盘)、nvme0n1p1(分区),而SATA/SCSI设备以sdasdbsr0(光驱)开头;
  2. 使用smartctl查看接口类型:sudo smartctl --info /dev/nvme0n1 | grep "Interface",输出”NVMe”则确认是NVMe接口;
  3. 使用lshw查看总线信息:sudo lshw -class disk | grep -A5 "nvme",输出会显示”bus info: pci@0000:01:00.0″(PCIe总线)等,进一步确认接口类型。
    若设备名显示为nvme0n1,则盘符即为/dev/nvme0n1,分区为/dev/nvme0n1p1/dev/nvme0n1p2等,注意与SATA设备的/dev/sda区分。

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

(0)
酷番叔酷番叔
上一篇 2025年9月22日 22:20
下一篇 2025年9月22日 22:34

相关推荐

  • Linux系统中如何查找进程号?

    在Linux系统中,进程号(PID,Process ID)是操作系统为每个运行中的进程分配的唯一标识符,用于进程管理、资源监控、调试和终止等操作,准确查找进程号是系统管理和日常运维的基础技能,本文将详细介绍Linux中查找进程号的多种方法,涵盖基础命令、进阶技巧及实用场景,使用ps命令查找进程号ps(proce……

    2025年9月30日
    1200
  • Linux如何读取MATLAB的.mat文件?

    使用Python的Scipy库(推荐)适用于大多数.mat文件(v7.3以下版本),需安装Python环境:pip install scipy numpy操作步骤:创建Python脚本(如read_mat.py):from scipy.io import loadmatdata = loadmat('y……

    2025年7月15日
    5600
  • Linux系统下如何运行程序、命令及应用软件?

    在Linux系统中,“运行”是一个涵盖范围较广的概念,可能包括执行命令、运行脚本、启动程序、管理服务等,本文将从基础命令操作到程序运行、服务管理等多个维度,详细说明Linux下的运行方法,帮助用户全面掌握不同场景下的操作逻辑,基础命令的运行Linux的核心是命令行终端,几乎所有操作都可通过命令完成,运行基础命令……

    2025年9月29日
    1500
  • Linux磁盘空间不足?如何彻底清理与扩展

    查看磁盘空间使用情况整体磁盘占用 (df命令)df -h # 以人类可读格式(GB/MB)显示所有挂载点关键列解读:Filesystem:磁盘分区名称(如/dev/sda1)Size:分区总容量Used:已用空间Avail:可用空间Use%:使用百分比(≥80%需警惕)Mounted on:挂载路径(如、/ho……

    2025年6月20日
    4800
  • macOS开发C程序如何完美兼容Linux?

    环境搭建(核心工具链)安装编译器macOS 自带的 Clang 编译器与 Linux 的 GCC 存在差异,需安装 GNU 工具链:brew install gcc binutils验证安装:gcc-13 –version(版本号随 Brew 更新)兼容性头文件与库Linux 特有头文件(如 <sys……

    2025年6月27日
    5900

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信