Mac 系统
在 Mac 使用过程中遇到 Operation Not Permitted 问题,文件移动不了,也删除不掉.这是由于 SIP 功能引起的问题.SIP(System Integrity Protection) 是 Apple 在 OS X 10.11 以后的版本中默认启动的一项系统保护程序.SIP 会锁定几个系统文件目录:
/System
/sbin
/usr (/usr/local 除外)
解决方案:
- 重启电脑,按下 Command + R 直到听到开机声音,此时电脑会进入恢复模式(Recovery Mode)
- 当 OSX 工具出现在屏幕中时,下拉工具(Utilities)菜单,选择终端(Terminal)
- 键入
csrutil disable
,回车 - 电脑重启后,SIP 就关闭了
恢复 SIP 方法同上, 只不过把命令换成 csrutil enable
.另外通过 csrutil status
可以检测系统当前 SIP 的启动状态.
Linux 系统
在 Linux 系统下,也可能遇到 Operation Not Permitted 错误.这时候通过 lsattr
命令查看以下该文件的 flags:
# rm -f test.md
rm: cannot remove ‘test.md’: Operation not permitted
# lsattr test.md
----i--------e-- ./test.md
如果文件上存在 i 标记,那么该文件无法被编辑或者删除.可以在 root 模式下去除该标记
# chattr -i test.md
网友评论