如何避免;“不允许操作”;在macOS上,当'sudo'和'bypass'don';别耍花招

如何避免;“不允许操作”;在macOS上,当'sudo'和'bypass'don';别耍花招,macos,file-io,sudo,Macos,File Io,Sudo,在macOS(High Sierra)上尝试在路径处列出文件时 /private/var/db/ConfigurationProfiles/Store 我得到错误“操作不允许””。使用sudo并不能改善它,甚至使用旁路帮助程序也不会改变任何东西: sudo /System/Library/Extensions/TMSafetyNet.kext/Contents/Helpers/bypass ls -l /private/var/db/ConfigurationProfiles/Store 同

在macOS(High Sierra)上尝试在路径处列出文件时

/private/var/db/ConfigurationProfiles/Store
我得到错误“
操作不允许”
”。使用
sudo
并不能改善它,甚至使用
旁路
帮助程序也不会改变任何东西:

sudo /System/Library/Extensions/TMSafetyNet.kext/Contents/Helpers/bypass ls -l /private/var/db/ConfigurationProfiles/Store
同时给出“
不允许的操作”
”。如何在路径
/private/var/db/ConfigurationProfiles/Store
下列出/访问文件

其他信息:

通过
ls-al/private/var/db/ConfigurationProfiles
的封闭目录列表显示:

drwxr-xr-x   5 root  wheel   160 13 Apr  2018 .
drwxr-xr-x  85 root  wheel  2720 28 Sep 06:27 ..
drwxr-xr-x@  4 root  wheel   128 16 Dec  2017 Settings
drwx------   3 root  wheel    96  1 Oct 21:56 Setup
ls: Store: Operation not permitted

一致,但奇怪的是,
存储
无法列出。当以当前用户身份执行
ls
时以及通过
sudo
执行时都会发生这种情况,最可能的原因是-
csrutil
是命令行实用程序。您需要禁用它才能查看目录

  • 要查看您的状态,您需要:
csrutil状态

  • 要禁用它(这通常是一个坏主意):
csrutil禁用
(然后您可能需要重新启动)

  • 要启用它(完成后应重新打开):

csrutil enable

您能否给我们提供
/private/var/db/ConfigurationProfiles
ls-la
。我已经添加了相关的详细信息。您是否也尝试了
sudo ls-la
?是的,正如问题中提到的,它同时发生在当前用户和通过sudo。您是否在(
csrutil status
)上具有系统完整性?->这是您必须禁用保护才能查看文件的最可能原因。您是否验证了磁盘?我可以确认禁用SIP解决了访问问题:然后
sudo ls-al/private/var/db/ConfigurationProfiles/Store
列出了该目录的内容。-这不是我所希望的解决方案,但这是一个解决方案(可能是唯一可能的解决方案)。@Halloeo这就是MacOS的工作原理。如果SIP被SIP覆盖,“普通”用户无权访问,以保护系统免受普通用户的攻击。