web-dev-qa-db-ja.com

sudoなしでこれらのファイルを削除または移動できないのはなぜですか?

以前にfile-rollerを使用してISOイメージをデスクトップに抽出していましたが、Sudoを使用した場合に限り、これらのファイルを削除または移動/名前変更できなくなりました。ただし、許可(chmod)またはコンテンツの変更は可能です。

bytecommander@BC-AlkaliMetal:~/Desktop$ ll AUTORUN.INF 
-rwxr-xr-x 1 bytecommander bytecommander 132 Jul 21  2005 AUTORUN.INF*

bytecommander@BC-AlkaliMetal:~/Desktop$ chmod 777 AUTORUN.INF 

bytecommander@BC-AlkaliMetal:~/Desktop$ echo "Something useless" > AUTORUN.INF

bytecommander@BC-AlkaliMetal:~/Desktop$ cat AUTORUN.INF 
Something useless

bytecommander@BC-AlkaliMetal:~/Desktop$ ll AUTORUN.INF 
-rwxrwxrwx 1 bytecommander bytecommander 18 Sep 22 21:13 AUTORUN.INF*

bytecommander@BC-AlkaliMetal:~/Desktop$ rm AUTORUN.INF 
rm: cannot remove 'AUTORUN.INF': Permission denied

しかし、私はここで何を妨げているのかを正確に理解したいと思います。

私のデスクトップディレクトリはext4パーティション上にあります。 mountからの出力:

/dev/sdb5 on / type ext4 (rw,noatime,nodiratime,errors=remount-ro,data=ordered)

疑わしいアクセス許可、ACL、拡張属性など、私が知っている他のものは見つかりませんでした。

bytecommander@BC-AlkaliMetal:~/Desktop$ stat AUTORUN.INF 
  File: 'AUTORUN.INF'
  Size: 18          Blocks: 8          IO Block: 4096   regular file
Device: 815h/2069d  Inode: 405817      Links: 1
Access: (0777/-rwxrwxrwx)  Uid: ( 1000/bytecommander)   Gid: ( 1000/bytecommander)
Access: 2016-09-22 18:18:36.569110000 +0200
Modify: 2016-09-22 21:13:26.821382722 +0200
Change: 2016-09-22 21:26:16.653296674 +0200
 Birth: -

bytecommander@BC-AlkaliMetal:~/Desktop$ getfacl AUTORUN.INF 
# file: AUTORUN.INF
# owner: bytecommander
# group: bytecommander
user::rwx
group::rwx
other::rwx

bytecommander@BC-AlkaliMetal:~/Desktop$ lsattr AUTORUN.INF 
-------------e-- AUTORUN.INF

ここで何が起こっていますか?

5
Byte Commander

削除ファイルには親ディレクトリへの書き込み許可が必要です。

  • ~/Desktop/に不正な許可ビットがあります
  • ~/Desktop/は正しい権限を持っていますが、rootなどの他の誰かが所有しています

必要に応じて確認および調整します。

10
steeldriver