You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何重建2019款带Intel&T2芯片MacBook Pro的macOS EFI分区?

如何重建2019款带Intel&T2芯片MacBook Pro的macOS EFI分区?

兄弟,我太懂你误删EFI分区的崩溃感了——尤其是带T2芯片的Intel Mac,分区操作本来就比普通机器敏感,还牵扯着双启动Fedora的需求。别慌,咱们一步步把macOS的EFI分区给重建回来:

先做最重要的事:备份数据!

分区操作有风险,先把macOS里的重要数据备份到外部硬盘,避免万一操作失误丢了东西。

步骤1:进入macOS恢复模式

重启你的Mac,按住 Command + R 不放,直到看到苹果标志或进度条,进入恢复模式。然后在顶部菜单栏的「实用工具」里打开「终端」。

步骤2:确认当前磁盘分区情况

先敲个命令确认你的磁盘状态,和你提供的信息对应上:

diskutil list

你会看到disk0是1TB的物理盘,disk0s1是400GB左右的APFS容器(装macOS的),disk0s2是Linux的EFI分区(NO NAME)。

步骤3:缩小APFS容器,腾出EFI空间

咱们需要在APFS容器前面腾出约314MB的空间(和你原来的EFI分区大小接近)。敲下面的命令:

diskutil apfs resizeContainer disk0s1 399885400000B

解释下:原来的disk0s1是400.2GB,减去314.6MB后得到这个数值,执行后会在disk0s1前面空出对应空间。如果报错,先敲diskutil verifyDisk disk0diskutil verifyVolume disk1检查磁盘错误,修复后再试。

步骤4:用GPT创建新的EFI分区

因为T2 Mac的分区权限限制,咱们用gpt命令来创建分区:

  1. 先解锁磁盘(输入你的Mac密码):
diskutil unmountDisk disk0
  1. 创建EFI分区(注意命令里的参数别打错):
gpt add -i 1 -b 40 -s 619152 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B disk0
  • -i 1:把这个分区设为第1个分区(符合GUID表的标准EFI位置)
  • -b 40:从第40扇区开始(前面40扇区是GUID表头)
  • -s 619152:对应约317MB空间,和你原来的EFI大小差不多
  • 后面的长字符串是标准EFI分区的GUID类型标识符

步骤5:格式化新的EFI分区

EFI分区必须是FAT32格式,敲命令格式化:

diskutil eraseVolume fat32 EFI disk0s1

执行后,新的EFI分区就命名为「EFI」了。

步骤6:修复macOS的启动引导

现在需要把macOS的启动文件放到新EFI分区里:

  1. 先挂载你的macOS系统卷(一般是disk1s1,如果卷名不是默认的「Macintosh HD」,记得替换):
diskutil mount disk1s1
  1. bless命令设置引导:
bless --folder /Volumes/Macintosh\ HD/System/Library/CoreServices --bootefi --create-snapshot

如果这个命令报错,可能是系统完整性保护(SIP)限制,你可以先在恢复模式的终端里敲csrutil disable关闭SIP,重启后再重复步骤1到6,完成后再敲csrutil enable打开SIP。

步骤7:验证并重启

再敲diskutil list确认新的EFI分区(disk0s1)已经存在,然后重启Mac——应该能正常进入macOS了!

等你恢复macOS后,就可以正常运行T2Linux的firmware.sh脚本了,记得先在恢复模式的「启动安全实用工具」里把启动安全级别调低,允许从外部介质启动哦。

备注:内容来源于stack exchange,提问作者tom_kp

火山引擎 最新活动