ルートにディレクトリを作成しました。すべてのユーザーに特定のディレクトリへの読み取りおよび書き込み権限を許可するchmod
コマンドを探しています。ファイルに対してchmod 775
を実行しましたが、ディレクトリに対してもこれが必要です。これには、すべてのファイルとサブディレクトリに対する権限が含まれます。
0775
がファイルに対して正しいことはめったにありません。以下は、他の既存のパーミッションを乱すことなく、適切なタイプに適切なパーミッションを追加します。
find somedir \( -type d -exec chmod u+rwx,g+rwx,o+rx {} \; -o -type f -exec chmod u+rw,g+rw,o+r {} \; \)
それを解読するためには findのmanページ を見てください。
にとって すべて ユーザーが読み取りおよび書き込みアクセス権を持っている場合、それは0777
になる可能性があります。これは、特にWebサーバーを実行している場合は多少危険です。 @unwindが言ったように:
chmod -R 0777 /mydirectory
すべてのユーザーがそのディレクトリ内のすべてのファイルとフォルダへの読み書きアクセスを許可します
目的によっては、スティッキビットについて読みたいと思うかもしれません。これは、すべてのユーザが新しいファイルを作成することを許可しますが、ディレクトリ内の他のファイルを削除または編集することはできません。
chmod +t /mydirectory
また、man chmod
がchmod
コマンドのマニュアルページを表示することを知らない場合は、/recursive
と入力してテキスト「recursive」を検索できます
それはUnixの保護モデルがどのように機能するのかではありません、あなたは再帰的にパーミッションを設定することはできません。あなたはそれらをそれぞれのディレクトリに設定する必要があります。
もちろん、設定を再帰的に実行することもできますが、それは「以下のすべてのファイルとフォルダにアクセスしてこれらのアクセス許可を設定する」ことを意味するだけです。
これを行うには、chmodに - Rオプション を使用します。
$ chmod -R 0755 /my-cool-directory