Ubuntu 程序无法作为服务启动

Ubuntu 程序无法作为服务启动

我是 Linux 和服务器的新手。我有一个喜欢在开机时启动的程序。

在文件夹中执行程序没有问题。尝试从安装文件夹之外执行程序会产生一些错误,例如未找到配置文件、未找到语言文件夹等。

22:06:24> Error: there was an error loading languages. Please check your language folder.
22:06:24> Loading configuration.
22:06:24> ENOENT: no such file or directory, open 'config.default.json'
22:06:24> Error: config.default.json is broken or missing. Shutting down.

我喜欢使用类似

[Service]
ExecStart=/home/xxx/yyy/zzz/startkmr1

但它不起作用。

[Service]
ExecStart=/home/xxx/yyy/zzz/./startkmr1

也不起作用。

我喜欢从启动时将该程序作为服务运行。

如果我在 startkmr1 目录中并执行./startkmr1,它就会起作用。非常感谢任何帮助。

答案1

当您有一个在工作目录中查找配置、数据或库文件的可执行文件,并且您想将其作为服务运行时,您可以使用指令在服务文件中设置工作目录WorkingDirectory

您可以在以下位置找到有关此指令和其他指令的信息systemd.service手册页

相关内容