Macos开启TimeMachine,更新系统遇空间不足,卡在恢复界面且无法使用tmutil自救方案
刚刚,我搞坏了我用来工作的mac笔记本,因为我在磁盘空间剩余不足时进行更新
尽管我早已听说big sur版本有这个缺陷,但我没想到Ventura也会这样。
症状:
macos系统卡在了启动恢复模式,提示你的系统需要重新安装,但恢复模式并没有提供清理磁盘空间的方式,如果放弃且没有备份,就会面临数据的丢失。
于是我使用terminal命令行工具,进行df、ls、cd xxxx、rm -rf操作,但我发现无论如何,空间都不会减少,原因:开启了TIme Machine,APFS的本地快照逻辑导致空间不会释放
无论如何删除和重启,都会回到第一步,这是一个死循环。
开始尝试解决,通过搜索引擎检索,我们会看到许多使用tmutil指令删除快照的教程
但这些教程都是无效的,因为恢复模式的terminal是阉割版,并没有tmutil指令
你会看到这样的回应,这往往会让人陷入绝望当中
-bash-3.2# tmutil
tmutil : command not found
解决方案: diskutil指令
在macos恢复模式中找到终端terminal并打开,
输入diskutil apfs list ,显示apfs格式的硬盘列表,
找到你储存TimeMachine备份盘符名称(通常是数据盘),
APFS Volume Disk (Role): disk3s5 (Data)
disk3s5 就是你的盘符名称,
输入diskutil apfs listSnapshots disk3s5 (替换为你的盘符名称)
会显示TimeMachine的备份以及它的uuid
-bash-3.2# diskutil apfs listSnapshots Dizzy
Snapshots for disk1s1 (3 found)
|
+-- F5D46466-3269-4480-BA1A-8BE23DF1800
| Name: com.apple.TimeMachine.2019-10-07-205243
| XID: 2201791
| Purgeable: Yes
|
[...]
输入diskutil apfs deleteSnapshot 盘符名称 -uuid 需要删除的time_machine备份uuid
删除后,再重复第二步的操作,此时因为time_machine备份被删除,删除的文件不会再存在硬盘中,所以cd到指定文件夹rm -rf操作就可以释放空间,
删除足够多的备份,同时删除备份中对应的本地文件以腾出磁盘空间
这个时候再次重启,选择重新安装macos,就可以保留原来的数据的同时
成功的升级系统了。
引用&搬运,https://tredje.se/dev/trouble/category/macos

