8

で testdir を取得し、mkdir testdirでその中にファイルを作成しましたtouch testdir/a

drwxr-xr-x  2 jermaine     jermaine       4096 Mar 12 22:57 testdir

「x」を削除するとchmod -x testdir

そしたら出来なくなる

cd testdir

touch testdir/b

ls -l testdir

cat testdir/a

私の質問は、「r」はあるが「x」がないディレクトリの下のファイル階層をリストできないのはなぜですか? ディレクトリの「x」は正確には何を意味しますか?

「xはディレクトリに入ることを意味します。読み書きする前に入力する必要があります」などの説明をいくつか知っていました。しかし、「入る」とはどういう意味ですか?inodeまたはdentryレベルでの回答に本当に感謝しています。どうもありがとう。

4

3 に答える 3

21

「実行」は、ディレクトリに対するトラバーサル権限です。ディレクトリ内のファイルやフォルダにアクセスできます。

ディレクトリを読み取ることができれば、内容を一覧表示できます。

ディレクトリを作成できれば、その中に新しいファイルやフォルダを作成できます。

ディレクトリを「実行」できれば、中身がわからなくても、階層を移動できます。

于 2013-03-12T08:01:42.940 に答える
13

Linux のディレクトリにパーミッションを適用する場合、パーミッション ビットは通常のファイルとは異なる意味を持ちます。

  • 書き込みビットにより、影響を受けるユーザーは、ディレクトリ内でファイルを作成、名前変更、または削除し、ディレクトリの属性を変更できます。
  • 読み取りビットにより、影響を受けるユーザーはディレクトリ内のファイルを一覧表示できます
  • 実行ビットにより、影響を受けるユーザーはディレクトリに入り、内部のファイルやディレクトリにアクセスできます
于 2013-03-12T08:03:03.050 に答える
-1

ディレクトリに対する実行権限は、そのディレクトリ内のファイルにアクセスできることを意味します。

Unix パーミッションの詳細については、次のリンクを参照してください。

http://www.cyberciti.biz/faq/how-linux-file-permissions-work/

于 2013-03-12T07:59:39.547 に答える