私はしばらくの間、さまざまなケースで umask/パーミッションの問題と戦ってきました。/etc/init/php-fpm.conf ファイルで www-data (nginx/php-fpm で実行) の umask が 002 になるように設定しました。私のデプロイヤー ユーザーも /home/deployer/ で 002 の umask を持っています。 .bashrc. アプリケーション ファイルはすべて 0660 パーミッション (ディレクトリの場合は 0770) を持っているため、両方が読み書きできます (デプロイヤのメイン グループは www-data です)。ただし、この umask が受け入れられず、ファイルが 644 または 640 に設定されているケースに何度も遭遇します。
私の現在のケースは、次のオプションを使用して、ansible スクリプトを使用して root として SSH 接続する場合です。
sudo: yes
sudo_user: deployer
ansible で作成されたファイルは、644 のファイル権限を取得しています。umask が設定されている場所と、umask を追加する場所を確認するにはどうすればよいですか?
第二に、展開を行うためのより良い方法はありませんか? この問題を完全に回避し、すべての展開作業を www-data ユーザーとして実行したいのですが、明らかにそれはセキュリティ上の問題です。この umask は非常に複雑な展開です。
ありがとうございました。