https://bacchi.me/linux/systemd-tips/


systemdでユーザーの環境変数を読み込むようにする

更新日:

systemdでユーザーの環境変数が読み込まれず
うまくサービスが立ち上がらないという問題がありました。

調べてみると、systemdは.barshrcや.bash_profileに
定義した環境変数を読んでくれないということがわかりました。

環境変数を読み込ませたい場合は一手間かけてあげれば大丈夫なので、その方法をまとめてみました。

/etc/sysconfig/USER_NAME に読み込ませたい環境変数を書く

以下の要領でserviceを動かすユーザーが読み込む環境変数を定義するファイルを設定します。

systemd設定ファイルの[service]ディレクティブにEnvironmentFileを定義する

上記で作成した環境変数を定義したファイルを読み込ませるために、
systemd設定ファイルの[service]ディレクティブにEnvironmentFileの行を追加してやります。

  • 変更前

  • 変更後

サービスの再起動

ここまでの設定が終わればサービスの再起動を行います。

場合によっては設定ファイルのリロードを求められる場合があるのでケースバイケースで。


+ Recent posts