我使用rsync在服务器之间使用putty复制15GB文件。 我想知道,如果我关闭putty终端这样做也会终止rync,因为文件没有被正确复制。
我已经尝试过当我正在进行备份时,即使我关闭putty,然后在后台运行继续运行
答案 0 :(得分:14)
假设您的目标是让rsync命令继续运行,最简单的事情就是孤立作业。有两种方法可以做到这一点:
(rsync foo bar &)
以上将在开始时创建从终端分离的作业,因此关闭终端不会停止它。
rsync foo bar & # or without &, then Ctrl-Z to stop, then "bg" to background
disown
上述操作将取消正在运行的作业,因此您可以在不停止的情况下关闭终端。
最后,您可以使用程序screen(1)
或类似程序来保持终端会话的活动和完整(并且能够恢复),即使您结束了Putty会话。
答案 1 :(得分:2)
通常,如果控制台关闭,大多数命令都会退出。如果你希望它们继续运行,请查看NOHUP命令(Nohup是没有挂断过程,从调制解调器的时代开始,并挂断电话)
答案 2 :(得分:0)
假设您正在某个客户端上运行rsync,则进程的正常行为是在它关闭putty的情况下失去其控制tty时终止。但是你可以使用nohup运行作业(NOHUP(1)),我猜你的备份脚本正在做什么(如果没有涉及其他“技巧”)。然后,rsync commadn的输出将附加到当前或您的主目录中的nohup.out文件中,具体取决于您运行nohup进程的计算机上的权限。
答案 3 :(得分:0)
答案 4 :(得分:0)
原因:
当您在后台执行Unix作业(使用&,bg命令),并从会话注销时,您的进程将被杀死(挂起)。
两种解决方案:
1. / Nohup,它表示没有挂断,可以按如下所示执行。
nohup语法:
# nohup command-with-options &
2. /
(command-with-options &)