Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在几次成功尝试后,RSYNC数据的守护进程失败_C_Daemon_Rsync - Fatal编程技术网

在几次成功尝试后,RSYNC数据的守护进程失败

在几次成功尝试后,RSYNC数据的守护进程失败,c,daemon,rsync,C,Daemon,Rsync,我有一个用C编写的守护进程,它使用RSYNC将一个文件从本地复制到远程,并每5秒钟更新一次相同的文件。 一切正常,但当while循环执行10到15次RSYNC失败时 以下是代码段: 日志 Dec 18 00:07:08 localhost./mydaemon[26384]:while循环中的守护进程:10 Dec 18 00:07:09 localhost./mydaemon[26384]:RSYNC执行0 Dec 18 00:07:14 localhost./mydaemon[26384]:w

我有一个用C编写的守护进程,它使用RSYNC将一个文件从本地复制到远程,并每5秒钟更新一次相同的文件。
一切正常,但当while循环执行10到15次RSYNC失败时

以下是代码段: 日志 Dec 18 00:07:08 localhost./mydaemon[26384]:while循环中的守护进程:10
Dec 18 00:07:09 localhost./mydaemon[26384]:RSYNC执行0
Dec 18 00:07:14 localhost./mydaemon[26384]:while循环中的守护进程:11

Dec 18 00:07:15 localhost./mydaemon[26384]:RSYNC执行0失败时RSYNC和ssh说什么?很有可能您在这里遇到了反拒绝服务启发法——每五秒钟建立一次连接相当频繁……因为代码是用于守护程序STDIN、STDOUT、STDERR的,所以我只有日志。我可以试试sleep(10),看看是否有帮助。@DavidGiven:sleep(5)rsync在1分钟15秒后失败,但sleep(10)大约10分钟,rsync还没有失败。我想现在一切都好了。谢谢这听起来像是反拒绝服务。您应该尽量避免如此频繁地轮询服务器——您将在服务器日志中敲响各种各样的警钟。我会对任何比每十分钟一次更频繁的事情犹豫不决。@DavidGiven:谢谢。实际上,我一天吃两次。这只是测试的一部分,看看daemon是否按照我想要的方式工作。
    #define SHELLSCRIPT "\
    #! /bin/bash \n\
    rsync -azh /my_daemon_test -e 'ssh -p 2222' username@domainname.com:~ \n\
    "


   syslog(LOG_NOTICE, "Successfully started daemon\n");

    while(1) {
            syslog(LOG_NOTICE, "daemon in while loop : %d\n", flag);
            sys_ret = system(SHELLSCRIPT);
            syslog(LOG_NOTICE, "RSYNC Executed %d\n", sys_ret);
            sleep(5);
            flag++;
    }