rsync を使う場合、大量のファイルの同期を取ることが多い。
では、 rsync を実行している最中にネットワークが切れるなどした場合、途中まで転送されたファイルがどうなるのかを検証した。
2011/11/01 --temp-dir と --compare-dest についての追加検証を追記しました。
実行環境
まず、実行環境は以下の通り。
転送元マシン
OS:Ubuntu10(VMWare上の仮想マシン)
IP:192.168.119.144
転送先マシン
OS:CentOS6(VMWare上の仮想マシン)
転送対象ファイル
Java6のJavadoc(
http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u25-doc-download-355137.html)
サイズは 264MB ある
rsync実行時のコマンド
rsync -av --delete --progress -e ssh --bwlimit=128 --timeout=30 ./javadoc/
username@192.168.119.144:/home/
username/to_dir/lowspeed
※普通に実行すると高速過ぎるので --bwlimit で転送速度を低くし、なおかつタイムアウトを30秒に設定
ネットワークエラーの発生方法
ネットワークエラーは通常では起き得ないため以下の方法で人為的に発生させた。
転送元マシンにログインし、以下のコマンドを実行(root)
service network stop
こうすることにより転送元と転送先の間のネットワークがダウンしたことになる。
検証結果
新規ファイル転送の場合
rsync の出力は以下の通り。「
docs/api/index-files/index-4.html」の転送に失敗して終了している。
~$ rsync -av --delete --progress -e ssh --bwlimit=128 --timeout=30 ./javadoc/ username@192.168.119.144:/home/username/to_dir/lowspeed
username@192.168.119.144's password:
sending incremental file list
./
docs/
docs/index.html
39679 100% 53.99kB/s 0:00:00 (xfer#1, to-check=1022/1025)
docs/api/
docs/api/allclasses-frame.html
503784 100% 122.02kB/s 0:00:04 (xfer#2, to-check=1052/1063)
docs/api/allclasses-noframe.html
427924 100% 100.29kB/s 0:00:04 (xfer#3, to-check=1051/1063)
docs/api/constant-values.html
1267915 100% 118.30kB/s 0:00:10 (xfer#4, to-check=1050/1063)
docs/api/deprecated-list.html
167204 100% 117.90kB/s 0:00:01 (xfer#5, to-check=1049/1063)
docs/api/help-doc.html
10463 100% 27.10kB/s 0:00:00 (xfer#6, to-check=1048/1063)
docs/api/index.html
1399 100% 3.62kB/s 0:00:00 (xfer#7, to-check=1047/1063)
docs/api/overview-frame.html
28532 100% 44.30kB/s 0:00:00 (xfer#8, to-check=1046/1063)
docs/api/overview-summary.html
60507 100% 52.15kB/s 0:00:01 (xfer#9, to-check=1045/1063)
docs/api/overview-tree.html
1114950 100% 127.05kB/s 0:00:08 (xfer#10, to-check=1044/1063)
docs/api/package-list
4115 100% 7.99kB/s 0:00:00 (xfer#11, to-check=1043/1063)
docs/api/serialized-form.html
1499294 100% 120.73kB/s 0:00:12 (xfer#12, to-check=1042/1063)
docs/api/stylesheet.css
1391 100% 1.33MB/s 0:00:00 (xfer#13, to-check=1041/1063)
docs/api/index-files/
docs/api/index-files/index-1.html
749599 100% 126.32kB/s 0:00:05 (xfer#14, to-check=1035/1063)
docs/api/index-files/index-10.html
258969 100% 95.51kB/s 0:00:02 (xfer#15, to-check=1034/1063)
docs/api/index-files/index-11.html
84952 100% 73.22kB/s 0:00:01 (xfer#16, to-check=1033/1063)
docs/api/index-files/index-12.html
269850 100% 130.59kB/s 0:00:02 (xfer#17, to-check=1032/1063)
docs/api/index-files/index-13.html
462569 100% 127.97kB/s 0:00:03 (xfer#18, to-check=1031/1063)
docs/api/index-files/index-14.html
338993 100% 105.03kB/s 0:00:03 (xfer#19, to-check=1030/1063)
docs/api/index-files/index-15.html
186915 100% 120.41kB/s 0:00:01 (xfer#20, to-check=1029/1063)
docs/api/index-files/index-16.html
773522 100% 117.32kB/s 0:00:06 (xfer#21, to-check=1028/1063)
docs/api/index-files/index-17.html
25326 100% 97.37kB/s 0:00:00 (xfer#22, to-check=1027/1063)
docs/api/index-files/index-18.html
815983 100% 121.62kB/s 0:00:06 (xfer#23, to-check=1026/1063)
docs/api/index-files/index-19.html
1853449 100% 122.58kB/s 0:00:14 (xfer#24, to-check=1025/1063)
docs/api/index-files/index-2.html
361451 100% 103.73kB/s 0:00:03 (xfer#25, to-check=1024/1063)
docs/api/index-files/index-20.html
588362 100% 119.90kB/s 0:00:04 (xfer#26, to-check=1023/1063)
docs/api/index-files/index-21.html
345112 100% 99.04kB/s 0:00:03 (xfer#27, to-check=1022/1063)
docs/api/index-files/index-22.html
289076 100% 117.77kB/s 0:00:02 (xfer#28, to-check=1021/1063)
docs/api/index-files/index-23.html
309110 100% 109.21kB/s 0:00:02 (xfer#29, to-check=1020/1063)
docs/api/index-files/index-24.html
90439 100% 64.00kB/s 0:00:01 (xfer#30, to-check=1019/1063)
docs/api/index-files/index-25.html
22429 100% 58.25kB/s 0:00:00 (xfer#31, to-check=1018/1063)
docs/api/index-files/index-26.html
13692 100% 26.64kB/s 0:00:00 (xfer#32, to-check=1017/1063)
docs/api/index-files/index-27.html
147169 100% 88.06kB/s 0:00:01 (xfer#33, to-check=1016/1063)
docs/api/index-files/index-3.html
1135603 100% 119.21kB/s 0:00:09 (xfer#34, to-check=1015/1063)
docs/api/index-files/index-4.html
32768 6% 84.66kB/s 0:00:05
[sender] io timeout after 30 seconds -- exiting
rsync error: timeout in data send/receive (code 30) at io.c(140) [sender=3.0.8]
そして、転送先のディレクトリを見ると、
$ pwd
/home/username/to_dir/lowspeed/docs/api/index-files
$ ls | more
index-1.html
index-10.html
index-11.html
index-12.html
index-13.html
index-14.html
index-15.html
index-16.html
index-17.html
index-18.html
index-19.html
index-2.html
index-20.html
index-21.html
rsync のログでは
index-3.html までが 100% となっているが、実際には
index-21.html までしか転送されていない。
更新の場合
次に既にファイルが存在している状態で、rsync で更新した場合はどうなるかを見る。
エラー発生時付近のrsync のログは以下の通り。
docs/api/java/awt/Scrollbar.html
98791 100% 421.29kB/s 0:00:00 (xfer#191, to-check=1115/1334)
docs/api/java/awt/Shape.html
35590 100% 151.77kB/s 0:00:00 (xfer#192, to-check=1114/1334)
docs/api/java/awt/SplashScreen.html
24392 100% 100.09kB/s 0:00:00 (xfer#193, to-check=1113/1334)
docs/api/java/awt/Stroke.html
11295 100% 46.35kB/s 0:00:00 (xfer#194, to-check=1112/1334)
docs/api/java/awt/SystemColor.html
70817 100% 289.36kB/s 0:00:00 (xfer#195, to-check=1111/1334)
docs/api/java/awt/SystemTray.html
33103 100% 134.70kB/s 0:00:00 (xfer#196, to-check=1110/1334)
docs/api/java/awt/TextArea.AccessibleAWTTextArea.html
29641 100% 120.11kB/s 0:00:00 (xfer#197, to-check=1109/1334)
docs/api/java/awt/TextArea.html
78476 100% 316.68kB/s 0:00:00 (xfer#198, to-check=1108/1334)
docs/api/java/awt/TextComponent.AccessibleAWTTextComponent.html
47309 100% 184.80kB/s 0:00:00 (xfer#199, to-check=1107/1334)
docs/api/java/awt/TextComponent.html
76140 100% 296.24kB/s 0:00:00 (xfer#200, to-check=1106/1334)
docs/api/java/awt/TextField.AccessibleAWTTextField.html
29680 100% 115.02kB/s 0:00:00 (xfer#201, to-check=1105/1334)
docs/api/java/awt/TextField.html
79300 100% 306.09kB/s 0:00:00 (xfer#202, to-check=1104/1334)
docs/api/java/awt/TexturePaint.html
20813 100% 80.34kB/s 0:00:00 (xfer#203, to-check=1103/1334)
docs/api/java/awt/Toolkit.html
171298 100% 658.60kB/s 0:00:00 (xfer#204, to-check=1102/1334)
docs/api/java/awt/Transparency.html
13861 100% 53.08kB/s 0:00:00 (xfer#205, to-check=1101/1334)
docs/api/java/awt/TrayIcon.MessageType.html
17184 100% 65.81kB/s 0:00:00 (xfer#206, to-check=1100/1334)
docs/api/java/awt/TrayIcon.html
54942 100% 209.59kB/s 0:00:00 (xfer#207, to-check=1099/1334)
docs/api/java/awt/Window.AccessibleAWTWindow.html
29854 100% 113.88kB/s 0:00:00 (xfer#208, to-check=1098/1334)
[sender] io timeout after 30 seconds -- exiting
rsync error: timeout in data send/receive (code 30) at io.c(140) [sender=3.0.8]
そして転送先のファイルは以下の通り。
11月 1 03:34 2011 SystemTray.html
11月 1 03:34 2011 TextArea.AccessibleAWTTextArea.html
11月 1 03:34 2011 TextArea.html
11月 1 03:34 2011 TextComponent.AccessibleAWTTextComponent.html
11月 1 03:34 2011 TextComponent.html
11月 1 03:34 2011 TextField.AccessibleAWTTextField.html
11月 1 03:34 2011 TextField.html
11月 1 03:34 2011 TexturePaint.html
11月 1 03:34 2011 Toolkit.html
11月 1 03:34 2011 Transparency.html
11月 1 03:34 2011 TrayIcon.MessageType.html
11月 1 03:34 2011 TrayIcon.html
11月 1 03:34 2011 Window.AccessibleAWTWindow.html
11月 1 03:21 2011 Window.html
11月 1 03:21 2011 package-frame.html
11月 1 03:21 2011 package-summary.html
11月 1 03:21 2011 package-tree.html
11月 1 03:21 2011 package-use.html
更新においてはWindow.AccessibleAWTWindow.htmlの後で処理がエラーとなったため、それ以降のファイルに日付は古いまま(未更新)となっている。
削除の場合
削除の場合も本来は検証すべきだが、眠くて限界なのでおそらく同じ挙動であることが予想されるため省略。
まとめ
rsync を使ってファイル同期を実施した場合、以下のことが発生する可能性がゼロでない。
- 処理途中でネットワーク障害が発生した場合はそこまでの新規作成、更新、削除が反映された状態となる
- 同期対象のファイルが大量であったり、サイズが大きかったりする場合は、エラーが発生していない状態であっても、転送中にアクセスされた場合は全体として見た場合に中途半端となる可能性がある(例えばリンク元だけ更新されてリンク先は未更新でリンク切れとなる)
- コミット単位はファイルである(これは予想)
つまり、何かの運用で使用しようとするのであれば、上記が発生する可能性があることを考慮する必要がある。
はー、すっきりした。
追加検証
--temp-dir と
--compare-dest というオプションが存在するという情報を得たので再度検証。
それぞれの説明は
こちらを参照。
なお、転送先にはファイルがない状態、つまり全て追加となるモードで実施した。
まず、準備として転送先にテンポラリー用のディレクトリとして以下を作成
/home/
username/to_dir/tmp
--temp-dir を使用した場合
rsync実行時のログは以下の通り。
$ rsync -av --delete --progress -e ssh --bwlimit=128 --timeout=30 --temp-dir=/home/username/to_dir/tmp ./javadoc/ username@192.168.119.144:/home/username/to_dir/lowspeed
username@192.168.119.144's password:
sending incremental file list
./
docs/
docs/index.html
39679 100% 6.59MB/s 0:00:00 (xfer#1, to-check=1022/1025)
docs/api/
docs/api/allclasses-frame.html
503784 100% 125.76kB/s 0:00:03 (xfer#2, to-check=1052/1063)
docs/api/allclasses-noframe.html
427924 100% 103.57kB/s 0:00:04 (xfer#3, to-check=1051/1063)
docs/api/constant-values.html
1267915 100% 116.98kB/s 0:00:10 (xfer#4, to-check=1050/1063)
docs/api/deprecated-list.html
167204 100% 117.64kB/s 0:00:01 (xfer#5, to-check=1049/1063)
docs/api/help-doc.html
10463 100% 27.10kB/s 0:00:00 (xfer#6, to-check=1048/1063)
docs/api/index.html
1399 100% 3.62kB/s 0:00:00 (xfer#7, to-check=1047/1063)
docs/api/overview-frame.html
28532 100% 44.30kB/s 0:00:00 (xfer#8, to-check=1046/1063)
docs/api/overview-summary.html
60507 100% 58.62kB/s 0:00:01 (xfer#9, to-check=1045/1063)
docs/api/overview-tree.html
1114950 100% 127.12kB/s 0:00:08 (xfer#10, to-check=1044/1063)
docs/api/package-list
4115 100% 6.38kB/s 0:00:00 (xfer#11, to-check=1043/1063)
docs/api/serialized-form.html
1499294 100% 121.01kB/s 0:00:12 (xfer#12, to-check=1042/1063)
docs/api/stylesheet.css
1391 100% 1.37kB/s 0:00:00 (xfer#13, to-check=1041/1063)
docs/api/index-files/
docs/api/index-files/index-1.html
749599 100% 108.13kB/s 0:00:06 (xfer#14, to-check=1035/1063)
docs/api/index-files/index-10.html
258969 100% 117.85kB/s 0:00:02 (xfer#15, to-check=1034/1063)
docs/api/index-files/index-11.html
84952 100% 94.06kB/s 0:00:00 (xfer#16, to-check=1033/1063)
docs/api/index-files/index-12.html
269850 100% 90.84kB/s 0:00:02 (xfer#17, to-check=1032/1063)
docs/api/index-files/index-13.html
462569 100% 112.04kB/s 0:00:04 (xfer#18, to-check=1031/1063)
docs/api/index-files/index-14.html
338993 100% 125.16kB/s 0:00:02 (xfer#19, to-check=1030/1063)
docs/api/index-files/index-15.html
186915 100% 90.54kB/s 0:00:02 (xfer#20, to-check=1029/1063)
docs/api/index-files/index-16.html
773522 100% 109.00kB/s 0:00:06 (xfer#21, to-check=1028/1063)
docs/api/index-files/index-17.html
25326 100% 49.17kB/s 0:00:00 (xfer#22, to-check=1027/1063)
docs/api/index-files/index-18.html
815983 100% 117.36kB/s 0:00:06 (xfer#23, to-check=1026/1063)
docs/api/index-files/index-19.html
589824 31% 127.05kB/s 0:00:09
[sender] io timeout after 30 seconds -- exiting
rsync error: timeout in data send/receive (code 30) at io.c(140) [sender=3.0.8]
転送先のディレクトリを見ると以下のようになっている。
$ pwd
/home/username/to_dir/lowspeed/docs/api/index-files
$ ls | more
index-1.html
index-10.html
index-11.html
index-12.html
index-13.html
index-14.html
index-15.html
と、結果はオプションをつける前と変わらなかった。
ただし、実行中にテンポラリーディレクトリの中身を見たところ以下のように表示された。
$ pwd
/home/username/to_dir/tmp
$ ls -a | more
.
..
.serialized-form.html.ly3MAT
$ ls -a | more
.
..
.index-1.html.qXT1Ll
$ ls -a | more
.
..
.index-10.html.ZddjTQ
転送対象のファイルのテンポラリーが作成されていることがわかった。
だが、一度に作成されるテンポラリーファイルは上記の通り1つのみであり、
やはり
ファイル単位でのテンポラリー作成→本来のファイルに置き換えとなっているようだ。
--compare-dest を使用した場合
rsync実行時のログは以下の通り。
$ rsync -avI --delete --progress -e ssh --bwlimit=128 --timeout=30 --compare-dest=/home/username/to_dir/tmp ./javadoc/ username@192.168.119.144:/home/username/to_dir/lowspeed
username@192.168.119.144's password:
sending incremental file list
./
docs/
docs/index.html
39679 100% 6.59MB/s 0:00:00 (xfer#1, to-check=1022/1025)
docs/api/
docs/api/allclasses-frame.html
503784 100% 125.18kB/s 0:00:03 (xfer#2, to-check=1052/1063)
docs/api/allclasses-noframe.html
427924 100% 103.39kB/s 0:00:04 (xfer#3, to-check=1051/1063)
docs/api/constant-values.html
1267915 100% 116.80kB/s 0:00:10 (xfer#4, to-check=1050/1063)
docs/api/deprecated-list.html
167204 100% 117.73kB/s 0:00:01 (xfer#5, to-check=1049/1063)
docs/api/help-doc.html
10463 100% 27.03kB/s 0:00:00 (xfer#6, to-check=1048/1063)
docs/api/index.html
1399 100% 3.61kB/s 0:00:00 (xfer#7, to-check=1047/1063)
docs/api/overview-frame.html
28532 100% 44.16kB/s 0:00:00 (xfer#8, to-check=1046/1063)
docs/api/overview-summary.html
60507 100% 58.39kB/s 0:00:01 (xfer#9, to-check=1045/1063)
docs/api/overview-tree.html
1114950 100% 126.99kB/s 0:00:08 (xfer#10, to-check=1044/1063)
docs/api/package-list
4115 100% 6.38kB/s 0:00:00 (xfer#11, to-check=1043/1063)
docs/api/serialized-form.html
1499294 100% 120.94kB/s 0:00:12 (xfer#12, to-check=1042/1063)
docs/api/stylesheet.css
1391 100% 1.37kB/s 0:00:00 (xfer#13, to-check=1041/1063)
docs/api/index-files/
docs/api/index-files/index-1.html
749599 100% 107.95kB/s 0:00:06 (xfer#14, to-check=1035/1063)
docs/api/index-files/index-10.html
258969 100% 117.85kB/s 0:00:02 (xfer#15, to-check=1034/1063)
docs/api/index-files/index-11.html
84952 100% 94.06kB/s 0:00:00 (xfer#16, to-check=1033/1063)
docs/api/index-files/index-12.html
269850 100% 90.75kB/s 0:00:02 (xfer#17, to-check=1032/1063)
docs/api/index-files/index-13.html
462569 100% 111.90kB/s 0:00:04 (xfer#18, to-check=1031/1063)
docs/api/index-files/index-14.html
338993 100% 125.02kB/s 0:00:02 (xfer#19, to-check=1030/1063)
docs/api/index-files/index-15.html
186915 100% 90.54kB/s 0:00:02 (xfer#20, to-check=1029/1063)
docs/api/index-files/index-16.html
773522 100% 108.94kB/s 0:00:06 (xfer#21, to-check=1028/1063)
docs/api/index-files/index-17.html
25326 100% 48.88kB/s 0:00:00 (xfer#22, to-check=1027/1063)
docs/api/index-files/index-18.html
815983 100% 117.10kB/s 0:00:06 (xfer#23, to-check=1026/1063)
docs/api/index-files/index-19.html
1853449 100% 120.97kB/s 0:00:14 (xfer#24, to-check=1025/1063)
docs/api/index-files/index-2.html
361451 100% 103.79kB/s 0:00:03 (xfer#25, to-check=1024/1063)
docs/api/index-files/index-20.html
98304 16% 95.33kB/s 0:00:05
[sender] io timeout after 30 seconds -- exiting
rsync error: timeout in data send/receive (code 30) at io.c(140) [sender=3.0.8]
転送先のディレクトリを見ると以下のようになっている。
$ pwd
/home/username/to_dir/lowspeed/docs/api/index-files
$ ls | more
index-1.html
index-10.html
index-11.html
index-12.html
index-13.html
index-14.html
index-15.html
index-16.html
index-17.html
index-18.html
と、結果はオプションをつける前と変わらなかった。
また、
実行中にテンポラリーディレクトリの中身を見たが何も存在していなかった。
なお、テンポラリーではなく転送先ディレクトリの中身を監視したところ、
転送先ディレクトリの中にテンポラリーファイルが作成されていた。
$ pwd
/home/username/to_dir/lowspeed/docs/api/index-files
$ ls -a | more
.
..
$ ls -a | more
.
..
.index-1.html.EMGxLc
$ ls -a | more
.
..
.index-10.html.rJKakp
index-1.html
$ ls -a | more
.
..
.index-12.html.x5E9O1
index-1.html
index-10.html
index-11.html
ということでこのオプションを使っても
動きは何も変わらなかった。
--temp-dir と --compare-dest の両方を使用した場合
rsync実行時のログは以下の通り。
$ rsync -avI --delete --progress -e ssh --bwlimit=128 --timeout=30 --temp-dir=/home/username/to_dir/tmp --compare-dest=/home/username/to_dir/tmp ./javadoc/ username@192.168.119.144:/home/username/to_dir/lowspeed
username@192.168.119.144's password:
sending incremental file list
./
docs/
docs/index.html
39679 100% 6.59MB/s 0:00:00 (xfer#1, to-check=1022/1025)
docs/api/
docs/api/allclasses-frame.html
503784 100% 125.54kB/s 0:00:03 (xfer#2, to-check=1052/1063)
docs/api/allclasses-noframe.html
427924 100% 103.41kB/s 0:00:04 (xfer#3, to-check=1051/1063)
docs/api/constant-values.html
1267915 100% 116.77kB/s 0:00:10 (xfer#4, to-check=1050/1063)
docs/api/deprecated-list.html
167204 100% 117.73kB/s 0:00:01 (xfer#5, to-check=1049/1063)
docs/api/help-doc.html
10463 100% 26.89kB/s 0:00:00 (xfer#6, to-check=1048/1063)
docs/api/index.html
1399 100% 3.60kB/s 0:00:00 (xfer#7, to-check=1047/1063)
docs/api/overview-frame.html
28532 100% 44.09kB/s 0:00:00 (xfer#8, to-check=1046/1063)
docs/api/overview-summary.html
60507 100% 58.45kB/s 0:00:01 (xfer#9, to-check=1045/1063)
docs/api/overview-tree.html
1114950 100% 127.01kB/s 0:00:08 (xfer#10, to-check=1044/1063)
docs/api/package-list
4115 100% 6.39kB/s 0:00:00 (xfer#11, to-check=1043/1063)
docs/api/serialized-form.html
1499294 100% 121.04kB/s 0:00:12 (xfer#12, to-check=1042/1063)
docs/api/stylesheet.css
1391 100% 1.37kB/s 0:00:00 (xfer#13, to-check=1041/1063)
docs/api/index-files/
docs/api/index-files/index-1.html
749599 100% 108.19kB/s 0:00:06 (xfer#14, to-check=1035/1063)
docs/api/index-files/index-10.html
258969 100% 118.01kB/s 0:00:02 (xfer#15, to-check=1034/1063)
docs/api/index-files/index-11.html
84952 100% 94.17kB/s 0:00:00 (xfer#16, to-check=1033/1063)
docs/api/index-files/index-12.html
269850 100% 90.59kB/s 0:00:02 (xfer#17, to-check=1032/1063)
docs/api/index-files/index-13.html
462569 100% 112.04kB/s 0:00:04 (xfer#18, to-check=1031/1063)
docs/api/index-files/index-14.html
338993 100% 125.11kB/s 0:00:02 (xfer#19, to-check=1030/1063)
docs/api/index-files/index-15.html
186915 100% 90.63kB/s 0:00:02 (xfer#20, to-check=1029/1063)
docs/api/index-files/index-16.html
773522 100% 109.05kB/s 0:00:06 (xfer#21, to-check=1028/1063)
docs/api/index-files/index-17.html
25326 100% 49.17kB/s 0:00:00 (xfer#22, to-check=1027/1063)
docs/api/index-files/index-18.html
815983 100% 117.48kB/s 0:00:06 (xfer#23, to-check=1026/1063)
docs/api/index-files/index-19.html
720896 38% 126.92kB/s 0:00:08
[sender] io timeout after 30 seconds -- exiting
rsync error: timeout in data send/receive (code 31) at io.c(140) [sender=3.0.8]
転送先のディレクトリを見ると以下のようになっている。
$ pwd
/home/username/to_dir/lowspeed/docs/api/index-files
$ ls | more
index-1.html
index-10.html
index-11.html
index-12.html
index-13.html
index-14.html
index-15.html
と、結果はこれまでとと変わらなかった。
また、実行中のテンポラリーディレクトリの中身については --temp-dir 指定時と同様であった。
ということで --temp-dir と --comp-dest オプションを使っても動きは何も変わらなかった。
ただ、なんとなく指定方法が間違っている、オプションが不足しているということがありそうな気がしてならない。
今回参考にさせていただいたサイト
xargsで全ファイルを touch する際に使い方を参考にさせていただいた
http://x68000.q-e-d.net/~68user/unix/pickup?xargs
CentOSでコマンドラインでネットワーク設定を変更したり起動停止したりする方法
http://d.hatena.ne.jp/bojovs/20081020/1224429418
rsync でのファイル操作についての情報
http://blog.livedoor.jp/sasata299/archives/51293802.html
--temp-dir と --comp-dest オプションについての説明
http://www.infoscience.co.jp/technical/rsync/rsync.html