サービス開始の問題 Systemd

サービス開始の問題 Systemd

dradisserviceファイル入力/lib/systemd/システム、それは知られているdradisservice。その内容は次のとおりです。

[Unit]
Description=Dradis web application

[Install]
WantedBy=multi-user.target

[Service]
WorkingDirectory=/usr/lib/dradis
ExecStart=/usr/bin/bundle exec rails server
Type=simple
User=user
Group=user

ユーザーsudoersグループにあります。

問題は、サービスを開始しようとするときです。sudoサービスがdradisを起動します注文する

観察記録sudo ジャーナルctl -u dradis -f:

Started Dradis web application.

Faraday::Builder is now Faraday::RackBuilder.

Rails Error: Unable to access log file. Please ensure that /usr/lib/dradis

/log/development.log exists and is writable (ie, make it writable for user and group: chmod 0664 /usr/lib/dradis/log/development.log). The log level has been raised to WARN and the output directed to STDERR until the problem is fixed.

/usr/lib/dradis/config/initializers/resque.rb:3:in `initialize': Permission denied @ rb_sysopen - /usr/lib/dradis/log/resque.log (Errno::EACCES)

指定したコマンドを例に挙げてみましょう。dradisservice文書、/usr/bin/bundle は Rails サーバーを実行します。:

  1. もし/usr/lib/dradis〜のようにユーザー私は処刑しますsudo /usr/bin/bundle Rails サーバーの実行すべてがうまくいっています。
  2. もし/usr/lib/dradis〜のようにユーザー私は処刑します/usr/bin/bundle は Rails サーバーを実行します。同じエラーが発生しました。

私の設定ファイルのエラーはどこにありますか?dradisservice使用するために sudoサービスがdradisを起動します?私はどこで間違った考えを得ましたか?

答え1

root明らかに(を使用して)実行する必要があるため、以下をsudo削除することをお勧めします。

User=user
Group=user

サービスプロファイルから?システムDサービスファイルは、追加のroot通知がないように動作します。

関連情報