克隆整个macOS系统到新磁盘

笔者在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列出磁盘列表:

bash 复制代码
$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *85.9 GB    disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk3         85.7 GB    disk0s2

/dev/disk1 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *171.8 GB   disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:                 Apple_APFS Container disk2         171.5 GB   disk1s2

/dev/disk2 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +171.5 GB   disk2
                                 Physical Store disk1s2
   1:                APFS Volume Data                    42.9 GB    disk2s1
   2:                APFS Volume Preboot                 83.8 MB    disk2s2
   3:                APFS Volume Recovery                529.9 MB   disk2s3
   4:                APFS Volume VM                      1.1 MB     disk2s4
   5:                APFS Volume Root                    11.2 GB    disk2s5

/dev/disk3 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +85.7 GB    disk3
                                 Physical Store disk0s2
   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 容器的特殊结构。

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

bash 复制代码
sudo asr restore --source /dev/disk2 --target /dev/disk3 --erase

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

bash 复制代码
$ sudo asr restore --source /dev/disk2 --target /dev/disk3 --erase
Password:
	Validating target...done
	Validating source...done
	Erase contents of /dev/disk3 ()? [ny]: y
	Replicating ....10....20....30....40....50....60....70....80....90....100
	Replicating ....10....20....30....40....50....60....70....80....90....100
	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",重启即可。

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

相关推荐
一个人旅程~2 小时前
macOS装进移动硬盘成为双系统的操作方法
linux·经验分享·macos·电脑
mCell2 小时前
MacOS 下实现 AI 操控电脑(Computer Use)的思考
macos·agent·swift
一个人旅程~3 小时前
在M系列的macbook上如何使用VMware安装ARM版的Win11以及注意哪些问题?
linux·windows·经验分享·macos·电脑
小宋加油啊3 小时前
Mac vscode安装PCL
ide·vscode·macos
秋雨梧桐叶落莳5 小时前
【iOS】 AutoLayout初步学习
学习·macos·ios·objective-c·cocoa·xcode
UnicornDev5 小时前
从零开始学iOS开发(第六篇):协议与扩展 —— 写出灵活可复用的Swift代码
macos·objective-c·cocoa
还在忙碌的吴小二5 小时前
在 Mac 上安装并通过端口调用 Chrome DevTools MCP Server(谷歌官方 MCP 服务器)
服务器·前端·chrome·macos·chrome devtools
sysinside1 天前
macOS Tahoe 26.4.1 (25E253) 正式版 ISO、IPSW、PKG 下载
macos·tahoe
遥不可及zzz1 天前
[特殊字符] Android AAB 一键安装工具配置指南
android·macos
antzou1 天前
语音识别 (ASR)
人工智能·语音识别·onnx·asr·paraformer