ディレクトリ権限がどのように機能するのかわかりません。たとえば、
r
:ディレクトリ内のすべての現在のファイルを一覧表示できます(例ls
:)
w
:ディレクトリ内のファイルを変更して削除したら、新しいサブディレクトリを作成できます。
x
:ディレクトリにアクセスできます(例cd
:)。
私の言葉が正しい場合:
-w-
- ファイル名が既にわかっている場合は、ファイルを削除できますか?
- 書き込み権限がなくてもファイルを削除できますか?
別の問題。固定ビットが発生した場合(たとえば/tmp
)、所有者でない場合はファイルを削除したり名前を変更したりすることはできません。これを行うには、ファイル権限が不十分ですか?
答え1
x
ディレクトリの権限でdir
ファイルにアクセスできますdir/file
。この権限がないと、このw
権限はまったく役に立ちません。ファイルを作成または削除するには、そのファイルを指すことができる必要があるためです。
ただし-wx
、そのディレクトリにある場合は、その名前がわかっている場合は、ファイルを削除して新しいファイルを作成できます。
ディレクトリの読み取り、つまりコンテンツのリストには何も必要なく、それ自体dir/file
にのみアクセスする必要があるため、そのファイルがある場合はファイルのリストを取得できます。dir
r--
ファイル権限は、少なくとも私のLinuxでは、固定ディレクトリにあってもファイルの削除には影響しません。マニュアルページ(修正(1))は、固定ディレクトリからファイルを削除したり名前を変更したりするには、ファイルまたはディレクトリの所有者である必要があることを意味します。
/tmp$ ls -l test
-rw-rw-rw- 1 root root 0 Aug 19 16:17 test
/tmp$ rm test
rm: cannot remove 'test': Operation not permitted