为了找到解决我昨天遇到的问题的方法(请参阅问题这里)我做了另一个实验。
插入闪存驱动器(vfat)并安装其唯一的分区后,我想知道:如果更改安装点的权限会怎样?好吧,这应该可以解决我所有的问题,所以我继续(以 root 身份):
起初我尝试更换所有者:
root# chown root:root /media/MOUNT_POINT
注意:/media/MOUNT_POINT是系统自动创建的
当命令的答案是:不允许操作。什么?有什么事情即使是 root 也是不允许的吗?
好吧,这并没有阻止我然后尝试:
root# chown 000 /media/MOUNT_POINT
这次没有消息,但是之后
ls -l /media
我有
drwx------ 4 miranda miranda 4096 Apr 10 05:41 24EE-9E3C
如您所见,该文件夹仍然拥有其所有权限。我尝试了从 000 到 666 的所有组合(当然使用脚本),结果是相同的。
发生了什么?我缺少什么?甚至更重要。这可以做到吗?
提前致谢。
答案1
vfat 文件系统不支持权限。当您在挂载分区时尝试修改挂载点的所有权或权限时,它适用于已挂载文件系统的根目录,而不是您要挂载的目录。
如果您的目标是使文件系统只读,请尝试使用-o ro
.
您无需卸载即可完成此操作mount -o remount,ro /media/MOUNT_POINT
。
答案2
显然,El Capitan 包含一项称为系统完整性保护 (SIP) 的功能,可防止重要目录被修改。在上面的输出中,这是由“restricted”标志指示的。截至撰写本文时,我的研究表明解决此问题的唯一方法是重新启动、禁用 SIP、进行更改、重新启动、启用 SIP。您可以在 Stack Overflow 上找到概述的过程,但为了便于使用,我将在此处重新打印它。
重启。按 Cmd+R 进入恢复模式。打开实用程序->终端。运行命令 csrutil 禁用。重启。您回到了 OS X,并且 SIP 被禁用。做出你的改变。重启。按 Cmd+R 进入恢复模式。打开实用程序->终端。运行命令 csrutil 启用。重启。