apacheCentOS7でハマった落とし穴。実行権限とか所有者周りって面倒ですよねって話。気づき昨日、apache経由で生成されるファイルの権限がおかしい事に気がつく。umaskの値を指定している。002デフォルトではumaskは022なので、002を指定してあげれば、664のファイルが生成されるはずだが、何故か644で生成されている。何かおかしいので調査してみた。調査まずは過去に作ったサーバで確認してみる。CentOS6系の場合は、envvarsに設定すれば問題なく664のファイルが生成される。次に、CentOS7のサーバをapachectlから起動してみた。この場合はenvvarsにumaskを設定していると、664のファイルが生成された。原因と解決策envvarsの値が反映されないのはsystemd経由で起動した場合である事が判明。httpdこの場合はenvvarsの値は反映されず、umaskは022が使用される。systemd経由だと、以前もユーザー固有の環境変数を読み込まなかったので、たぶんそこら辺の関連と思われる(そのうちちゃんと調べる)。systemd経由の起動の場合、以下を記載して起動すればumaskを指定出来ました。/etc/systemd/system/httpd.service[Service]UMask=002備忘録。それなりにCentOS7使っているのに、未だにsystemdよく分かってないって恐ろしいですね。そのうちちゃんと調べます。月別アーカイブスポンサードリンクはてなブログをはじめよう!unknownengineerさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。