首页 > 解决方案 > 使用 ExecStart /bin/sh 运行 systemd 服务失败

问题描述

任何人都可以帮助解决 systemd 错误:

6 月 25 日 15:58:21 ubuntu sh[26818]:开始:1:开始:语法错误:未终止的引用字符串

[Service]
Type=simple
User=test
ExecStart=/bin/sh -c \'${NVM_BIN}/npm start --prefix /home/test/garage-backend\'
Restart=on-failure

我也尝试过不转义 shell 命令:

[Service]
Type=simple
User=test
ExecStart=/bin/sh -c '${NVM_BIN}/npm start --prefix /home/test/garage-backend'
Restart=on-failure

但随后systemctl status它显示不带引号的 ExecStart 命令。

(如果我/bin/sh -c '${NVM_BIN}/npm start --prefix /home/test/garage-backend'直接在终端中运行,它可以工作)

标签: linuxshellservicesystemd

解决方案


推荐阅读