chmod g+s
こんにちは。 Unixで命令の機能を知りたいです。
また、この特定のケースでどのような役割を果たしているのかを知りたいです。
cd /home/canard;
touch un;
chgrp canard .;
chmod g+s .;
touch deux ;
を除くすべてのコマンドの役割を理解しており、この一連のコマンドによって生成されたファイルと結果chmod g+s
の違いを知りたいと思います。un
deux
ベストアンサー1
chmod g+s .;
このコマンドは、次のように作成された現在のディレクトリの「set group ID」(setgid)モードビットを設定します。.
。
これはすべてを意味します新しい現在のディレクトリに作成されたファイルとサブディレクトリは、ファイルを作成したユーザーのデフォルトのグループIDではなく、そのディレクトリのグループIDを継承します。これは、現在のディレクトリ内に作成された新しいサブディレクトリにも渡されます。
g+s
ファイルのグループ ID には影響しますが、所有者 ID には影響しません。
これは以下にのみ適用されます。新しく作られた文書。ファイルは 動く (mv
)ディレクトリエントリはsetgid設定の影響を受けません。コピーされたファイルcp -p
も影響を受けません。
はい
touch un;
chgrp canard .;
chmod g+s .;
touch deux ;
この場合は、deux
グループに属しますcanard
が、un
そのグループが何であれ、そのグループを作成したユーザーのグループに属します。
シェルコマンドでのセミコロンの使用に関するクイックノート
CやPerlとは異なり、シェルコマンドの後に他のシェルコマンドがある場合は、そのコマンドの後にセミコロンを追加するだけです。同じコマンドライン。したがって、次のコマンドラインを検討してください。
chgrp canard .; chmod g+s .;
最後のセミコロンは重複しているため削除できます。
chgrp canard .; chmod g+s .
また、2 つのコマンドを異なる行に配置する場合、残りのセミコロンは必要ありません。
chgrp canard .
chmod g+s .
文書
詳細については、次を参照してください。手動chmod。さらに、ウィキペディアではテーブルコマンドオプションを要約しますchmod
。