开发者社区 问答 正文

golang执行linux后台命令

前提:
我想通过golang执行linux命令启动一个类似tomcat这样的服务器

问题:
golang可以实现执行命令并启动服务,但是当我把golang关掉的时候,已经启动的服务也会相应关闭,不知道是通过什么方法将两者的关联去掉,即我关闭golang不会关闭通过golang启动的服务。

多谢各位高手了!

展开
收起
a123456678 2016-06-24 10:48:27 2050 分享 版权
1 条回答
写回答
取消 提交回答
  • golang执行另外一个程序的时候,比如执行程序B,默认是作为B的父进程启动B的,你可以ps -ef看下父子关系。
    所以你要做的是,让新启动的B进程父进程为1号进程,方法为

    runuser -l root -c "程序 参数 2>&1 &"
    后面的“2>&1 &”不要动,前面的程序和参数替换实际运行的即可

    2019-07-17 19:46:42
    赞同 展开评论
问答分类:
问答标签:
问答地址: