web-dev-qa-db-ja.com

誰でも書き込み可能なファイルとフォルダーを見つけて、スティッキービットを設定するにはどうすればよいですか?

私は次のことをしたい:

  1. /ルートからすべての書き込み可能なファイルとフォルダーを見つける必要があります。
  2. 見つかった場合、スティッキビットが設定されているかどうかを確認する必要があります。
  3. スティッキービットが設定されていない場合は、設定します。

この種の問題に対するコマンドラインソリューションを考え出すことはできますか?

10
snoop

find-perm -mode形式を使用してこれを行うことができます。 man findから:

-perm -mode

すべての許可ビットモードがファイルに設定されます。シンボリックモードはこの形式で受け入れられます。これは通常、それらを使用する方法です。シンボリックモードを使用する場合は、u',g 'または `o'を指定する必要があります。いくつかの実例については、例のセクションを参照してください。

そのため、他のアクセス許可に関係なく、誰でも書き込み可能なすべてのファイルを見つけるには、次のようにします。

find / -perm -o+w 

スティッキービットを設定するには、-execを使用します。

find . -perm -o+w -exec chmod +t {} + 
12
terdon

このコマンドは、書き込み可能なディレクトリをすべて1つのコマンドで検索する必要があります。私はこれを頻繁に使用しています。これが最適なコマンドです! ;)それがあなたに役立つことを願っています:

find / -type d \( -perm -g+w -or -perm -o+w \) -exec ls -adl {} \;
2
Boschko