问题描述
本机安装了python3 想升级的时候遇到无法删除 /usr/bin/python3 文件。
关于本机.png
- 原因: Big Sur引入了另一个缓解系统分区被篡改的机制signed system volume (SSV)。有关它的作用之类请自行Google.大概看帖子说是 进入苹果系统必须从镜像进入容器,这块有变动。升级后系统默认变成只读的文件夹,导致系统文件都不可更改。( 不太懂苹果的系统,不敢胡扯,懂苹果系统的勿喷)
解决步骤
1检查 一下自己的Mac上的FileVault是不是关闭状态,如果是开启状态后边步骤会有问题;
image.png如果没有关闭 则在进行
csrutil authenticated-root disable
会报错 Failed to disable the authenticated root requirement,FileVault must be disabled for "Macintosh HD"
进行 sip关闭
- 重启机器 按住 command + R 键 看到白苹果 和加载条后放开
- 首次进入会让输入开机密码,千万不要点错恢复mac 输入密码后 右上方 找到左上角“实用工具”选择“终端”。
- 终端 输入 两条命令:
csrutil disable
csrutil authenticated-root disable
然后重启电脑
2 执行可写目录挂载创建镜像
- 进入到 根目录 / 。 命令
cd /
- 查看硬盘挂载 。 命令
mount
硬盘挂载.png
看到我这里的 read-only 的硬盘挂载为/dev/disk1s5s1
这里我们给他起个代号 叫diskA = /dev/disk1s5s1
方便我们 后续描述,这里需要吧 s1 去掉,即diskB = /dev/disk1s5
。后续我们会用到 diskB 不会用到 diskA. - 挂载系统到有权限的目录。这里我挂载到 个人用户目录下。
1.命令 -mkidr -p /Users/你的用户名/mnt
- 开始挂载 。命令 -
sudo mount -o nobrowse -t apfs /dev/disk1s1 /Users/xxx/mnt/
3.创建镜像。命令 -sudo bless --folder /Users/xxx/mnt/System/Library/CoreServices --bootefi --create-snapshot
.
- 创建完成后 重启电脑 。
这样也只能在挂载的分区里操作系统文件、重启后一样不能修改系统文件、不知道为什么
网友评论