デフォルトでは、特定のディレクトリに新しく作成されたファイルをすべてのユーザーが実行可能で読み書きできるようにする方法

デフォルトでは、特定のディレクトリに新しく作成されたファイルをすべてのユーザーが実行可能で読み書きできるようにする方法

私が答えを見つけることができない質問は次のとおりです。特定のディレクトリに新しく作成されたファイルをすべてのユーザーが実行可能で読み書きできるようにする方法です。

そのため、マウントされたディレクトリにテキストファイルを生成するサーバー上でルートとして実行されるアプリケーションであるNFSと、これらの文書を使用するWindows Serverインスタンス(また、NFSがマウントされている)で実行される別のプロセスがあります。ファイルを使用するには、プロセスにそのファイルに対する読み取り、書き込み、および実行権限が必要です。動機は次のとおりです。 rootユーザーが作成したすべてのファイルにデフォルトでrwx権限を付与する方法は?

私が見つけて試したこと:1. NFS設定を含む/ etc / exportファイルを変更します。残念ながら、これは機能しません。 2. ルートの umask を変更します。私が知っている限り、umaskを使用して777権限を有効にすることはできず、666権限からのみ減算できます。 3. 定期的に権限を変更する crontab を設定します。権限が必要な操作は一度だけ発生し、権限がないとWindowsプロセスがブロックされるため、これだけでは不十分です。

ベストアンサー1

rootユーザーが作成したすべてのファイルにデフォルトでrwx権限を付与する方法は?

私は次のようなものを使いますinotify

inotifywait -m $directory -e create |
    while read path action file; do
        if [[ $(stat --format %U "$file") == root ]]; then
            chmod 777 "$file"
        fi
    done

rwx私はファイルを次のように設定することに少しアレルギーがありますが、みんなセキュリティの問題による。


オンラインマニュアルページinotifywait ここ

おすすめ記事