在Linux系统中,硬盘格式(即文件系统类型)是数据存储和管理的基础,常见的格式包括ext4、NTFS、FAT32、XFS等,不同格式支持不同的特性(如权限、大小、日志等),准确查看硬盘格式有助于系统维护、数据迁移或跨平台兼容性处理,以下是几种常用的查看方法,涵盖不同场景需求。

使用 lsblk 命令查看块设备信息
lsblk(list block devices)是Linux中查看块设备信息的常用工具,通过选项可直观显示文件系统类型。
语法:lsblk [选项] [设备名]
常用选项:
-F或--fs:显示文件系统类型(FSTYPE);-f:显示详细信息,包括标签(LABEL)、UUID、挂载点等;-l或--list:以列表形式输出(默认为树状结构)。
示例:
查看所有磁盘的文件系统类型(列表形式):
lsblk -l -F
输出可能如下:
NAME FSTYPE FSVER LABEL UUID MOUNTPOINT
sda
├─sda1 ntfs Windows 1234-5678 /mnt/win
├─sda2 ext4 1.0 abcdef12-3456-7890-abcd-ef1234567890 /
└─sda3 swap 1 none [SWAP]
nvme0n1
└─nvme0n1p1 ext4 1.0 fedcba09-8765-4321-fedc-ba0987654321 /home
适用场景:快速查看所有磁盘及其分区的文件系统类型,适合日常系统管理。
使用 blkid 命令查看设备属性
blkid(block device identifier)专门用于显示块设备的属性,包括文件系统类型、UUID、LABEL等,支持精确过滤。
语法:blkid [选项] [设备名]
常用选项:
-o list:以键值对形式输出(更易解析);-g:刷新设备缓存(适用于新挂载设备未识别的情况);-s TYPE:仅显示文件系统类型。
示例:
查看 /dev/sda1 的文件系统类型:
blkid -s TYPE /dev/sda1
输出:
/dev/sda1: TYPE="ntfs"
查看所有设备的文件系统类型(键值对形式):

blkid -o list
适用场景:需要精确获取单个或多个设备的文件系统类型,适合脚本编写或调试。
使用 fdisk 命令查看分区表及文件系统
fdisk 是经典的分区管理工具,通过查看分区表可间接获取文件系统类型(需结合分区信息判断)。
语法:sudo fdisk -l [设备名]
操作步骤:
- 执行
sudo fdisk -l,列出所有磁盘及分区; - 找到目标分区(如
/dev/sda2),观察System列(显示文件系统类型,如Linux对应 ext4/swap,NTFS对应 Windows 分区等)。
示例输出:
Disk /dev/sda: 500 GiB, 536870912000 bytes, 1048576000 sectors
Disk model: WDC WD500...
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: dos
Disk identifier: 0x12345678
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 2097151 2095104 1G 7 NTFS/exFAT
/dev/sda2 2097152 1048575999 1046478848 500G 83 Linux
注意:fdisk 的 System 列可能不显示完整文件系统类型(如 Linux 可能是 ext4/XFS),需结合其他命令确认。
适用场景:同时查看分区表结构和文件系统类型,适合磁盘管理任务。
使用 parted 命令查看高级分区信息
parted 是比 fdisk 更强大的分区工具,支持 GPT、MBR 等多种分区表,可精确显示文件系统类型。
语法:sudo parted -l [设备名]
示例:
sudo parted -l
输出可能包含:
Model: WDC WD500... (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 2100MB 2095MB ntfs boot
2 2100MB 500GB 498GB ext4 root
适用场景:处理 GPT 分区表、大容量磁盘或需要详细分区信息时。
使用 df 命令查看已挂载文件系统
df(disk free)主要用于显示已挂载文件系统的磁盘使用情况,但也可通过 Type 列查看文件系统类型。
语法:df -Th [挂载点]
选项:

-T:显示文件系统类型;-h:以人类可读格式显示大小(如 K、M、G)。
示例:
查看当前已挂载文件系统的类型:
df -Th
输出:
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda2 ext4 480G 50G 400G 11% /
/dev/sda1 ntfs 950M 200M 750M 21% /mnt/win
tmpfs tmpfs 3.9G 0 3.9G 0% /dev/shm
适用场景:仅关注已挂载文件系统的类型,适合日常磁盘空间管理。
常用命令对比总结
| 命令 | 主要功能 | 适用场景 | 输出示例关键词 |
|---|---|---|---|
| lsblk | 显示块设备及文件系统类型 | 快速查看所有磁盘分区格式 | FSTYPE, MOUNTPOINT |
| blkid | 显示设备属性(含文件系统类型) | 精确获取单个设备格式 | TYPE=”ext4″ |
| fdisk | 查看分区表及文件系统类型 | 分区管理+格式查看 | System=”Linux” |
| parted | 查看高级分区信息及文件系统 | GPT分区、大容量磁盘 | File system=”ntfs” |
| df | 查看已挂载文件系统类型及使用情况 | 已挂载磁盘的格式查看 | Type=”ext4″ |
注意事项
- 权限问题:部分命令(如
fdisk、parted)需要sudo权限,因为直接访问设备文件需要管理员权限; - 未挂载设备:
df仅显示已挂载文件系统,未挂载设备需用lsblk、blkid或parted查看; - 多路径设备:对于 RAID或多路径设备(如
/dev/dm-0),需结合multipath工具或查看/dev/mapper目录。
相关问答FAQs
Q1:为什么用 lsblk 查看某个分区时,FSTYPE 列显示空白?
A:通常是因为该分区未格式化(无文件系统)或未挂载且未被内核识别,可尝试用 blkid 命令确认,若仍无输出,可能是分区未创建或格式损坏。
Q2:如何确认 Windows 硬盘的 NTFS 格式在 Linux 中是否正常支持?
A:先用 blkid /dev/sdb1 查看是否识别为 TYPE="ntfs",然后尝试手动挂载:sudo mount -t ntfs-3g /dev/sdb1 /mnt/win,若挂载成功,说明支持;若报错(如 “unknown filesystem type”),需安装 ntfs-3g 包(sudo apt install ntfs-3g)。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/37444.html