Systemd

啟動時啟動 Cloud9 服務時參數無效

  • July 18, 2018

我正在嘗試通過將 Cloud9 設置為 Debian 上的服務來自動執行 Cloud9。這個錯誤阻止了我:

$ sudo service cloud9 start
Failed to start cloud9.service: Unit cloud9.service failed to load: Invalid argument. See system logs and 'systemctl status cloud9.service' for details.

systemctl status cloud9.service輸出:

$ systemctl status cloud9.service
● cloud9.service - cloud9
  Loaded: error (Reason: Invalid argument)
  Active: inactive (dead)

可能是由於/etc/systemd/system/cloud9.service我剛剛創建的配置錯誤:

[Unit]
Description=cloud9

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

[Install]
WantedBy=multi-user.target

如何為服務創建一個簡單的啟動腳本?

您的第一個線索是診斷說要檢查 的輸出systemctl status cloud9.service,但您沒有提到這樣做或共享該輸出。

也許它會告訴您,您傳遞的二進製文件的路徑ExecStart=必須是絕對的。

通常,這裡的“無效參數”是單元定義文件本身。要調試它,您可以使用:

sudo systemd-analyze verify cloud9.service

或者如果是使用者的本地服務:

sudo systemd-analyze --user verify cloud9.service

引用自:https://unix.stackexchange.com/questions/315968