解决 macOS System Integrity Protection (SIP) 限制问题

4,771 阅读2分钟

快速解决方案

如果你遇到以下错误:

Could not set environment: 150: Operation not permitted while System Integrity Protection is engaged

按照以下步骤操作:

  1. 进入恢复模式
  • 关闭 Mac
  • 重要:一定要按住电源键不放,切记!切记!切记!,直到看到启动选项
  • 进入"恢复模式"(Recovery Mode)
  • 然后选择 ⚙️设置 图标进入
  • 选择一个知道密码的账号,输入密码登录
  1. 关闭 SIP
  • 不要管屏幕中间的选项,去顶部导航栏找实用工具
  • 打开终端(实用工具 > 终端)
  • 输入命令:csrutil disable
  • 重启 Mac
  1. 完成操作后建议重新启用 SIP
  • 重复步骤1进入恢复模式

  • 输入命令:csrutil enable

  • 重启 Mac

深入理解 SIP

什么是 SIP?

System Integrity Protection (SIP),也称为"系统完整性保护",是 Apple 在 OS X El Capitan (10.11) 引入的一项安全技术。它的主要目的是限制 root 用户的权限,防止恶意软件修改系统关键文件。

SIP 保护哪些内容?

SIP 主要保护以下系统区域

  • /System

  • /usr

  • /bin

  • /sbin

  • 预装的 Apple 应用程序

  • 系统启动过程中加载的内核扩展

什么时候会遇到 SIP 限制?

通常在以下情况会遇到 SIP 限制:

  1. 尝试修改系统文件

  2. 安装某些系统级工具

  3. 修改系统环境变量

  4. 安装未签名的内核扩展

SIP 的工作机制

SIP 通过以下机制保护系统:

  • 文件系统保护

  • 运行时保护

  • 内核扩展保护

  • 调试器保护

检查 SIP 状态

可以通过终端命令检查 SIP 状态:

csrutil status

注意事项

  1. 不建议长期关闭 SIP,完成必要操作后应立即重新启用

  2. 关闭 SIP 可能会降低系统安全性

  3. 某些 macOS 更新可能会重新启用 SIP

参考链接