我目前有一个目录(udir),该目录仅对所有用户具有读写权限。此目录包含两个文件(文件1和文件2)
我最初虽然只需要(在目录上)写访问权限,才能通过(rm udir / file1)删除/删除文件,但是rm命令会拒绝我访问。当我设置读取,写入和执行权限时,rm命令起作用。
显然也需要执行访问权限,但是为什么?
我认为对目录的执行访问应该能够使其成为工作目录并搜索其内容并访问子目录。
答案 0 :(得分:0)
实际上,您需要目录的read
和write
权限,而不是文件本身的权限,因为考虑到目录的权限影响,操作已经完成。
可以在this link上找到很好的文档,该文档在目录的特殊注意事项部分中提到了以下内容:
要删除文件,需要同时写入(修改目录本身) 并在目录上执行(到stat()文件的inode)。注意用户 不需要文件权限,也不是文件所有者可以删除它!