我有一个远程服务器,我使用SSH连接。 我使用以下命令在服务器上启动了一个进程(mongodb):“/ usr / bin / mongod –dbpath / mnt / ebs-300 / mongodb –logpath /mnt/ebs-300/log/mongodb/mongodb.log运行–config /etc/mongodb.conf&
由于“&”被追加到命令后面,这个过程在后台运行。 运行该进程并检查其正常工作后,我从terminal(ssh)退出。 这个过程在一段时间之后通过打印下面的日志而被杀死 – “杀死或者ctrl c或者hup信号1(挂断),当前cmd结束后会终止”
如果我做错了,或者有从远程terminal运行进程的正确方法,有人可以引导我。
谢谢!!
我会build议尽pipe'&'在后台运行命令,当你退出你的terminal,它仍然得到发送SIGHUP。 你可以使用disown命令
当当前shell终止一个login会话时,disown将阻止当前shell向给定的每个作业发送一个HUP信号。
如果作业被省略,则使用最近开始或停止的后台作业。
Rory的答案是好的,但是为你的mongod调用添加--fork标志也会使它在后台运行。