Linux如何查看磁盘是否存在分区表信息?

Linux系统中,分区表是管理磁盘存储结构的核心,它定义了磁盘如何被划分为不同的分区(如主分区、扩展分区、逻辑分区),以及每个分区的起始和结束位置、文件系统类型等信息,查看分区表对于系统管理、故障排查、磁盘扩容等操作至关重要,以下是Linux中查看分区表的常用命令及详细方法,涵盖不同场景和需求。

linux 如何查看是否分区表

基础命令:lsblk——快速查看块设备及分区结构

lsblk(list block devices)是Linux中最常用的块设备查看工具,它能以树状结构列出所有磁盘及其分区信息,包括设备名、大小、分区类型、挂载点等,适合快速了解磁盘的整体布局。

使用方法:

lsblk

输出示例:

NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0  100G  0 disk 
├─sda1   8:1    0   50G  0 part /home
├─sda2   8:2    0   20G  0 part /
└─sda5   8:5    0   30G  0 part /data
sdb      8:16   0  500G  0 disk 
└─sdb1   8:17   0  500G  0 part /mnt/backup

关键字段说明:

  • NAME:设备名(如sda、sda1,其中sda是磁盘,sda1是分区);
  • TYPE:类型(disk表示整块磁盘,part表示分区);
  • SIZE:分区或磁盘大小;
  • MOUNTPOINT:挂载点(未挂载时显示为空)。

扩展选项:

  • -f:显示文件系统类型(如ext4、xfs)和UUID,lsblk -f,输出会增加FSTYPE(文件系统类型)和UUID(分区唯一标识)字段;
  • -l:以列表形式显示(默认为树状),适合脚本处理;
  • -a:显示所有设备,包括空设备。

传统工具:fdisk——查看和管理MBR/GPT分区表

fdisk是Linux经典的分区管理工具,支持MBR(主引导记录)和GPT(GUID分区表)两种分区表类型,适合查看分区的详细布局(如起始扇区、结束扇区、分区类型等)。

使用方法:

fdisk -l [设备名]  # 查看指定磁盘的分区表,如fdisk -l /dev/sda

输出示例(MBR分区表):

Disk /dev/sda: 100 GiB, 107374182400 bytes, 209715200 sectors
Disk model: Virtual Disk
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: dos  # 标识分区表类型为MBR(dos)
Disk identifier: 0x12345678
Device     Boot Start      End  Sectors Size Id Type
/dev/sda1  *     2048  104857599 104855552  50G 83 Linux
/dev/sda2      104857600 209715199 104857600  20G 83 Linux
/dev/sda5      209715200 209715199       0   1 Extended  # 扩展分区

输出示例(GPT分区表):

Disk /dev/sdb: 500 GiB, 536870912000 bytes, 1048576000 sectors
Disk model: Virtual Disk
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  # 标识分区表类型为GPT
Disk identifier: ABCD-1234
Device     Start        End    Sectors  Size Type
/dev/sdb1   2048  1048575999 1048573952  500G Linux filesystem

关键字段说明:

  • Disklabel type:分区表类型(dos为MBR,gpt为GPT);
  • Device:分区设备名;
  • Start/End:分区的起始和结束扇区;
  • Sectors:分区总扇区数;
  • Id/Type:分区类型标识(MBR中83表示Linux原生分区,8e表示LVM;GPT中通过类型UUID区分)。

交互模式:

直接输入fdisk /dev/sda可进入交互模式,通过p(打印分区表)、g(转换为GPT)、o(转换为MBR)等命令操作分区。

linux 如何查看是否分区表

现代工具:parted——支持GPT/MBR的高级分区查看工具

parted是比fdisk更现代的分区工具,原生支持GPT和MBR,尤其适合处理大容量磁盘(超过2TB)和复杂分区布局,输出信息更结构化。

使用方法:

parted -l  # 列出所有磁盘的分区信息
parted /dev/sda print  # 查看指定磁盘的分区详情

输出示例(GPT分区表):

Model: Virtual Disk (scsi)
Disk /dev/sda: 100GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt  # 分区表类型
Disk Flags: 
Number  Start   End     Size    File system  Name  Flags
 1      1049kB  51.0GB  51.0GB  ext4         boot  # 分区1,带boot标志
 2      51.0GB  71.0GB  20.0GB  ext4               # 分区2

输出示例(MBR分区表):

Model: Virtual Disk (scsi)
Disk /dev/sdb: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos  # MBR分区表类型
Disk Flags: 
Number  Start   End     Size    Type      File system  Flags
 1      32.3kB  500GB   500GB  primary   ext4         boot, lba  # 主分区,带boot和lba标志

关键字段说明:

  • Partition Table:明确标识分区表类型(gptmsdos);
  • Number:分区号;
  • Start/End:分区的起始和结束位置(支持GB/MB等单位);
  • Flags:分区标志(如boot表示引导分区,lba表示支持大硬盘)。

辅助工具:blkid与df——查看分区标识和挂载状态

blkid:显示分区的UUID、文件系统类型等唯一标识

blkid

输出示例:

/dev/sda1: UUID="1234abcd-5678-efgh-ijkl-mnopqrstuvwx" TYPE="ext4" PARTUUID="12345678-01" PARTLABEL="root"
/dev/sda2: UUID="9876fedc-4321-ba98-7654-zyxwvutsrqp" TYPE="swap" PARTUUID="12345678-02"
  • UUID:分区的全局唯一标识,用于/etc/fstab挂载配置;
  • PARTUUID:分区表中的唯一标识(GPT特有);
  • TYPE:文件系统类型(如ext4、swap、ntfs)。

df:查看已挂载分区的使用情况

df -h  # 以人类可读格式(GB/MB)显示

输出示例:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        50G   20G   30G  40% /home
/dev/sdb1       500G  100G  400G  20% /mnt/backup
  • 注意:df仅显示已挂载的分区,未挂载的分区需用lsblkfdisk查看。

分区表类型对比:MBR与GPT

特性 MBR(主引导记录) GPT(GUID分区表)
最大支持容量 2TB(需配合LBA48) 无限制(理论支持18EB)
最大分区数 4个主分区或3个主分区+1个扩展分区(逻辑分区无限制) 128个分区(可扩展)
分区表标识 磁盘首个扇区的“55 AA”签名 磁盘开头和结尾的“EFI PART”签名
兼容性 兼容所有BIOS/UEFI系统 仅UEFI系统支持(部分BIOS可兼容)
安全性 无备份,分区表损坏易导致数据丢失 主分区表+备份分区表,更安全
适用场景 小容量磁盘、旧系统、需兼容传统BIOS时 大容量磁盘、现代UEFI系统、多分区需求时

Linux中查看分区表需根据场景选择工具:

  • 快速查看:用lsblk(树状结构)或lsblk -f(文件系统类型);
  • 详细布局:用fdisk -l(MBR/GPT分区信息)或parted -l(现代分区表支持);
  • 分区标识:用blkid(UUID/文件系统类型);
  • 挂载状态:用df(已挂载分区使用情况)。

通过这些工具的组合,可全面掌握磁盘分区结构,为系统管理提供准确依据。

linux 如何查看是否分区表

相关问答FAQs

Q1:如何快速判断Linux系统中的磁盘分区表类型是MBR还是GPT?

A:可通过以下两种方式快速判断:

  1. 使用fdisk -l命令,查看输出中的“Disklabel type”字段:若显示“dos”则为MBR,显示“gpt”则为GPT;
  2. 使用parted -l命令,查看“Partition Table”字段:若为“msdos”则是MBR,“gpt”则是GPT。
    fdisk -l /dev/sda | grep "Disklabel type",输出“Disklabel type: dos”即MBR。

Q2:为什么df命令看不到未挂载的分区?如何查看未挂载的分区?

Adf命令仅显示已挂载的文件系统,因此未挂载的分区不会出现在其输出中,要查看未挂载的分区,可使用以下方法:

  1. lsblk:直接列出所有分区,未挂载的分区“MOUNTPOINT”字段为空;
  2. fdisk -l:显示所有分区的详细信息,无论是否挂载;
  3. parted -l:列出所有磁盘的分区表,包含未挂载分区。
    lsblk | grep -v MOUNTPOINT可过滤出未挂载的分区(需结合grep排除表头)。

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

(0)
酷番叔酷番叔
上一篇 2025年10月6日 16:53
下一篇 2025年10月6日 17:01

相关推荐

  • Linux如何实时监控网速?

    命令行工具(精准高效)nload(实时流量监控)安装(Debian/Ubuntu):sudo apt install nload使用:nload界面显示实时下载(Incoming)和上传(Outgoing)速度(单位:KB/s、MB/s),按 ← → 方向键切换网卡,F2显示选项,q退出,特点:轻量级、直观,适……

    2025年7月26日
    4100
  • Linux配置文件(.conf)如何生效?

    Linux作为开源操作系统,其高度可定制性很大程度上依赖于配置文件(conf文件),这些配置文件分布在系统的各个目录中,控制着从内核参数到服务行为、从用户环境到软件设置的方方面面,理解Linux配置文件的生效机制,是系统管理和优化的基础,本文将详细解析不同类型配置文件的生效路径、触发条件及注意事项,Linux配……

    2025年10月7日
    1000
  • 如何检查PHP-FPM是否在运行?

    在 Linux 系统中重启 PHP 服务的方法取决于 PHP 的运行方式(如 PHP-FPM 或 Apache 模块),以下是详细操作指南:确认 PHP 运行模式在操作前,先通过以下命令确定 PHP 的运行方式:systemctl status php8.x-fpm # 适用于 Ubuntu/Debian(替换……

    2025年6月15日
    5800
  • Linux系统如何添加静态ARP条目?

    在Linux系统中,静态ARP(地址解析协议)绑定是一种将IP地址与MAC地址固定关联的技术,主要用于防止ARP欺骗攻击、确保网络通信稳定性,或在特定网络环境中(如服务器集群、固定终端)实现IP与MAC的严格绑定,动态ARP协议允许设备动态学习IP与MAC的映射关系,但这也给了攻击者伪造ARP包进行中间人攻击的……

    2025年8月22日
    3100
  • 如何在linux部署代码

    Linux 部署代码可先配置好环境,如安装依赖软件等,再通过版本控制

    2025年8月13日
    3100

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信