MacOSX 上的 Rootless机制 系统集成保护(System Integrity Protection)

什么是系统集成保护(System Integrity Protection)?

使用了系统集成保护,苹果决定第三方应用有一些永远不会被允许的事情。从某些层面来讲,这种保护和iOS更像了。第三方应用相比起来更受限制。这就是rootless一词的由来,系统在某种程度上限制了管理员账号的权限。

Apple 在OS X El Capitan 10.11 系统上已经使用了 Rootlees , 可以理解为一个更高等级的系统的内核保护措施,系统默认将会锁定 /system、/sbin、/usr 这三个目录(不包括 /usr/local)。rootless特性使得某些操作只有苹果的应用可以被许可(通过代码签名来判断)。所以第三方应用即使是运行在root权限中,Rootless 机制开启后,对这几个目录的任何操作都会提示没有操作权限。

:cd /usr
:sudo mkdir zhaolu
mkdir: zhaolu: Operation not permitted
:cd local
:sudo mkdir zhaolu
:sudo rmdir zhaolu

这个保护也是可以关闭的。

重启mac,然后在黑屏准备开机的时候,同时按住command + R,之后会进入恢复模式。

在上面的工具栏中,选择实用工具>>终端。如下所示:
MacOSX 上的 Rootless机制 系统集成保护(System Integrity Protection)

然后输入命令:csrutil disable 。

重启电脑后,Rootless机制就会关闭了。

要是想打开这个机制就再重启,然后在终端输入命令:csrutil enable。

在正常桌面的终端中使用 csrutil status 命令可以查看 Rootless 的状态:

:csrutil status
System Integrity Protection status: enabled.
上一篇:行业案例 | 易安联零信任SDP解决方案,让企业经营更高效


下一篇:MacOS中创建Sublime Text3快捷方式返回Operation not permitted的原因及解决