サービス開始要求の繰り返しが速すぎて、開始を拒否しました


14

Debian 8.6でサービスを作成しましたが、serviceコマンドを使用してサービスを開始しようとすると、エラーが表示されます。

試しましたsystemctl daemon-reloadが、それでも同じ結果が得られます。

$ sudo service cloud9 start
$ sudo service cloud9 status
● cloud9.service - cloud9
   Loaded: loaded (/etc/systemd/system/cloud9.service; enabled)
   Active: failed (Result: start-limit) since Thu 2016-10-13 07:21:02 UTC; 2s ago
  Process: 2610 ExecStart=/opt/bitnami/nodejs/bin/node /home/user/c9sdk/server.js -w /home/user -l 0.0.0.0 -a admin:admin (code=exited, status=216/GROUP)
 Main PID: 2610 (code=exited, status=216/GROUP)

Oct 13 07:21:02 test-vm systemd[1]: cloud9.service: main process exited, code=exited, status=216/GROUP
Oct 13 07:21:02 test-vm systemd[1]: Unit cloud9.service entered failed state.
Oct 13 07:21:02 test-vm systemd[1]: cloud9.service holdoff time over, scheduling restart.
Oct 13 07:21:02 test-vm systemd[1]: Stopping cloud9...
Oct 13 07:21:02 test-vm systemd[1]: Starting cloud9...
Oct 13 07:21:02 test-vm systemd[1]: cloud9.service start request repeated too quickly, refusing to start.
Oct 13 07:21:02 test-vm systemd[1]: Failed to start cloud9.
Oct 13 07:21:02 test-vm systemd[1]: Unit cloud9.service entered failed state.

構成は/etc/systemd/system/cloud9.service次のとおりです。

[Unit]
Description=cloud9

[Service]
ExecStart=/opt/bitnami/nodejs/bin/node /home/user/c9sdk/server.js -w /home/user -l 0.0.0.0 -a admin:admin
Restart=always
User=nobody
Group=nobody
Environment=PATH=/bin:/usr/bin:/usr/local/bin
Environment=NODE_ENV=production
WorkingDirectory=/home/user/c9sdk

[Install]
WantedBy=multi-user.target

1
systemctlによって出力されるエラーがあまり明確でない場合、根本的な原因が飲み込まれ、開始の一般的な失敗としてマスクされていることが原因である可能性があります。失敗の理由を理解するためのおそらく役立つ方法は、ExecStartディレクティブで指定されたコマンドを手動で実行することです。私の場合、根本原因は私にすぐに現れました。
ウブンフ

回答:


6
2610 ExecStart = / opt / bitnami / nodejs / bin / node /home/user/c9sdk/server.js -w / home / user -l 0.0.0.0 -a admin:admin(code = exited、status = 216 / GROUP)
…
10月13日07:21:02 test-vm systemd [1]:cloud9.service:メインプロセスが終了し、コード= exited、ステータス= 216 / GROUP

…問題を説明します。グループnobodyはシステム上の有効なグループではありません。有効なグループを指定してください。

Environment = PATH = / bin:/ usr / bin:/ usr / local / bin

これはおそらく不要です。

-w / home / user -l 0.0.0.0

より良い世界では、ここでcloud9サービスプログラムは、開いているファイル記述子としてそのリスニングソケットを受け取り、(皮肉なことに、あなたは、その作業ディレクトリ継承している明示的ユニット内の他の場所で設定を)。

参考文献


2

Restartパラメーターを削除し、有効なユーザー/グループを追加すると、問題を解決できました。

[Unit]
Description=cloud9

[Service]
ExecStart=/opt/bitnami/nodejs/bin/node /home/user/c9sdk/server.js -w /home/user -l 0.0.0.0 -a admin:admin
User=user
Group=group
Environment=PATH=/bin:/usr/bin:/usr/local/bin
Environment=NODE_ENV=production
WorkingDirectory=/home/user/c9sdk

[Install]
WantedBy=multi-user.target
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.