笔者在VMWare虚拟机中安装了一个MacOS 10.15系统,VMware虚拟磁盘为160G,macOS中显示171.45G。随着使用时间的增长,虚拟磁盘占用的Windows的磁盘空间越来越大,导致使用挂起功能时,Windows的磁盘放不下了,但MacOS中的实际使用空间只有三分之一左右。于是就想重新建一个小点的虚拟磁盘,比如80G,然后把整个系统克隆过去。

在这里插入图片描述

这是磁盘工具中看到的磁盘信息:

在这里插入图片描述

一、新增磁盘

关闭虚拟机后,添加一块80G的新虚拟磁盘,再启动系统。

在这里插入图片描述

系统发现了新的磁盘,但是由于没有初始化,所以弹出提示:

在这里插入图片描述

初始化它,就可以在磁盘工具中看到它了:

在这里插入图片描述

分区: 在这里插入图片描述 在这里插入图片描述 格式选择与系统一致的APFS格式。

二、恢复

1. 使用磁盘工具恢复

尝试使用磁盘工具中的“恢复”功能,看能不能实现。

选中新磁盘,再点工具栏中的“恢复”按钮,弹出恢复对话框,“恢复来源”中系统会自动填写系统所在磁盘,最后点对话框中的“恢复”按钮。

在这里插入图片描述

很遗憾恢复失败:

在这里插入图片描述

看来MacOS 10.15中磁盘工具的恢复只能恢复HFS或者UFS格式的文件系统,而MacOS使用的APFS格式。

只能通过命令行的方式来操作了。

2. 使用命令行恢复

首先通过diskutil list列出磁盘列表:

 1$ diskutil list
 2/dev/disk0 (internal, physical):
 3   #:                       TYPE NAME                    SIZE       IDENTIFIER
 4   0:      GUID_partition_scheme                        *85.9 GB    disk0
 5   1:                        EFI EFI                     209.7 MB   disk0s1
 6   2:                 Apple_APFS Container disk3         85.7 GB    disk0s2
 7
 8/dev/disk1 (internal, physical):
 9   #:                       TYPE NAME                    SIZE       IDENTIFIER
10   0:      GUID_partition_scheme                        *171.8 GB   disk1
11   1:                        EFI EFI                     209.7 MB   disk1s1
12   2:                 Apple_APFS Container disk2         171.5 GB   disk1s2
13
14/dev/disk2 (synthesized):
15   #:                       TYPE NAME                    SIZE       IDENTIFIER
16   0:      APFS Container Scheme -                      +171.5 GB   disk2
17                                 Physical Store disk1s2
18   1:                APFS Volume Data                    42.9 GB    disk2s1
19   2:                APFS Volume Preboot                 83.8 MB    disk2s2
20   3:                APFS Volume Recovery                529.9 MB   disk2s3
21   4:                APFS Volume VM                      1.1 MB     disk2s4
22   5:                APFS Volume Root                    11.2 GB    disk2s5
23
24/dev/disk3 (synthesized):
25   #:                       TYPE NAME                    SIZE       IDENTIFIER
26   0:      APFS Container Scheme -                      +85.7 GB    disk3
27                                 Physical Store disk0s2
28   1:                APFS Volume 未命名                  712.7 KB   disk3s1

可以看到/dev/disk0/dev/disk1两个物理磁盘,/dev/disk0是新磁盘,/dev/disk1是原来的系统磁盘,/dev/disk2/dev/disk1的容器磁盘,/dev/disk3/dev/disk0的容器磁盘。

现在需要把/dev/disk2的内容克隆到/dev/disk3中,注意只能是克隆容器磁盘,不能克隆物理磁盘,因为两个物理磁盘的容量不相等,而且使用的命令专门设计用于在容器级别工作,它会智能地处理 APFS 容器的特殊结构。

使用下面的命令就可以克隆磁盘内容了:

1sudo asr restore --source /dev/disk2 --target /dev/disk3 --erase

输入命令后要求输入密码,再确认是否要清除目标磁盘的内容,等待完成操作。

1$ sudo asr restore --source /dev/disk2 --target /dev/disk3 --erase
2Password:
3	Validating target...done
4	Validating source...done
5	Erase contents of /dev/disk3 ()? [ny]: y
6	Replicating ....10....20....30....40....50....60....70....80....90....100
7	Replicating ....10....20....30....40....50....60....70....80....90....100
8	Restored target device is /dev/disk3s1.

此时看虚拟磁盘并没立即写过去一样,我刷新了N次,都是这样:

在这里插入图片描述 关闭MacOS系统,才会真正把数据写过去:

在这里插入图片描述

三、移出老磁盘,重启系统

在这里插入图片描述 此时可能会出现这样的提示,可以先不管它,可以正常启动。 在这里插入图片描述 可以先将所有硬盘移除,再重新添加,也可以使用后面第四步修改启动顺序。强烈建议先将所有硬盘移除,再重新添加,让启动磁盘始终在SATA 0:0的位置。 在这里插入图片描述

启动系统后,磁盘工具查看情况: 在这里插入图片描述

再看存储空间的使用情况,与之前的比较文稿与应用程序完全一致,系统与其他可能因为临时数据有点小差异:

在这里插入图片描述 使用完全正常。

四、修改启动顺序

在VMWare的“虚拟机”菜单执行“电源”/“打开电源时进入固件”: 在这里插入图片描述

可以看到启动设备的顺序,这里执行“Enter setup”进入设置,选择“Configure boot options”:

在这里插入图片描述

再选择里面的“Change boot order”:

在这里插入图片描述 把SATA硬盘驱动(2.0)放在最前面: 在这里插入图片描述 然后“Commit changes and exit”,重启即可。

如果本文对你有帮助,欢迎点赞收藏!