[Apache] 実行ユーザーの umask の設定方法
Apache 実行ユーザーの umask の設定方法をメモ。
# find / -name envvars /usr/local/apache2/bin/envvars |
# vim /usr/local/apache2/bin/envvars # umask 002 to create files with 0664 and folders with 0775 umask 002 |
# service httpd restart |
例えば、Capistrano での自動デプロイ運用で、この設定が役に立つ。
Capistrano で自動デプロイするときに、色んなユーザから deploy できるようにしたい場合にぶつかるファイルのパーミッション問題を umask の設定で解決できる。
Apache とデプロイ権限のあるユーザを共通グループ(deploy とか)に所属させて、運用させたいWebアプリのファイルのグループ所有にする。
そして、パーミッションもファイルは 664、ディレクトリは 775 にすれば、cap deploy:cleanup とかでファイルを削除するタイミングでもエラーが出ることはなくなるはず。
[参考]:/etc/sysconfig/httpd