Linux下如何查看磁盘是否已分区?

Linux系统中,查看分区信息是系统管理和维护的基础操作,无论是排查存储问题、规划磁盘空间还是进行系统安装,都需要准确掌握当前系统的分区状态,Linux提供了多种命令和工具来查看分区信息,这些工具从不同角度展示分区的结构、类型、大小、挂载状态等关键数据,用户可以根据具体需求选择合适的方法。

linux 如何查看是否分区

查看分区的基础概念

分区是将物理硬盘划分为多个逻辑区域的过程,常见的分区表类型有MBR(主引导记录)和GPT(GUID分区表),MBR支持最大2TB磁盘和4个主分区,而GPT支持更大容量磁盘和更多分区,在Linux中,分区通常表示为磁盘设备文件,如/dev/sda、/dev/sdb等,其中主分区编号为1-4,逻辑分区从5开始(dev/sda5)。

常用查看分区的方法

使用 lsblk 命令——直观展示块设备信息

lsblk(list block devices)是Linux中最常用、最直观的块设备查看工具,以树状结构展示磁盘及其分区信息,包括设备名、大小、挂载点、文件系统类型等。

基本语法

lsblk [选项]

常用选项

  • -f:显示文件系统类型(如ext4、xfs、swap等)
  • -m:显示设备权限、所有者、组信息
  • -p:显示完整设备路径(默认省略/dev前缀)
  • -t:显示设备拓扑结构(如SATA、NVMe等总线类型)

示例输出

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT  
sdb      8:16   0 931.5G  0 disk  
├─sdb1   8:17   0   500G  0 part /data  
└─sdb2   8:18   0 431.5G  0 part /backup  
sda      8:0    0 238.5G  0 disk  
├─sda1   8:1    0   512M  0 part /boot/efi  
├─sda2   8:2    0    50G  0 part /  
└─sda3   8:3    0   188G  0 part [SWAP]  
nvme0n1 259:0   0 931.5G  0 disk  
└─nvme0n1p1 259:1   0 931.5G  0 part /mnt/nvme  

输出解读

  • NAME:设备名(如sda、nvme0n1)
  • MAJ:MIN:主设备号和次设备号,用于内核识别设备
  • RM:是否可移动设备(1表示可移动,如U盘;0表示固定磁盘)
  • SIZE:设备容量
  • RO:是否只读(1表示只读,0表示可读写)
  • TYPE:设备类型(disk表示磁盘,part表示分区)
  • MOUNTPOINT:挂载点(未挂载时显示为空,SWAP分区显示为[SWAP])

使用 fdisk 命令——交互式查看和管理分区表

fdisk 是经典的分区管理工具,支持MBR和GPT分区表,可通过交互式命令查看分区的详细结构,如起始扇区、结束扇区、分区类型等。

基本语法

sudo fdisk [选项] /dev/sdX

常用选项

  • -l:列出指定磁盘的所有分区(不进入交互模式)
  • -u:显示扇区而非柱面单位

示例操作
查看 /dev/sda 的分区表:

linux 如何查看是否分区

sudo fdisk -l /dev/sda

输出示例

Disk /dev/sda: 238.5 GiB, 256060514304 bytes, 500118192 sectors  
Disk model: WDC WD10EZEX-08M2NA0  
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: 12345678-9012-3456-7890-123456789ABC  
Device      Start       End   Sectors  Size Type  
/dev/sda1    2048   1050623   1048576  512M EFI System  
/dev/sda2  1050624 105062399 104011776   50G Linux filesystem  
/dev/sda3 105062400 500117503 395055104  188G Linux swap  

交互模式常用命令

  • p:打印当前分区表
  • l:列出所有支持的分区类型(如Linux、swap、EFI等)
  • q:退出不保存
  • w:保存并退出

使用 parted 命令——支持GPT的高级分区工具

parted 是比 fdisk 更现代的工具,对GPT分区表支持更好,可查看分区表类型、分区大小、文件系统等信息,并支持调整分区大小等操作。

基本语法

sudo parted [选项] /dev/sdX [命令]

常用选项

  • -l:列出所有磁盘及其分区信息
  • -s:静默模式,不显示交互提示

示例操作
查看所有磁盘分区:

sudo parted -l

输出示例

Model: WDC WD10EZEX-08M2NA0 (scsi)  
Disk /dev/sda: 256GB  
Sector size (logical/physical): 512B/4096B  
Partition Table: gpt  
Disk Flags: 
Number  Start   End     Size    File system  Name  Flags
 1      1049kB  538MB   537MB   fat32               boot, esp
 2      538MB   51.0GB  50.5GB  ext4
 3      51.0GB  238GB   187GB   linux-swap(v1)
Model: Samsung SSD 870 EVO 1TB (nvme)
Disk /dev/nvme0n1: 1000GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 
Number  Start   End     Size    File system  Name  Flags
 1      1024B   1000GB  1000GB  ext4

使用 df 命令——查看已挂载分区的使用情况

df(disk free)主要用于查看文件系统的磁盘使用空间,间接反映分区的挂载状态和容量使用情况。

基本语法

df [选项] [挂载点/设备文件]

常用选项

linux 如何查看是否分区

  • -h:人性化显示容量(如K、M、G)
  • -T:显示文件系统类型
  • -a:显示所有文件系统(包括虚拟文件系统)

示例输出

Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/sda2      ext4       50G   15G   33G  32% /
/dev/sda1      vfat      511M  6.0M  505M   2% /boot/efi
/dev/sdb1      ext4      500G  200G  300G  41% /data
/dev/nvme0n1p1 ext4      931G  450G  481G  49% /mnt/nvme
tmpfs          tmpfs      16G     0   16G   0% /dev/shm

使用 blkid 命令——查看分区的属性信息

blkid 用于显示块设备的属性,包括分区UUID、文件系统类型、卷标等,常用于确认分区的唯一标识和文件系统类型。

基本语法

blkid [选项] [设备文件]

示例输出

/dev/sda1: UUID="C12A7328-F81F-11D2-BA4B-00A0C93EC93B" TYPE="vfat" PARTLABEL="EFI System" PARTUUID="12345678-01"  
/dev/sda2: UUID="a1b2c3d4-e5f6-7890-1234-567890abcdef" TYPE="ext4" PARTUUID="12345678-02"  
/dev/sda3: UUID="b2c3d4e5-f6a7-8901-2345-67890abcdef1" TYPE="swap" PARTUUID="12345678-03"  

不同工具的功能对比

工具名称 主要用途 常用选项 输出重点
lsblk 直观查看块设备树状结构 -f, -m, -p 设备名、大小、挂载点、文件系统类型
fdisk 交互式查看/管理分区表 -l, -u 分区起始/结束扇区、分区类型、分区表类型
parted 高级分区工具(支持GPT) -l, -s 分区表类型、分区大小、文件系统、标志位
df 查看已挂载分区的使用情况 -h, -T 文件系统使用率、挂载点、文件系统类型
blkid 查看设备属性(UUID/类型) 分区UUID、文件系统类型、卷标

相关问答FAQs

Q1:为什么 df 命令显示的磁盘容量和 lsblk 不一致?
A:df 命令显示的是文件系统层面的可用空间,它会扣除文件系统元数据(如inode表、日志等)占用的空间,因此可用容量通常略小于设备总容量;而 lsblk 显示的是设备的物理或逻辑总容量,不扣除元数据,一个50G的分区,lsblk 显示50G,而 df 可能显示约47G可用(取决于文件系统类型和元数据大小)。df 仅显示已挂载的文件系统,未挂载的分区不会出现在输出中。

Q2:如何查看分区的详细格式信息(如GPT/MBR)和分区标志?
A:使用 parted 命令可以查看分区的详细格式和标志,查看 /dev/sda 的分区表类型和标志:

sudo parted /dev/sda print

输出中会明确标注 Partition Table: gptPartition Table: msdos,以及每个分区的标志(如 boot(引导分区)、esp(EFI系统分区)、swap(交换分区)等),如果使用 fdisk,可在交互模式输入 p 查看分区表类型,输入 l 查看所有支持的分区类型及其标志。

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

(0)
酷番叔酷番叔
上一篇 2025年10月6日 17:58
下一篇 2025年10月6日 18:23

相关推荐

  • 如何查看Linux系统中的服务运行状态?

    在Linux系统中,服务通常指在后台持续运行的守护进程(daemon),它们为系统或应用程序提供特定功能,如Web服务、数据库服务、网络服务等,查看Linux中的服务状态、运行情况、配置信息等是系统管理和运维的基础操作,本文将详细介绍多种查看服务的方法,涵盖命令行工具、图形化界面及日志分析等场景,帮助用户全面掌……

    2025年9月9日
    4900
  • linux如何从键盘上输入

    Linux中,通过打开终端或控制台,直接在命令行提示符下输入指令并

    2025年8月10日
    6000
  • linux如何编译python3.5

    Linux中,编译Python 3.5可先安装依赖包,下载源码后执行配置、编译和安装命令,如`.

    2025年8月15日
    5300
  • Linux下C语言开发如何提升效率?

    环境搭建安装基础工具打开终端执行(适用于Debian/Ubuntu):sudo apt update && sudo apt install build-essential gdb gitbuild-essential:包含GCC编译器、Make等核心工具gdb:调试器git:版本控制验证安装g……

    2025年6月15日
    7300
  • Linux命令如何解压zip文件?

    在Linux系统中,处理zip压缩文件最常用的命令是unzip,它功能强大且支持多种解压场景,无论是日常文件管理还是脚本自动化处理,掌握unzip命令的用法都能提升效率,本文将详细介绍unzip命令的基本语法、常用选项、典型应用场景及注意事项,帮助用户灵活应对各种解压需求,unzip命令基本语法unzip命令的……

    2025年9月21日
    5000

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信