欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-03-22 16:03:45
...
什么是系统集成保护(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.
相关标签: mac