web-dev-qa-db-ja.com

ディレクトリにcdするためにx許可が必要なのはなぜですか?

ls -laは次を出力します。

drwxrwxrw- 2 www-data www-data 4096 Aug 12 11:04 files

ユーザー名がwww-dataに属していません。 cdファイルにしようとすると、「permission denied」を取得しますが、「read」権限は他のユーザーに許可されます設定されています。

execute」権限が必要なのはなぜですか?

22
null

ディレクトリの実行許可の意味は、そのディレクトリ内のファイル名を検索する機能です。

ディレクトリに対する実行権限がない場合、そのディレクトリ内のサブディレクトリへの統計、オープン、名前変更、削除、または下降はできません

あなたができる唯一のことは、どのファイル名が存在するかのリストを見ることです。そして、あなたが読み取り許可を持っている場合のみです(そして読み取りではあるが実行ではないのは、ディレクトリに対して持つ奇妙な許可のセットです)。

指定されたディレクトリの所有者でない場合は、次を使用して所有者になります。

Sudo chown username /path/to/directory

またはより良い方法は、ユーザーをグループに追加することです

Sudo usermod -a -G groupName userName

実行許可の使用を取得するには、

Sudo chmod a+x /path/to/dir
30