为什么我无法删除这个文件?

为什么我无法删除这个文件?

当我运行时brew doctor,收到此警告:

Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected dylibs:
    /usr/local/lib/libusb-0.1.4.4.4.dylib
    /usr/local/lib/libusbpp-0.1.4.4.4.dylib

根据这个问题和答案,我想删除这些文件。

但是当我用 删除第二个时rm,它似乎会自动重新创建:

$ rm /usr/local/lib/libusbpp-0.1.4.4.4.dylib
override rwxr-xr-x  root/wheel for /usr/local/lib/libusbpp-0.1.4.4.4.dylib? 
$ ls /usr/local/lib/libusbpp-0.1.4.4.4.dylib
/usr/local/lib/libusbpp-0.1.4.4.4.dylib

我完全不明白发生了什么。为什么我不能删除这个文件?

答案1

rm告诉您,您没有要删除的文件的写入权限,并要求您确认。当系统询问您是否要覆盖时,请键入y并按return。如果您键入n或什么都不输入,系统将不会删除该文件。


技术细节:

rwxr-xr-x root/wheel是文件权限和所有权的表示。

第一部分告诉你文件的权限;第二部分告诉你该文件归用户所有root和小组wheel

man chown有关文件所有权的更多信息,以及man chmod有关文件权限的更多信息。维基百科可能有更易于理解的信息chownchmod

答案2

您需要使用 sudo...

sudo rm -rf /usr/local/lib/libusbpp-0.1.4.4.4.dylib

那应该可以

答案3

上述答案适用于 的内容/usr/local/。MacOS 有一种称为系统完整性保护的功能,可限制超级用户的操作。尝试更改/usr/bin和其他文件夹的内容可能会被拒绝不允许操作. 这在哪些文件夹受到系统完整性保护的影响

相关内容