業務で CentOS なサーバを触ることが多くなり、最近 service コマンド(以下 service)で daemon の起動等が出来る事を知った。Debian をずっと使ってきた身としては全然なじみが無くて % sudo /etc/init.d/hoge startで実行するのと % sudo /sbin/service hoge startで実行することの違いはなんだろうかと思った。そこで、service のソース*1を読んでみたところ、違いや便利な機能があることが分かった。 service で実行する時は一部の環境変数しか引き継がれない /etc/init.d で実行する時には、すべての環境変数が有効なまま実行されるのに対して、service で実行する時には、以下の環境変数しか引き継がれない事が分かった。 LANG PATH TERM env コマンドの -i オプションで上記