在linux系统管理与维护中,无论是进行磁盘空间分析、系统性能优化,还是进行分区规划,都需要准确掌握系统中的存储设备结构。本文将详细介绍四种常用的磁盘分区查看方法,涵盖命令行工具与图形界面工具。
1.使用fdisk命令:经典的分区表管理工具
fdisk 是linux系统中历史最悠久、使用最广泛的分区表操作工具之一,几乎所有linux发行版都预装了此工具。
1.1基本使用方法
查看系统中所有磁盘的分区信息:
fdisk -l
1.2命令输出解读
执行上述命令后,将看到类似以下的信息:
[ymadmin@backup ~]$ sudo fdisk -l disk /dev/nvme0n1: 476.94 gib, 512110190592 bytes, 1000215216 sectors disk model: intel ssdpeknu512gzh 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 disk identifier: dc05cb84-9737-40ef-b866-68c299246539 device start end sectors size type /dev/nvme0n1p1 2048 1230847 1228800 600m efi system /dev/nvme0n1p2 1230848 3327999 2097152 1g linux filesystem /dev/nvme0n1p3 3328000 213043199 209715200 100g linux filesystem /dev/nvme0n1p4 213043200 246597631 33554432 16g linux swap /dev/nvme0n1p5 246597632 1000214527 753616896 359.4g linux filesystem disk /dev/sda: 931.51 gib, 1000204886016 bytes, 1953525168 sectors disk model: wdc wd10ezex-00b 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 disk identifier: a9002b73-b2a7-491d-9ffc-84b45351c365 device start end sectors size type /dev/sda1 2048 1953525134 1953523087 931.5g linux lvm disk /dev/mapper/data_vg-data_lv: 931.51 gib, 1000198897664 bytes, 1953513472 sectors units: sectors of 1 * 512 = 512 bytes sector size (logical/physical): 512 bytes / 4096 bytes i/o size (minimum/optimal): 4096 bytes / 4096 bytes [ymadmin@backup ~]$
主要信息包括:
(一)磁盘基本信息
(1)设备标识:/dev/nvme0n1 (nvme固态硬盘) 和 /dev/sda (sata机械硬盘)
(2)容量表示:同时显示gib(二进制千兆字节)和bytes(字节)两种单位
/dev/nvme0n1: 476.94 gib (512,110,190,592 字节)/dev/sda: 931.51 gib (1,000,204,886,016 字节)
(3)扇区总数:磁盘总容量换算为512字节扇区的数量
(4)磁盘型号:具体的硬件型号信息
(二)技术参数
(1)扇区单位:
units: sectors of 1 * 512 = 512 bytes,表示每个扇区512字节,这是磁盘寻址的基本单位。
(2)扇区大小:
逻辑扇区:操作系统识别的扇区大小(通常为512字节)
物理扇区:磁盘实际的物理扇区大小
- nvme盘:512字节/512字节(传统格式)
- sata盘:512字节/4096字节(4k高级格式)
(3)i/o大小:操作系统与磁盘通信的最佳块大小
- nvme盘:512字节/512字节
- sata盘:4096字节/4096字节(已针对4k扇区优化)
(三)分区表信息
(1)分区表类型:disklabel type: gpt
- 两块磁盘均采用gpt(guid分区表),这是现代uefi系统的标准
- 相比传统的mbr,gpt支持更大容量(>2tb)和更多分区
(2)磁盘标识符:disk identifier: ...
- gpt磁盘的唯一guid标识符
- 格式为32位十六进制数(8-4-4-4-12)
其它信息这里略过。
1.3查看特定磁盘
如果只想查看特定磁盘的信息,可以指定设备路径:
sudo fdisk -l /dev/sda
比如,查看/dev/sda磁盘:
[ymadmin@backup ~]$ sudo fdisk -l /dev/sda [sudo] password for ymadmin: disk /dev/sda: 931.51 gib, 1000204886016 bytes, 1953525168 sectors disk model: wdc wd10ezex-00b 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 disk identifier: a9002b73-b2a7-491d-9ffc-84b45351c365 device start end sectors size type /dev/sda1 2048 1953525134 1953523087 931.5g linux lvm [ymadmin@backup ~]$
1.4适用场景
- 需要进行分区操作前的信息确认
- 需要查看详细的分区表结构
- 在无图形界面的服务器环境中使用
2.使用lsblk命令:直观的块设备查看器
lsblk(list block devices)是专门为列出块设备信息设计的工具,它默认以树状结构展示设备间的层次关系,输出直观易懂。
2.1基本使用方法
lsblk
典型输出示例:
[ymadmin@backup ~]$ lsblk name maj:min rm size ro type mountpoints sda 8:0 0 931.5g 0 disk `-sda1 8:1 0 931.5g 0 part `-data_vg-data_lv 253:0 0 931.5g 0 lvm /data nvme0n1 259:0 0 476.9g 0 disk |-nvme0n1p1 259:1 0 600m 0 part /boot/efi |-nvme0n1p2 259:2 0 1g 0 part /boot |-nvme0n1p3 259:3 0 100g 0 part / |-nvme0n1p4 259:4 0 16g 0 part [swap] `-nvme0n1p5 259:5 0 359.4g 0 part /data01 [ymadmin@backup ~]$
2.2常用参数选项
(1)查看文件系统信息:
lsblk -f
[ymadmin@backup ~]$ lsblk -f name fstype fsver label uuid fsavail fsuse% mountpoints sda `-sda1 lvm2_member lvm2 001 gla4qa-oexa-ibda-bn6b-hy6t-cicr-rul3f2 `-data_vg-data_lv xfs eed8af6c-a5b1-4cb4-9f54-414508ed51c6 861.1g 8% /data nvme0n1 |-nvme0n1p1 vfat fat32 034e-53da 591.8m 1% /boot/efi |-nvme0n1p2 xfs 5ae0f4b9-7ade-4ffc-b473-13dfded35103 633.5m 34% /boot |-nvme0n1p3 xfs 315b1bd4-44bc-4901-9010-de4b091088b0 87.2g 13% / |-nvme0n1p4 swap 1 a6edc51b-4034-4fc0-92d3-e75a3687cd80 [swap] `-nvme0n1p5 xfs ada01fb8-5e5e-4841-8da1-394f5c374eff 356.4g 1% /data01 [ymadmin@backup ~]$
(2)自定义输出列:
lsblk -o name,size,type,fstype,mountpoint,label,uuid
[ymadmin@backup ~]$ lsblk -o name,size,type,fstype,mountpoint,label,uuid name size type fstype mountpoint label uuid sda 931.5g disk `-sda1 931.5g part lvm2_member gla4qa-oexa-ibda-bn6b-hy6t-cicr-rul3f2 `-data_vg-data_lv 931.5g lvm xfs /data eed8af6c-a5b1-4cb4-9f54-414508ed51c6 nvme0n1 476.9g disk |-nvme0n1p1 600m part vfat /boot/efi 034e-53da |-nvme0n1p2 1g part xfs /boot 5ae0f4b9-7ade-4ffc-b473-13dfded35103 |-nvme0n1p3 100g part xfs / 315b1bd4-44bc-4901-9010-de4b091088b0 |-nvme0n1p4 16g part swap [swap] a6edc51b-4034-4fc0-92d3-e75a3687cd80 `-nvme0n1p5 359.4g part xfs /data01 ada01fb8-5e5e-4841-8da1-394f5c374eff [ymadmin@backup ~]$

(3)显示完整设备路径:
lsblk -p
[ymadmin@backup ~]$ lsblk -p name maj:min rm size ro type mountpoints /dev/sda 8:0 0 931.5g 0 disk `-/dev/sda1 8:1 0 931.5g 0 part `-/dev/mapper/data_vg-data_lv 253:0 0 931.5g 0 lvm /data /dev/nvme0n1 259:0 0 476.9g 0 disk |-/dev/nvme0n1p1 259:1 0 600m 0 part /boot/efi |-/dev/nvme0n1p2 259:2 0 1g 0 part /boot |-/dev/nvme0n1p3 259:3 0 100g 0 part / |-/dev/nvme0n1p4 259:4 0 16g 0 part [swap] `-/dev/nvme0n1p5 259:5 0 359.4g 0 part /data01 [ymadmin@backup ~]$
(4)以json格式输出(便于脚本处理):
lsblk -j
[ymadmin@backup ~]$ lsblk -j
{
"blockdevices": [
{
"name": "sda",
"maj:min": "8:0",
"rm": false,
"size": "931.5g",
"ro": false,
"type": "disk",
"mountpoints": [
null
],
"children": [
{
"name": "sda1",
"maj:min": "8:1",
"rm": false,
"size": "931.5g",
"ro": false,
"type": "part",
"mountpoints": [
……2.3实用技巧
(1) 仅显示磁盘设备(不显示分区)
[ymadmin@backup ~]$ lsblk -d name maj:min rm size ro type mountpoints sda 8:0 0 931.5g 0 disk nvme0n1 259:0 0 476.9g 0 disk [ymadmin@backup ~]$
上面命令只显示了两个磁盘的基本信息,当磁盘很多时,这很方便:

(2)以字节为单位显示大小
[ymadmin@backup ~]$ lsblk -b name maj:min rm size ro type mountpoints sda 8:0 0 1000204886016 0 disk `-sda1 8:1 0 1000203820544 0 part `-data_vg-data_lv 253:0 0 1000198897664 0 lvm /data nvme0n1 259:0 0 512110190592 0 disk |-nvme0n1p1 259:1 0 629145600 0 part /boot/efi |-nvme0n1p2 259:2 0 1073741824 0 part /boot |-nvme0n1p3 259:3 0 107374182400 0 part / |-nvme0n1p4 259:4 0 17179869184 0 part [swap] `-nvme0n1p5 259:5 0 385851850752 0 part /data01 [ymadmin@backup ~]$
(3)查看scsi设备信息
[ymadmin@backup ~]$ lsblk -s name hctl type vendor model rev serial tran sda 5:0:0:0 disk ata wdc wd10ezex-00bbha0 1a01 wd-wcc6y3ul5624 sata [ymadmin@backup ~]$
2.4适用场景
- 快速了解系统磁盘分区结构
- 查看设备间的层次关系
- 在脚本编程中获取设备信息
3.使用hwinfo命令:全面的硬件信息查询工具
hwinfo 是一个功能强大的硬件信息查询工具,它不仅提供存储设备信息,还能显示系统中所有硬件的详细信息。
3.1安装方法
如果在系统里找不到hwinfo命令,则执行以下命令安装它,根据不同的linux发行版,安装命令有所不同:
# debian/ubuntu/mint系列 sudo apt install hwinfo # rhel/centos/fedora/rocky linux/almalinux系列 sudo yum install hwinfo # 或 sudo dnf install hwinfo

3.2使用方法
(1)查看磁盘详细信息:
sudo hwinfo --disk
如下,该命令检测到两块磁盘:一块512gb intel nvme固态硬盘(型号ssdpeknu512gzh,序列号btka2122092q512a)通过pcie总线连接,以及一块1tb西部数据机械硬盘(型号wd10ezex-00b,序列号wd-wcc6y3ul5624)通过sata接口连接,两块磁盘均被系统正常识别。
[ymadmin@backup ~]$ sudo hwinfo --disk [sudo] password for ymadmin: 24: nvme 00.0: 10600 disk [created at block.255] unique id: gp4z.wr9ori9ood8 parent id: bgte.hh1m6tpwmm8 sysfs id: /class/block/nvme0n1 sysfs busid: nvme0 sysfs device link: /devices/pci0000:00/0000:00:0e.0/pci10000:e0/10000:e0:1d.4/10000:e1:00.0/nvme/nvme0 hardware class: disk model: "intel intel ssdpeknu512gzh" vendor: pci 0x8086 "intel corporation" device: pci 0xf1aa "intel ssdpeknu512gzh" subvendor: pci 0x8086 "intel corporation" subdevice: pci 0x390f serial id: "btka2122092q512a" driver: "nvme" driver modules: "nvme" …… 25: ide 500.0: 10600 disk [created at block.255] unique id: 3ool.bs3gg88bma8 parent id: gf9x.+ek8g6ckzc1 sysfs id: /class/block/sda sysfs busid: 5:0:0:0 sysfs device link: /devices/pci0000:00/0000:00:0e.0/pci10000:e0/10000:e0:17.0/ata6/host5/target5:0:0/5:0:0:0 hardware class: disk model: "wdc wd10ezex-00b" vendor: "wdc" device: "wd10ezex-00b" revision: "1a01" serial id: "wd-wcc6y3ul5624" driver: "ahci", "sd" driver modules: "ahci", "sd_mod" ……
(2)简洁模式显示磁盘信息:
sudo hwinfo --disk --short
[ymadmin@backup ~]$ sudo hwinfo --disk --short disk: /dev/nvme0n1 intel intel ssdpeknu512gzh /dev/sda wdc wd10ezex-00b [ymadmin@backup ~]$
(3)查看所有块设备概要:
sudo hwinfo --short --block
[ymadmin@backup ~]$ sudo hwinfo --short --block disk: /dev/nvme0n1 intel intel ssdpeknu512gzh /dev/sda wdc wd10ezex-00b partition: /dev/nvme0n1p1 partition /dev/nvme0n1p2 partition /dev/nvme0n1p3 partition /dev/nvme0n1p4 partition /dev/nvme0n1p5 partition /dev/sda1 partition [ymadmin@backup ~]$
3.3输出特点
hwinfo输出的信息非常详尽,包括:
- 硬件厂商和具体型号
- 设备驱动信息
- 物理特性(如转速、缓存大小、接口类型等)
- 固件/bios版本
- 设备唯一标识符
- smart健康状态信息
3.4适用场景
- 硬件故障排查和诊断
- 系统硬件信息收集与归档
- 需要了解硬盘物理特性的场合
4.使用图形界面工具:直观的可视化查看
对于 linux 桌面用户,可通过图形界面工具直观查看磁盘与分区。通常在系统菜单中搜索 “磁盘”(或 “disks”)即可找到相应应用,打开后即可浏览当前连接的磁盘及其分区情况。

5.工具对比
| 工具 | 主要优势 | 最佳适用场景 | 是否需要root权限 |
|---|---|---|---|
| fdisk | 信息详细、功能经典、系统自带 | 服务器环境、分区操作前检查 | 是 |
| lsblk | 输出直观、树状结构、脚本友好 | 日常查看、脚本编程、快速了解结构 | 通常不需要 |
| hwinfo | 信息最全面、包含硬件细节 | 硬件诊断、信息收集、故障排查 | 是 |
| 图形工具 | 可视化界面、操作直观、适合新手 | 桌面环境、教学演示、直观查看 | 部分操作需要 |
6.实用工作流程建议
6.1日常快速检查
第一步:快速查看磁盘分区结构
lsblk
第二步:如有需要,查看更详细的分区信息
sudo fdisk -l
6.2硬件故障排查
第一步:查看硬件识别情况
sudo hwinfo --disk --short
第二步:检查分区表
sudo fdisk -l /dev/sda
第三步:查看系统日志
sudo dmesg | grep -i disk sudo journalctl -k | grep -i sda
6.3脚本编程
使用lsblk的json输出格式或使用可解析的文本格式:
lsblk -j > disk_info.json lsblk -o name,size,type,mountpoint -n > disk_list.txt
7.常见问题与解决方案
7.1新硬盘不显示分区
# 检查内核是否识别到硬盘 sudo dmesg | tail -20 # 查看所有块设备 lsblk # 如果设备存在但无分区,可能需要创建分区表 # 警告:此操作会清除所有数据! # sudo fdisk /dev/sdb
7.2查看特定类型的分区
# 只查看ext4分区 lsblk -f | grep ext4 # 查看所有挂载的分区 findmnt

7.3获取分区uuid

# 方法一:使用lsblk lsblk -f # 方法二:使用blkid sudo blkid # 方法三:查看/dev/disk/by-uuid/ ls -l /dev/disk/by-uuid/
以上就是linux中查看磁盘分区的4种方法详解的详细内容,更多关于linux查看磁盘分区的资料请关注代码网其它相关文章!
发表评论