[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)は、削除したいファイルに対するw権限を持つdb2iadm1グループに属します。しかし、私はできません。理由をご存知ですか?
更新 - 親ディレクトリの権限
drwxr-sr-x 2 root db2iadm1 4096 8月22日 14:39 db2dump
答え1
ファイルを削除するには、ファイルが存在するディレクトリに対する書き込み権限が必要です。rm
ファイルを削除すると、unlink
ディレクトリから名前を削除するシステムコールが発生します。ファイルは、inodeへの最後の残りのリンクである場合にのみ削除されます。
詳細は以下で確認できます。切断(2)。