Mac上扩大系统空间需用终端命令diskutil apfs resizeContainer操作,因APFS容器不支持磁盘工具图形化缩放;须确保容器右侧有连续空闲空间,删邻近分区(如BOOTCAMP)后执行resizeContainer disk0s2 0即可无损扩容。

Mac上想扩大系统可用空间却卡在“磁盘工具里拖不动分区”,根本原因是APFS容器不支持图形界面直接缩放,必须用diskutil apfs resizeContainer命令在终端中操作,且全程不抹除数据——只要右侧有连续空闲空间,就能安全扩容或精准缩容。
确认容器结构与空闲空间位置
打开终端,运行:diskutil list。重点看三列:左侧设备标识(如disk0s2)、类型(必须是Apple_APFS)、右侧是否有“FREE SPACE”或紧邻一个可删分区(如BOOTCAMP或Recovery)。
若目标容器(例如disk0s2)后面直接跟着未分配空间,说明物理条件满足;若它已占满整块磁盘(比如disk0总容量512GB,而disk0s2显示500GB且后无空隙),则无法扩容——【必须先删掉它右边的分区】。
腾出右侧连续空闲空间
方法一:在磁盘工具中删除非启动用途的分区
打开“磁盘工具”→顶部菜单“显示”→勾选“显示所有设备”→左侧找到物理磁盘(如APPLE SSD AP1024M)→点“分区”按钮→在饼图中选中要删的分区(如BOOTCAMP)→点左下角减号(−)→确认抹除。这一步会立即释放出一段紧邻容器右侧的空白区域。
方法二:用终端命令删分区(适用于图形界面报“锁定”时)
先运行diskutil list确认待删分区标识(如disk0s3),再执行:sudo diskutil eraseVolume free none disk0s3。注意:此操作不可逆,【务必提前备份该分区内所有数据】。
删完后再次运行diskutil list,确认目标容器右侧已出现“FREE SPACE”行,且与容器ID连续排列(如disk0s2 → FREE SPACE)。
执行容器扩容或缩容
第一步:确认容器标识符
从diskutil list输出中找到你的系统容器,通常为disk0s2或disk1s2,记下完整名称(不要写错大小写和数字)。
第二步:执行扩容(推荐优先使用)
输入命令:sudo diskutil apfs resizeContainer disk0s2 0(把disk0s2替换成你的真实标识符)。其中0表示“尽可能扩展到当前可用空间上限”,系统会自动对齐边界、合并空隙,无需手动计算字节数。
第三步:执行缩容(仅当明确需要指定大小时)
例如想缩到400GB,运行:sudo diskutil apfs resizeContainer disk0s2 400g。但必须确保:容器内所有宗卷实际占用总和 + 几 GB 余量
第四步:等待完成并验证结果
命令运行期间光标静止属正常现象,通常耗时10–60秒。成功后终端会显示“Finished resizing”及新尺寸。立即运行diskutil apfs list核对容器Size是否更新。
清理快照释放被锁住的空间
即使容器已扩容,Finder中仍可能显示可用空间偏小——这是本地Time Machine快照长期累积所致。运行:tmutil listlocalsnapshots /查看快照列表。
逐个清理非系统更新类快照:sudo tmutil deletelocalsnapshots com.apple.TimeMachine.2026-09-25-142321(将日期替换为你列表中的真实快照名)。
或一键清理全部旧快照(保留最近一小时):sudo tmutil thinlocalsnapshots / 9999999999 1。执行后系统卷会立即释放出数GB至数十GB真实可用空间。

















