OS X EI Capitan的 Rootless特性介绍

OS X EI Capitan的 Rootless特性

说苹果最新的操做系统 OS X EI Capitan(10.11)是Rootless,实际上是一个不许备的说法,由于ROOT用户仍是存在的。更准确的说法应该是 System Integrity Protection(系统完整性保护)。html

这一特性能够限制ROOT用户的权限,即使你已是一个ROOT用户,仍然不能掌控整个系统。这样作的好处在于,恶意软件再也不能得到你整个系统的控制权限,一般它们能够假装一个虚假的认证对话框显示给用户,骗取用户的管理密码。但同时,它也可能给你本来的正常操做带来意想不到的限制,再也不能自由地定制本身的系统。但总的来讲,它并不会阻止你的正常系统操做。api

以下是它的详细限制说明:

  • 你不能修改 /System, /bin, /sbin, /usr (除了/usr/local)下的任何东西,也不能个性预装的app和工具。只有从App Store安装和更新应用时,才能更新这些区域。 因为正常的OS X系统操做都是在/Library, ~/Library, Applications,/etc, /opt下进行的,因此这些限制都不是什么大问题。要查看全部受限目录的列表,您能够查看文件/System/Library/Sandbox/rootless.conf,该文件自己就位于受限区域。app

  • 它一样会阻止你修改你的启动卷。若是要想从另外一个卷下启动你的MAC,你可使用"系统偏好设置"下的"启动磁盘"面板进行选择切换。或者在你重启时,按住Option键不放,而后从屏幕显示的列表中选择须要的启动卷。less

  • 你不能使用工具链接系统进程进行一些调试工做,或者修改它们加载的动态库。固然这也不是什么大问题,开发者仍然能够调用本身建立的用户进程。这能够阻止用户向内置的应用注入代码,同时一些基于dtrace的系统监控工具, 例如opensnoop,就不能再监控任何系统进程。工具

  • 除非你是一名苹果认证的工程师,不然你不能加载任何内核扩展。oop

如何禁用SIP限制

大部分的MAC用户应该不须要禁用它,除非你是一个高级用户,且对所面临的风险具备充分的认识。在你准备禁用以前,请务必三思本身是否必定要操做这些受限区域,是否可使用非受限区域来进行你的操做。SIP在你未习惯时可能感受有一些约束感,但它所限制的一般都是应该被限制的。操作系统

若是你确实因为开发或者调试的须要,确实须要禁用它,能够按以下步骤进行操做:调试

  1. 重启MAC,并按住Command + R 使系统进行Recovery Mode (恢复模式)
  2. 当OS X Utilities 界面出现时,从Utilities菜单中选择 Terminal
  3. 在Terminal中输入 csrutil disable, 并重启电脑
  4. 重启完成后,SIP已经被禁用,能够经过csrutil status查看SIP状态进行确认
$ csrutil status
 System Integrity Protection status: disabled
相关文章
相关标签/搜索