如何从服务在远程主机上运行命令?

如何从服务在远程主机上运行命令?

我在“/etc/init.d”中有一个服务。在该服务中,我使用 ssh 作为用户在远程计算机上运行命令。目前我按以下方式执行此操作:

sudo -u user bash -c "ssh [email protected] 'source ~/.envrc ; (cd /catalog; ./bin/catalog start &)'"

这是该服务的启动命令,服务名称为catalog。

当我执行该命令时,它成功运行,即它正确地通过 SSH以用户sudo service catatlog start身份进入目标机器,但它没有启动服务。[email protected]user

有人能告诉我如何调整它以使其成功运行吗?

答案1

所以我使用nohup命令修复了它:

sudo -iu user ssh [email protected] "nohup bash -c 'source ~/.envrc ; (cd /catalog; ./bin/catalog start &)'"

相关内容