Mac rootless机制 `Operation not permitted`

Mac-rootless机制

Posted by cl9000 on April 03, 2017

Mac rootless机制 Operation not permitted

Mac使用 sudo 或切换成 root 权限,还是出现
Operation not permitted

这是由于 Max OS X El 的rootless机制,即sudo也不能操作部分文件目录, 所以如果需要执行,需要先关闭rootless功能。可以进入恢复模式关闭rootless机制:

1、重启Mac,按 command+R 进入恢复模式

2、选择终端,在左上角,输入指令:

$ csrutil disable

3、重启后让机器正常启动,可以在终端查看rootless状态:
$ csrutil status

正常情况下rootless已经关闭。

4、要想重新开启rootless机制,参照步骤1,输入指令:
$ csrutil enable

另外一种方式更简洁, 但是我没有验证过, 自己可以动手试一下:

不需要进入恢复模式, 在teminal中输入

sudo nvram boot-args=”kext-dev-mode=1 rootless=0″;sudo reboot

输入密码后重启。

打开rootless

sudo nvram boot-args=”rootless=1″ 重启

查看rootless
nvram boot-args

查看那些目录有rootless限制

cd /

ls -lO|grep restricted



支付宝打赏 微信打赏

赞赏一下 坚持原创技术分享,您的支持将鼓励我继续创作!