我正在使用Putty连接到我的AWS实例。一切都运作良好。唯一的问题是,如果管理实例的笔记本电脑进入待机模式(不幸的是默认的公司安装设置),我的实例也会出现连接错误,并停止执行脚本。实例是否可以以断开连接的方式工作,这不是AWS的全部目的吗?有没有办法避免这种行为?
答案 0 :(得分:3)
如果从远程shell启动脚本,则该过程将附加到此shell,当您的笔记本电脑进入待机模式时,网络将断开连接以减少电池使用量,并执行已执行的过程你的远程shell也在停止。
您可以做的是将您的进程从远程shell的子进程中分离出来。你可以这样开始:
/path/to/my_script.sh & | disown %1
&
将作业置于后台,即阻止作业 试图读取输入,并使shell不等待它 完成。
disown
从shell的作业控制中删除了该进程,但它 仍然将它连接到终端。其中一个结果是 shell不会发送一个SIGHUP。显然,它只能应用于 后台作业,因为前台作业时无法输入 运行