Systemd
啟動時啟動 Cloud9 服務時參數無效
我正在嘗試通過將 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