随着苹果越来越严格的系统文件权限限制,在 Sequoia 下想要修改 /System 下的文件变得越来越难,现在几乎已经不可能在系统中直接修改。本文将介绍如何在 Recovery 恢复模式下修改系统文件价。
注意:修改系统文件可能会引起系统严重错误,导致系统无法开机、数据顺坏或被木马病毒破坏,在操作之前请清楚的知道你在做什么,否则请停止。
另外,有些地方提到可以在 /etc/synctheri.conf 添加映射来修改系统文件,其实这个是不准确的,synctheri.conf 只能映射目录到 / 根文件夹,是不能修改 /System 下的文件的。
教程开始:
- 重启系统,启动系统到 Recovery 模式
- 关闭SIP
在Recovery 模式下打开终端,输入以下命令csrutil disable
OpenCore 用户NVRM 里添新增 7C436110-AB2A-4BBB-A880-FE41995C9F82,然后添加键值 csr-active-config, 类型 Data, 值 67000000 - 重启系统,再次进入Recovery Mode
- 验证 SIP 是否关闭,打开终端输入命令
csrutil status
确认所有SIP保护项均已关闭 - 挂载要修改的系统根目录为可读写,终端输入命令:
mount -uw /Volumes/Macintosh\ HD # 确认你的系统卷名称
cd /Volumes/Macintosh\ HD
- 编辑、修改要改动的系统文件,这里以替换一个Framework文件为例,输入复制命令
# 备份原始文件(可选)
cp -R System/Library/PrivateFrameworks/TargetFramework ./TargetFramework.backup
# 替换文件
cp -R /path/to/your/Framework System/Library/PrivateFrameworks/ - 重建系统快照(关键,没有这一步重启后修改就没了,但是如果你的文件有问题,你的系统可能就会崩溃)
bless --folder /Volumes/Macintosh\ HD/System/Library/CoreServices --bootefi --create-snapshot
- 重启系统,进入系统验证文件是否添加成功。
- 验证文件添加成功后,一定一定要记得回到 Recovery 模式关闭SIP,以确保系统安全。
csrutil enable
- 重启,进入正常系统,修改结束。