ssh登陆后nohup后台运行退出会hang

ssh 登陆到某天机器后,将某个程序nohup丢到后台去执行,然后ctrl-d或exit退出后,ssh client不退回到local host。此时要手工关闭client或者等待直到该程序运行结束退出。
例如:nohup ./program   &
此时exit退出,就会出现上述不死不活HANG在那里的现象。
问题原因:
   程序虽然进入后台,但其标准输入(0)、标准输出(1)、标准错误(2)输出都未关闭,而默认情况下0、1、2是和终端(或伪终端)相关联的。
解决方法是:
关闭一下 stdin、stdout、stderr 即可,
ssh 127.0.0.1 "nohup bash ./xxx.sh 0/dev/null &"

你可能感兴趣的:(Linux)