跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • Linux怎么设置系统服务
未分類
8 3 月 2020

Linux怎么设置系统服务

mryin 大佬有话说 :

Linux怎么设置系统服务

Linux设置进程为系统服务,我都是通过systemctl设置的,以前是这样的
ExeStart=程序目录+参数

但是最近遇到的情况是这样的,要进去指定的目录,然后执行npm start
所以我就这样写:
ExeStart=cd /root/xxx &&npm start
或者这样写:
ExeStart=/root/xxx &&npm start

都不成功,有知道的大佬怎么设置这种进入目录,再执行命令的过程设置为系统服务的吗?

llyang 大佬有话说 :

ExecStart
你少写一个字母

我都老实照抄别人的,放在$PATH下面,稳稳当当的

我是一个大水怪 大佬有话说 :

本帖最后由 我是一个大水怪 于 2020-3-8 10:33 编辑

"For each of the specified commands, the first argument must be either an absolute path to an executable or a simple file name without any slashes."

要求命令的绝对路径或者单纯文件名+ 参数,你这种当然不行。

没有相关经验,个人猜测:

– 用脚本封装
– 使用WorkingDirectory选项

“`
WorkingDirectory=/root/xxx
ExecStart=npm start
“`

园丁 大佬有话说 :

服务类型oneshot, 然后把你执行的命令放到脚本文件去

mryin 大佬有话说 :

我是一个大水怪 大佬有话说 : 2020-3-8 10:27
"For each of the specified commands, the first argument must be either an absolute path to an execut …

你这种我试过了,WorkingDirectory提示只能是文件,不能是目录,这就尴尬了

mryin 大佬有话说 :

园丁 大佬有话说 : 2020-3-8 10:29
服务类型oneshot, 然后把你执行的命令放到脚本文件去

很粗暴的使用了node /root/xxx/xxx.js,这样的方法,不知道有什么后遗症

微笑丶在脸上 大佬有话说 :

systemctl启动一个脚本,脚本执行cd再运行可不可以?

林哈哈 大佬有话说 :

放脚本里,执行脚本

园丁 大佬有话说 :

mryin 大佬有话说 : 2020-3-8 10:37
很粗暴的使用了node /root/xxx/xxx.js,这样的方法,不知道有什么后遗症

这种都是看node.js脚本的,如果它需要工作目录那就会失败,不用就无所谓了。

arrr 大佬有话说 :

mryin 大佬有话说 : 2020-3-8 10:36
你这种我试过了,WorkingDirectory提示只能是文件,不能是目录,这就尴尬了

不可能,你应该弄错了什么地方。@我是一个大水怪 给你的方案是正确的。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具