我在ssh会话中运行了一个带有rsync的nohup命令,但是过了一会儿,它返回了这个错误:
rsync error: received SIGINT, SIGTERM, or SIGHUP (code 20) at rsync.c(549) [generator=3.0.9]
rsync error: received SIGINT, SIGTERM, or SIGHUP (code 20) at rsync.c(549) [receiver=3.0.9]我没有用我自己的方法来扼杀这个过程,我认为没有任何其他的过程会扼杀这个过程。此外,我还使用nohup运行它的前台。我使用nohup是因为由于任何原因ssh会话终止,rsync进程不会终止。
是什么导致终止?
操作系统是Debian。
发布于 2018-10-22 15:01:46
这是一个老问题,信息有限,但我认为所发生的事情不是rsync问题(因为rsync本身不会单终止)。
我遇到了一个类似的问题,结果是一个记忆问题。内核中的内存不足管理通过查看虚拟内存量除以运行的总时间来确定要杀死哪个进程。
Rsync可以消耗大量的内存,这取决于正在传输的文件的大小和数量,而且它的运行时值很低。这增加了内核调用select_bad_process()时的得分。
启动记录rsync内存使用情况的rsync后,使用简单的脚本检查内存使用情况:
while [ 1 ]; do
pidstat -r -G rsync >> stat.log
free >> stat.log
done还可以在rsync死掉的时间左右检查dmesg,如果有OOM错误,您将看到它们。
https://serverfault.com/questions/640973
复制相似问题