rsync错误代码综合列表

我正在编写一个脚本,用户的主目录每日快照。 首先,我使用下面的方法进行空运行

rsync -azvrn --out-format="%M %f" source/dir dest/dir 

然后执行实际的rsync操作(通过删除-n选项)。

我试图parsing干运行的输出。 具体来说,我有兴趣了解rsync错误的确切原因(如果发生的话)。 有谁知道的

  1. 最常见的rsync错误及其代码?
  2. 指向全面的rsync错误代码页的链接?

最重要的是,rsync(至less在CentOs 5上)不返回错误代码。 而是在内部显示错误,并返回0.像这样:

 sending incremental file list rsync: link_stat "/data/users/gary/testdi" failed: No such file or directory (2) sent 18 bytes received 12 bytes 60.00 bytes/sec total size is 0 speedup is 0.00 (DRY RUN) rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1039) [sender=3.0.6] 

有没有人不得不parsingrsync错误,并有关于如何存储rsync返回状态(S)的build议? 我相信,在传输多个文件时,可能会在每个文件基础上产生错误,并在最后一行代码中显示收集。

根据rsync“man”页面,这里是它可能返回的错误代码以及它们的含义。 如果你用bash写脚本,你可以看看$?

  0 Success 1 Syntax or usage error 2 Protocol incompatibility 3 Errors selecting input/output files, dirs 4 Requested action not supported: an attempt was made to manipulate 64-bit files on a platform that cannot support them; or an option was specified that is supported by the client and not by the server. 5 Error starting client-server protocol 6 Daemon unable to append to log-file 10 Error in socket I/O 11 Error in file I/O 12 Error in rsync protocol data stream 13 Errors with program diagnostics 14 Error in IPC code 20 Received SIGUSR1 or SIGINT 21 Some error returned by waitpid() 22 Error allocating core memory buffers 23 Partial transfer due to error 24 Partial transfer due to vanished source files 25 The --max-delete limit stopped deletions 30 Timeout in data send/receive 35 Timeout waiting for daemon connection 

我从来没有看到一个全面的“最常见的错误”名单,但我打赌错误代码1将在顶部。