核心原则是不跨系统操作、先备份再动手、严格区分分区归属;必须用windows工具调windows分区、linux工具调linux分区,严禁混用,efi和winre分区不可调整,释放空间需从windows压缩卷获得未分配空间后再在linux live环境扩展。

在双系统(Windows + Linux)环境下调整分区大小,核心原则是不跨系统操作、先备份再动手、严格区分分区归属。直接用 Linux 工具缩 Windows 分区,或用 Windows 工具动 Linux 分区,极大概率导致文件系统损坏或启动失败。
明确分区归属,避免误操作
双系统磁盘通常包含多个关键分区,必须逐个识别用途和归属:
-
EFI 系统分区(ESP):一般为 FAT32 格式、100–500 MB,标记为
boot, esp,被两个系统共用,不要调整大小,也不要格式化 -
Windows 主分区(如 /dev/sda2):NTFS 格式,标有
msftdata或显示为“基本数据分区”,只能在 Windows 下用磁盘管理或傲梅分区助手调整 - Linux 根分区(如 /dev/sda5)或 /home 分区:ext4/XFS 格式,只能在 Linux Live 环境下(如 Ubuntu USB 启动盘)用 gparted 或命令行调整
-
Windows 恢复分区(WinRE):通常 500 MB–1 GB,标为
hidden, diag,不要删除或移动,否则 Windows 可能无法进恢复环境
安全调整 Linux 分区的正确流程
以扩大 /home 分区为例(假设它位于 /dev/sda5,且其前/后有未分配空间):
- 用 Ubuntu Live USB 启动,确保目标分区未挂载(
lsblk确认无挂载点) - 运行
sudo e2fsck -f /dev/sda5检查 ext4 文件系统完整性 - 若需扩大:先用
sudo parted /dev/sda resizepart 5 <end-sector></end-sector>调整分区表(保持起始扇区不变),再执行sudo resize2fs /dev/sda5扩展文件系统 - 若需缩小:必须先用
resize2fs /dev/sda5 <new-size></new-size>缩小文件系统,再用parted resizepart缩小分区表,顺序颠倒会丢数据 - 全程避免使用
fdisk删除重建——它不支持无损调整,只适用于 MBR 且可停机的旧场景
释放空间给 Linux 的推荐路径
想给 Linux 新增或扩大空间,最稳妥的方式是从 Windows 侧腾出连续未分配空间:
- 在 Windows 中打开“磁盘管理”,右键 Windows 主分区 → “压缩卷”,输入要释放的 MB 数(例如 40960 = 40 GB)
- 压缩后出现一块“未分配”区域,不要新建卷、不要格式化、不要写入任何数据
- 重启进入 Ubuntu Live 环境,用
gparted将这块未分配空间直接扩展到相邻的 Linux 分区(如/dev/sda5) - 若未分配空间不邻接 Linux 分区,不要强行移动分区——耗时长、风险高;建议重装时重新规划布局
不可跳过的准备工作
任何调整前,必须完成以下三步:
-
全盘备份:Windows 用 Macrium Reflect 或 WBAdmin;Linux 用
rsync -aHAX或 Clonezilla 镜像整个根分区 -
确认启动模式:
efibootmgr -v(UEFI)或ls /sys/firmware/efi存在即为 UEFI,确保 ESP 分区健康(sudo fsck.fat -n /dev/sda1) -
验证 GRUB:调整后重启进 Ubuntu,运行
sudo update-grub并检查 Windows 启动项是否仍在列表中
双系统分区调整不是单纯的技术操作,而是对两个生态边界的协同管理。只要守住归属边界、用对工具、留足备份余量,就能把风险控制在可接受范围。











