当我需要在低重要的服务器上启动后台进程时,我倾向于使用nohup:
nohup ./server.sh &
大多数同事似乎更喜欢屏幕:
screen -D -R mydaemon ./mydaemon.sh ^A ^D
这两种方法的效果是否有重大差异? 这种或那种方式有什么好处?
nohup的缺点是,在父进程退出后,您无法重新连接到进程,并且必须执行额外的步骤以确保正确捕获输出。 使用screen或者tmux,你仍然可以和shell进行交互。