84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
我经常有这样的需求,通过ssh连接到服务器上,运行一个脚本。 因为脚本要运行很久,所以就丢在那里,看着打印输出。 一会儿不管他,电脑就进入休眠了,网络也就断了,ssh就断了,服务器运行的进程也挂了。 有没有什么办法,可以让这种情况下进程不死,然后再次练上去还可以继续看脚本运行的打印
闭关修行中......
准备运行 nohup xxx &
如果已经运行了 ctrl+z 暂停 jobs 看到暂停任务的id bg id disown id #注:不加这句的话,终端结束时进程会收到SIGHUP,该信号对应的默认操作就是结束进程
除了nohup之外也可以用setsid,但是最好的还是用screen这类东西。
lz需要的是tmux或者screen
试一下nohup
nohup - run a command immune to hangups, with output to a non-tty
http://www.21andy.com/blog/20071121/6...
装个screen吧 参见:http://www.ibm.com/developerworks/cn/...
脚本最后加上 &
找个东西压着键盘。。。
tmux 或者 screen
byobu 只是一个 tmux/screen 的美化包装
这是因为ssh有时间长度,如果一段时间内客户端没有响应,服务器就会断掉连接。 /etc/ssh/ssh_config中加入 ServerAliveInterval 60 一行,就可以了
byobu 你值得拥有! 比screen更好用
setsid - run a program in a new session
准备运行
nohup xxx &
如果已经运行了
ctrl+z 暂停
jobs 看到暂停任务的id
bg id
disown id #注:不加这句的话,终端结束时进程会收到SIGHUP,该信号对应的默认操作就是结束进程
除了nohup之外也可以用setsid,但是最好的还是用screen这类东西。
lz需要的是tmux或者screen
试一下nohup
http://www.21andy.com/blog/20071121/6...
装个screen吧
参见:http://www.ibm.com/developerworks/cn/...
脚本最后加上 &
找个东西压着键盘。。。
tmux 或者 screen
byobu 只是一个 tmux/screen 的美化包装
这是因为ssh有时间长度,如果一段时间内客户端没有响应,服务器就会断掉连接。
/etc/ssh/ssh_config中加入
ServerAliveInterval 60
一行,就可以了
byobu 你值得拥有! 比screen更好用
setsid - run a program in a new session