BootCamp 扩容

【前言】

Hi各位,我是@旅客君。

相信许多朋友在使用 Mac 的时候都有需要使用 Windows 的情况,虽然使用诸如 Parallels Desktop 的虚拟机软件可能会成为一个比较好的选择,但即使是这样,也难免因为「虚拟化」而导致一部分性能的损失,选择使用 Mac 自带的「Boot Camp」,即「启动转换助理」又会成为另一个不错的方式,但根据 Apple 官方的介绍,在 Boot Camp 安装前确定其大小以后,无法再进行更改,需要调整大小只能删除原来的全部数据,重新确定大小再安装,比较繁琐。

在本篇教程当中,你将学到:如何在「不丢失数据」的情况下为 Mac 中的 Boot Camp 调整(增加/减少)大小。

【注意】

1. 本篇不是「在 Mac 下全新安装 Boot Camp」的相关教程,请悉知;

2. 本篇教程理论上适用于全部的 Mac 机型,其他机型请自行测试。我使用的型号为 MacBook Pro 13 2020 款;

3. 虽然本文指出不会丢失任何数据,但我仍然强烈建议在分区操作之前备份您重要的数据,不管是在 macOS 还是在 Windows 下。由于本次教程而导致数据丢失的,概不负责!

4. 本篇教程分为上下两部分,#1 为扩大 Boot Camp 的大小,#2 为缩小 Boot Camp 的大小。

首先,就让我们看看怎么扩大分区大小吧!

1. 在 macOS 和 Windows 下备份你的重要数据至可移动磁盘(移动硬盘/U 盘)中;

2. 在 macOS 中,打开「磁盘工具」;

BootCamp 扩容

3. 此时选择 macOS 默认安装的宗卷名称,我这里叫做「Macintosh HD」,我们先运行一下该宗卷的「急救」功能,确保目前该宗卷没有错误;

BootCamp 扩容

4. 运行完毕后,我们就可以点击该宗卷的「分区」选项了。由于我们目前需要将 Boot Camp 的分区扩大,因此我们需要将一部分的空间从 macOS 中“剥离”出来;

BootCamp 扩容

5. 遇到此选项时,选择「分区」选项即可;

BootCamp 扩容

6. 之后,我们进入了分区视图,在这里,先点击饼状图下方的加号“+”按钮,可以通过饼状图选择需要扩容的大小,也可在右侧的大小选项卡中直接输入指定的数字,在这里我决定扩大 128GB,这样最终的 Boot Camp 总大小变为 512GB + 128GB = 640GB。名称和格式可以随意;

BootCamp 扩容

7. 点击「应用」和「分区」以及「继续」后,macOS 将开始执行该操作;

BootCamp 扩容
BootCamp 扩容

8. 我们便得到了一个刚刚分出来的宗卷,接下来,我们要做的主要操作就是将该宗卷合并到 Boot Camp 的 Windows 的 C 盘中。当然也可以选择性的将此宗卷作为你的 D 盘使用,这里将演示如何将此宗卷合并到 C 盘中;

BootCamp 扩容

9. 重启至你的 Boot Camp。我想这一步老玩家应该都很熟悉了,只需在你的 Mac 开机时按住 ⌥ option 键即可,选择 Windows 并启动;

10.下载「MiniTool Partition Wizard」的分区管理工具,安装,运行。选择其他工具理论上也可以,但可能需要重启至 Windows PE 进行更改,实测该软件可以在 Windows 启动时可以自动完成调整分区大小的操作,减少工作量;

BootCamp 扩容

11. 我们选择刚才分出来的区域,右键点击「Delete」,然后点击左下方的「Apply」以应用此更改,后续点击「Yes」以确认。如果想要将该磁盘作为 D 盘使用,可直接使用系统自带的磁盘工具将其格式化为 NTFS 或 exFAT 即可,这里就不再赘述;

BootCamp 扩容

12.右键我们的 C 盘,选择「Move/Resize」,意为「移动或调整大小」;

BootCamp 扩容

13.在接下来的对话框中移动左侧的箭头至顶端即可,然后点击OK;

BootCamp 扩容

14.再次点击左下方的「Apply」以应用此更改,点击「Yes」以确认,之后我们会得到这样一个对话框(如下图所示),该提示的主要大意为目前的调整分区大小的操作不可用,因为 C 盘正在使用中。此时我们点击「Restart Now」即可让该工具自动完成剩下的工作。另外两项意为「重试」和「取消操作」;

BootCamp 扩容

15.之后,你的 Mac 会自动重启,重新启动至 Windows,并进入一个类似于 DOS 的界面,耐心等待分区完成即可;

BootCamp 扩容

16.在这之后,看看我们的 C 盘是不是就增大了呢?至此,为 Boot Camp 扩容的教程结束。注:若期间电脑自动重启到了 macOS 没有关系,手动再次重启至 Windows 即可。

BootCamp 扩容

接着,让我们来看看如何将多余的 Boot Camp 空间还给 macOS。

【#2:将Boot Camp 的部分空间还给 macOS】

1. 同样的,我们在 Boot Camp (Windows) 下打开「MiniTool Partition Wizard」,右键选择当前的 C 盘,选择「Move/Resize」,意为「移动或调整大小」;

BootCamp 扩容

2. 在接下来的界面中拉动左侧的箭头,告诉系统你需要将多少的空间划出来,这里我选择将 64GB 分出来,之后点击「OK」以确认,再点击左下方的「Apply」以应用,点击「Yes」再次确认;

BootCamp 扩容

3. 由于上文已经做介绍,这里同样不再赘述,我们点击「Restart」重启以应用,之后同样会经历一段类似于 DOS 界面的启动过程,再次重启,你就会发现该分区就被“剥离”出去了;

BootCamp 扩容

4. 此时你可以选择重启至 Windows 检查确认;

5. 一切确认妥当后,进入 macOS 的磁盘工具,选择对应的宗卷,点击「分区」按钮,若跳出对话框继续点击「分区」,得到如下窗口;

BootCamp 扩容

6. 选择刚刚“剥离”出来的宗卷,再点击减号“-”,之后点击「分区」,再次点击「分区」以确认,耐心等待操作完成即可;

BootCamp 扩容

7. 至此,将多余的 Boot Camp 空间还给 macOS 教程部分结束。

BootCamp 扩容

【总结】

虽然我们可以通过无需移除数据的方法达到增加或减少宗卷空间的目的,但此方法仍然带一定的风险,尤其是当操作失误,如抹掉或格式化掉了重要的宗卷或磁盘,会造成不可挽回的损失,因此在执行每一步前一定要注意即将要执行的操作是否正确。

不管成功与否,数据安全永远是第一位的。

那么,这次的教程就到这里,希望对大家有所帮助,如果有什么好的点子也可以告诉我,说不定下一篇文章可能就是你优秀的想法喔~

由于个人时间原因,笔者的有偿服务不再接受任何版本低于 macOS Mojave 机器的修复,实在抱歉。本文将由笔者维护更新状态转为放养,暂不会在私信/评论区回复,使用本教程前请三思。

随时加我微信: caryota 即可,我会在每周末统一回复修复。价格一律为 200/次,如需 24 小时内加急修复,价格为 350/次。虽然我可以修复任何 Mac 的情况,但是出于时间原因,我不再接受任何复杂情况修复,比如个人或第三方误操作导致磁盘情况复杂,iMac 混合硬盘修复等,若你的电脑属于复杂情况,我会微信告知。


注意:本教程理论上来说适用于 macOS Sierra 及以上系统,任何使用纯固态硬盘的 MacBook,MacBook Air,MacBook Pro, Mac Pro,iMac,iMac Pro; 但由于系统不同,不一定适用于使用「融合硬盘」的 iMac,融合硬盘的修复指令在文末。

若你需要我的帮助,或当前机型不在本文适用范围内,请参考文末有偿服务。iMac 将 Windows 10 安装在固态硬盘请参考关联阅读:解救融合硬盘版 iMac:将 Windows 10 放入内置固态硬盘中

过去,通过 Mac 系统自带的工具「启动转换助理」安装或者移除 Windows 10 十分方便;然而在 macOS 版本更新至 High Sierra 后,你可能发现「安装或移除 Windows 7或更高版本」的按钮变成了灰色,没法移除 Windows 分区;或者,移除分区后那一部分空间就「不见了」。

BootCamp 扩容
无法移除分区

本文教你用命令行来解决这一卸载难题。

此操作需要一定动手能力,一共三步,分别是下文中的「2,3,4」。步骤完成后现有 Mac 系统不会有任何变化,Windows 10 系统会被彻底移除,Mac 系统将会重新拥有全部硬盘空间。 

【此步已废弃,请从第二步开始即可】1. 打开「磁盘工具」- 从左侧选中「BOOTCAMP」- 从上方工具图标中选择「抹掉」工具 - 弹出的对话框「格式」那一栏选择「APFS」- 点击「抹掉」按钮。若你已经尝试了这一步,请看文末「更新 2」,并输入其中的指令。

BootCamp 扩容
磁盘工具

2. 打开「终端」输入代码 diskutil list,并按「Return」来显示所有磁盘信息,记下 BOOTCAMP 盘所对应的「IDENTIFIER」,我这里所对应的盘符是 disk0s3

BootCamp 扩容
终端

3. 继续在「终端」输入代码 sudo diskutil eraseVolume free none disk0s3 并按「Return」来彻底移除刚刚记录下的这个磁盘,这里的 disk0s3 需要根据你的实际 BOOT CAMP 磁盘盘符替换;

4. 继续在「终端」输入代码 sudo diskutil apfs resizeContainer disk0s2 0 并按「Return」来将所有可用空间恢复到 Mac 盘,这里的 disk0s2 需要根据你的实际 Mac 磁盘盘符替换。

究其原因,是因为在 macOS High Sierra 中,系统的底层文件系统被彻底替换为 APFS, 但是系统自带的「磁盘工具」并未针对APFS 进行更新,很多常用操作(比如磁盘扩容)无法用它实现,导致现阶段移除 Windows 10 系统分区后重新分配这部分磁盘空间异常繁琐。

如果你安装了 Mac、Windows 10 双系统启动,但出于各种原因,需要将 Windows 10 移除、 使 Mac 恢复到刚买回来初始单个系统盘状态的,却发现「启动转换助理」不奏效,可是试试本文提供的命令行方法。

本文只专注于从 Mac 上移除 Windows 10 且料理后续磁盘问题,不会讲解如何安装双系统,如有需求欢迎在评论中提及,将会单独开文讲解流程。

更新:

  • 若你使用的是 macOS High Sierra 以及更低版本的系统,则仍需按文中的方法移除 Windows 分区。
  • 若你已经升级到 macOS Mojave,则可以直接前往「启动转换助理」,点击「移除 Windows 并恢复分区」即可,这一选项已经在 Mojave 中回归了。
BootCamp 扩容
移除 Windows 并恢复分区已经在 Mojave 中回归

更新 2:

文章的假设条件是,你没有使用系统自带的「磁盘工具」自行格式化 BOOTCAMP 磁盘。若你已经不小心格式化过了,则很可能在尝试文章第三步时报错。这是因为第三步的命令不适用于 APFS 磁盘。

解决方法是在运行第三步之前,输入下面这一条命令来将 APFS 格式的 BOOTCAMP 磁盘转化为 HFS 格式,命令为「sudo diskutil apfs deleteContainer disk0s3」,这里的 disk0s3 依旧是你在步骤二中找到的 BOOTCAMP 对应盘符。运行完这条指令后,继续跟着文中 3, 4 步骤走即可。

更新 3:

一点点题外话,有些人不确定第二部中的盘符如何找到,下面我机型简单说下。

若你的电脑为 Mac 的笔记本,如 Macbook, Macbook Air, Macbook Pro。这类电脑通常只有一块物理磁盘,你的 BOOTCAMP 盘符一定是类似于 disk0s3 这类格式。这里的数字 0,代表着电脑中的第一个(也是唯一的一个)物理磁盘,数字 3,代表着 BOOTCAMP 处在这块磁盘中的第三个分区。

若你的电脑是 iMac 的 Fusion Drive 版本,那么你的电脑中则会有两块物理磁盘,BOOTCAMP 一般会默认使用第二块硬盘,此时你的 BOOTCAMP 盘符就会变成 disk1s4 这类格式,这里的数字 1 代表着电脑中的第二个物理磁盘,数字 4,代表着 BOOTCAMP 处在这块磁盘中的第四个分区。

更新 4:

若你在运行完第三步之后,运行第四步时报错。请重新运行第二步查看磁盘列表,并检查其中是否出现了「Apple_KernelCoreDump」,若出现了这一部分,请重新运行第三步,消除这一部分分区,再进行第四步即可。

更新 5:

若你在运行完第三步之后,运行第四步时报错。请重新运行第二步查看磁盘列表,并检查其中是否出现了「Microsoft Reserved」,若出现了这一部分,请重新运行第三步,移除这一部分分区,再进行第四步即可。

更新 6:

最近有不少人用本教程修 iMac, iMac 融合硬盘的情况相较于本文的例子复杂很多。因此我在文章开头处更新了本文的适用范围,若你使用的是 iMac,请务必弄清楚每一步命令的实际用途,再尝试修复。贸然尝试,可能会把相对复杂的问题变得特别复杂。

更新 7:

iMac 融合硬盘修复时可能会用到的命令如下。因为 iMac 的具体情况比较复杂,因此目前只是将代码罗列在这里。若你了解硬盘命令的话可以尝试修复;若你刚刚接触硬盘命令的话,暂时不建议尝试。


进⼊入恢复磁盘

进入恢复系统:Command + R

显示磁盘信息

显示硬盘列:diskutil list 

显示 cs 硬盘列:diskutil cs list

查看分区上限:sudo diskutil resizeVolume /dev/disk1s3 limits

重置空间:sudo diskutil resizeVolume /dev/disk1s2 100GB

强制断开驱动器

sudo diskutil unmountDisk force /dev/disk1

删除 EFI NO NAME

彻底移除逻辑磁盘: diskutil unmount /Volumes/Macintosh\ HD

显⽰示分区结构: gpt -r show /dev/disk1

删除 EFI NO NAME:gpt remove -i 4 /dev/disk1

BOOT 丢失重新还原

显⽰示分区结构:gpt -r show /dev/disk0

断开磁盘链接:diskutil umountdisk disk0

新增存储区块:gpt add -I 3 -b 1362424032 -s 1269536 -t 426F6F74-0000-11AA- AA11-00306543ECAC(128MiB (262144 sectors) free space following a partition;gpt add -b 409640 -s 195313624 -t hfs disk2)GUID UUID

新增 Boot 分区:newfs_hfs -v "Volume Name" -J /dev/disk2s8

新增 EFI 区块:gpt add -b 40 -i 1 -s 409600 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B disk0

新增 HFS 区块:gpt add -I 2 -b 409640 -s 5450355 -t 48465300-0000-11AA-AA11-00306543ECAC disk0

解除磁盘锁:diskutil cs unlockVolume UUID

删除 APFS:diskutil  apfs deleteContainer disk0s4

coreStorage 扩容

物理理扩容: diskutil cs resizeDisk 11111111-2222-3333-4444-555555555555 980g

逻辑扩容: diskutil cs resizeVolume 11111111-2222-3333-4444-555555555555 980g


更新 8:

若你对 BOOT CAMP 安装及显卡驱动优化有需求,可以参考我的另外两篇文章:

Mac 如何安装 Windows 10?

如何大幅提升 Boot Camp Windows 10 图形性能?

更新 9:

在极少的情况下,对于老旧系统,若你的 Windows 卸载过程中没有使用 BOOT CAMP 自带的「移除 Windows 分区」的方式,可能会造成删除完 Windows 之后 Mac 引导丢失的问题。具体表现为启动系统按下 Option 之后找不到 Mac 的选项。这个问题不在本文的讨论范畴内,但如果你不幸遇到了,可以尝试以下方法:

无论你的电脑处在什么状态,长按电源键 10 秒对电脑进行强制关机。接着点按开机按钮并松开,同时按下「Command + Option + R」进入网络修复模式,这时候你会看到如下图标,稍等片刻。

BootCamp 扩容
网络修复模式

进入该模式后,在罗列出的选项中选择「磁盘工具」,选择你的 Mac 磁盘,并点击上方的「急救」按钮,稍等片刻。此操作 Mac 会自动寻找丢失的启动项并尝试修复,修复完成后重启电脑即可。

BootCamp 扩容
磁盘急救

更新 10:

我写了一篇新文章讲解终端的用法,若你想要入门终端,可以查看这篇文章:

Terminal 终端:入门指南及进阶技巧

更新 11:

自从这帖子发布后,我大概在微信上帮忙修复了 50 台左右的电脑,大家都是很友善的人,也交了不少新朋友。但是最近一次遇到了一个奇葩令我很生气,一上来先讲价,等我帮他移除 BOOT CAMP 并合并分区全弄好了以后他又抛过来各种其他问题,我和他说明了其他问题需要额外收费之后他说我套路他。

现在特此声明,我不是专职修电脑的,有偿服务也只是在我的闲暇时间帮助新手或移除 BOOT CAMP 过程中遇到问题的人,在我尊重你并解决问题的同时,也请尊重我的时间。这项服务只包含移除 BOOT CAMP 分区并将剩余空间还原到 Mac 磁盘。

若你添加我的微信,请务必在下方看清你的电脑所属的类型及价格,不会讲价。若你本身有其他需求,请务必在我开始帮你处理前说清楚,我会根据所需用时向你报价,和则开始。

更新 12:

若移除完 BOOT CAMP 分区后,你可能发现 WIndows 10 还会默认启动,这其实是因为 Windows 10 在 EFI 中的启动项还在,下面这几句命令可以帮你移除掉它。注意:下面的盘符需要被替换为 EFI 所在盘符。

sudo mkdir /Volumes/EFI

sudo mount -t msdos /dev/disk0s1 /Volumes/EFI

cd /Volumes/EFI/EFI

rm -rf Microsoft

更新 13:

若你想深入理解 BOOT CAMP 的原理,这里有一篇很好的文章:

https://bbs.feng.com/read-htm-tid-6890655.html

有偿服务

这篇教程本身没问题,但由于每个人电脑硬盘个体差异较大,你可能会在按步骤走之后遇到问题。自这篇文章发布之后,有很多人加我微信寻求帮助,对我的日常安排造成了一定困扰,因此现在决定把它改成有偿服务。如果你不放心自己跟着教程走,或者运行时遇到了疑问,可以选择我对于这篇文章的有偿服务。

  • 若你使用的是纯固态硬盘的 Mac 并采用 Sierra 或更新的系统,收费是 50 元人民币,预计用时 10 分钟,指导你移除 BOOT CAMP 分区并将剩余空间还原到 Mac 磁盘。
  • 若你使用的是纯机械硬盘的 Mac 或系统为 Sierra 之前的版本,收费是 70 元人民币,预计用时 30 分钟,指导你移除 BOOT CAMP 分区并将剩余空间还原到 Mac 磁盘。
  • 若你使用的是混合硬盘版的 iMac,需要解决移除 BOOT CAMP 分区的问题,收费是 100 - 200 元人民币,预计用时 1 小时,因为问题这个根据实际情况可能会非常麻烦,我会根据你的实际情况在开始之前给出报价。

【2019 年 1 月 5 日更新】

一年前文章发布时的收费标准已经移除。

由于个人时间原因,笔者的有偿服务不再接受任何版本低于 macOS Mojave 机器的修复,实在抱歉。本文将由笔者维护更新状态转为放养,暂不会在私信/评论区回复,使用本教程前请三思。

若你需要有偿服务,随时加我微信: caryota 即可,我会在每周末统一回复并完成修复。价格一律为 200/次,如需 24 小时内加急修复,价格为 350/次。虽然我可以修复任何 Mac 的情况,但是出于时间原因,我不再接受任何复杂情况修复,比如个人或第三方误操作导致磁盘情况复杂,iMac 混合硬盘修复等,若你的电脑属于复杂情况,我会微信告知。

如果你需要重新安装 Windows 的话,可以参考我的另一篇文章「Mac 如何安装 Windows 10」。若你需要激活码的话也可以加我的微信,我的一个朋友在卖。

我的微信:caryota 

有偿服务额外说明请参考本文中的更新 11

微信打赏

若你觉得本文对你有帮助,也欢迎点击这里对我微信打赏「微信打赏给作者」。


BootCamp 扩容

不平庸,喜欢高质量且优秀的设计,致力于打造提升生活品质的好物。个人主页: Legolas.me