无法删除文件-权限被拒绝-为什么?


13
[db2inst1][testing ~/sqllib/db2dump] rm db2diag.log 
rm: cannot remove `db2diag.log': Permission denied
[db2inst1][testing ~/sqllib/db2dump] id
uid=1002(db2inst1) gid=107(db2iadm1) groups=16(dialout),33(video),107(db2iadm1),108(db2fadm1),1001(eduserver)
[db2inst1][testing ~/sqllib/db2dump] ll
total 1381172
-rw-rw-rw- 1 root db2iadm1 1412931954 Oct  2 10:24 db2diag.log

当前登录的用户(db2inst1)是db2iadm1组的一部分,该组对我要删除的文件具有w权限。但是我不能。知道为什么吗?

更新-父目录的权限

drwxr-sr-x 2根db2iadm1 4096 8月22日14:39 db2dump


2
父目录有哪些权限?请参阅为什么可以rm删除只读文件?
ire_and_curses 2012年

Answers:


12

为了删除文件,您必须对文件所在的目录具有写许可权。当您rm使用文件时,它将进行unlink系统调用,从而从目录中删除该名称。仅当文件是最后一个到索引节点的链接时,才删除该文件。

您可以在unlink(2)中找到更多信息。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.