野宮です。 データのバックアップを採るのに rsync 2.6.3 を使用していました。 何気なく、rsync のバックアップ状況を見ていましたら、更新したファイルが無視 され、更新バックアップされない場合がある、ということに気付きました。 調べてみますと、更新前のファイルと更新後のファイルの md5sum の値は、ちゃん と異なっています。これは、バグではないでしょうか? 如何でしょうか? > rsync ユーザーの諸兄諸氏 因に、 OS : SUSE 9.3 ProJ で、rsync でのバックアップは、 # rsync -acuv --delete /home /bkup と実行しています。 今は、rsync-2.6.6.tar.gz を build して使っていますが....(_ _? --- 野宮 賢 mail-to: nomiyac360@mg.point.ne.jp 「eメールや携帯電話に縛られた社会は、自分自身と向き合ったり、 空想にふけったりする自由を奪う。」 -- M. Crichton --
K.Suzukiです
On Thu, 22 Sep 2005 18:35:18 +0900
野宮 賢 / NOMIYA Masaru
野宮です。
データのバックアップを採るのに rsync 2.6.3 を使用していました。 何気なく、rsync のバックアップ状況を見ていましたら、更新したファイルが無視 され、更新バックアップされない場合がある、ということに気付きました。 調べてみますと、更新前のファイルと更新後のファイルの md5sum の値は、ちゃん と異なっています。これは、バグではないでしょうか?
如何でしょうか? > rsync ユーザーの諸兄諸氏
因に、
OS : SUSE 9.3 ProJ
で、rsync でのバックアップは、
# rsync -acuv --delete /home /bkup
と実行しています。 今は、rsync-2.6.6.tar.gz を build して使っていますが....(_ _?
これって再現可能なのでしょうか? 自分は 9.3 では無く 9.2 の rsync (2.6.3pre1-2.4)を使用してますが今のところ 問題は出てません。 思い付くのは rsync を実行中に変更したファイルがたまたま同期処理を終了し 終わったディレクトリだったとか、あとは読み取り、実行権限が無いディレクトリ or ファイルだったとか考えられますけど...。
野宮です。
In the Message;
Subject : Re: [suse-linux-ja] rsync 2.6.3
Message-ID : <20050924012007.21cafe0d.knfeat@mbn.nifty.com>
Date & Time: Sat, 24 Sep 2005 01:20:07 +0900
[Suzukiさん] == "K.Suzuki"
K.Suzukiです
On Sat, 24 Sep 2005 17:01:21 +0900
野宮 賢 / NOMIYA Masaru
野宮です。
In the Message;
Subject : Re: [suse-linux-ja] rsync 2.6.3 Message-ID : <20050924012007.21cafe0d.knfeat@mbn.nifty.com> Date & Time: Sat, 24 Sep 2005 01:20:07 +0900
[Suzukiさん] == "K.Suzuki"
has written: Suzukiさん> これって再現可能なのでしょうか?
はい、可能でした。 rsync がバックアップを採っている時に無視されたファイルに就いて、ファイル・ サイズを変えて、再度 rsync を動かしました、が、またもや、無視されました。 で、仕方無く、手動でバックアップを採りました。 更新前のファイルと更新後のファイルのタイム・スタンプは、諸般の事情で、同一 に設定していますが。
これって、転送先ファイルを削除しても同じ現象が発生するのでしょうか?
尤も、ネットで調べますと、小生同様、「md5sum の値が変っているのにバックアッ プされないのは?」と書いておられる方がいました。
すいません。この件に関してググってみたのですけど見つけられませんでした。
Suzukiさん> 自分は 9.3 では無く 9.2 の rsync (2.6.3pre1-2.4)を使用してますが Suzukiさん> 今のところ問題は出てません。
そうですか.... 以前にも、rsync 2.6.3 でバックアップを採った折り、全てのファイルのタイム・ スタンプが、バックアップ作成時の時刻に書き換えられたことがあります...(_ _?
Suzukiさん> 思い付くのは rsync を実行中に変更したファイルがたまたま同期処理を終了し Suzukiさん> 終わったディレクトリだったとか、あとは読み取り、実行権限が無いディレク Suzukiさん> トリ orファイルだったとか考えられますけど...。
rsync 実行中は、何もしないようにしています。 読み取り、実行権限に就いても、問題無いと考えています。つまり、手動で、
# cp -p foo /bkup/home/nomiya/var/news/news1
とバックアップしましたが、問題無く出来ました。
うーむ。原因が何なのかちょっと思い付かないんですけど、verbose オプションを 指定してるので、同期されないファイルに対して何か出力されてないでしょうか? または、 # grep rsync /var/log/messages | more とかで何か rsync に関連したエラーログらしき物が無いかチェックしてみたり...
野宮です。
In the Message;
Subject : Re: [suse-linux-ja] Re: rsync 2.6.3
Message-ID : <20050924184627.6a9ebf80.knfeat@mbn.nifty.com>
Date & Time: Sat, 24 Sep 2005 18:46:27 +0900
[Suzukiさん] == "K.Suzuki"
M. Takeyamaです。
#ピンポイントで。(namazuの話題のみにレス)
On Sun, 25 Sep 2005 20:58:39 +0900
野宮 賢 / NOMIYA Masaru
野宮です。
[...]
実は、namazu でも同じ現象が発生しました。 タイム・スタンプは同じですが、ファイル・サイズが全然違うのに、その更新ファ イルを無視する形でインデックスが作成されてしまいました....
な、何だろう.... (_ _? namazuの場合は、検索用データベース(インデクサ)は、 ファイルがあったものだけが更新されると思います。 #実際にファイルの中身に変更があった・無かったに #関係無くファイルのタイムスタンプに変更があった #ものだけを更新しています。
つまり、ファイルのタイムスタンプだけをみてタイムスタンプ に変更があったものがファイルにも「変更があったとみなし」 として、そのデータの検索用データベース(インデクサ)を 更新しているようです。 #つまり、namazuの仕様だと思います。 検索用データベース(インデクサ)の更新は、 mknmz コマンドでおこなっているので、-V をつけて 手動で実行するとそのことが良くわかると思います。 #mknmzのほかのオプションは、 mknmz --help で #確認してください。 --- M. Takeyama __________________________________ For All Sports Fans! http://pr.mail.yahoo.co.jp/yells/
M. Takeyamaです。
#タイポです。
On Mon, 26 Sep 2005 19:28:26 +0900
"M. Takeyama(takezou)"
namazuの場合は、検索用データベース(インデクサ)は、 ファイルがあったものだけが更新されると思います。 ファイルが --- X ファイルの更新が --- ○
一番重要なところなので、フォロー。 --- M. Takeyama __________________________________ For All Sports Fans! http://pr.mail.yahoo.co.jp/yells/
野宮です。
In the Message;
Subject : Re: [suse-linux-ja] Re: rsync 2.6.3
Message-ID : <4337E54B316.91D6TAKEZOU040728@smtp.mail.yahoo.co.jp>
Date & Time: Mon, 26 Sep 2005 21:10:51 +0900
[MTさん] == "M. Takeyama(takezou)"
M. Takeyamaです。
#横道モード
On Mon, 26 Sep 2005 21:19:46 +0900
野宮 賢 / NOMIYA Masaru
野宮です。
In the Message;
Subject : Re: [suse-linux-ja] Re: rsync 2.6.3 Message-ID : <4337E54B316.91D6TAKEZOU040728@smtp.mail.yahoo.co.jp> Date & Time: Mon, 26 Sep 2005 21:10:51 +0900
[MTさん] == "M. Takeyama(takezou)"
has written: MTさん> > namazuの場合は、検索用データベース(インデクサ)は、 MTさん> > ファイルがあったものだけが更新されると思います。 MTさん> ファイルが --- X MTさん> ファイルの更新が --- ○
MTさん> 一番重要なところなので、フォロー。
どうも、です。m(_ _)m
確かに、namazu は、タイム・スタンプだけを見ているのですねぇ〜。 直感的に、namazuとrsyncとでは要求されていることが違うので いっしょに議論できないと思いました。
namazuで、ファイルの更新(タイムスタンプ)をみるところは 検索用データベース(インデクサ)作成・更新時のみのはずです。 検索対象の元ファイルをコピーしたりする必要はないので ファイルの整合性を取るなどのファイルの中身のCheckを それほど厳密にやる必要はない。 #正確な事を言うと、ファイルのサイズ、ファイルの種類(pdf,doc) #などはCheckはしていますけどね。 タイムスタンプが変更されているのを検知して、ファイルに 変更があったとみなしそのファイルのインデクサを再生成する だけで事たりるということでしょう。 #タイムスタンプが変更していないのに、中身が変わって #いるものは極めてイリーガルなケース。インデクサの更新 #対象から外れても別に良いぐらいのものじゃないでしょうか。 #namazuの場合だと、ファイル or ディレクリを指定して #強制的にインデクサの更新ができそうな気がしますけど... それにくらべて、rsyncは、ファイルのコピーが主目的で、 ネットワークごしにいかに効率良くやるかのプログラム ですから。 --- M. Takeyama __________________________________ For All Sports Fans! http://pr.mail.yahoo.co.jp/yells/
野宮です。
In the Message;
Subject : Re: [suse-linux-ja] Re: rsync 2.6.3
Message-ID : <4337CD4A15E.3F3ATAKEZOU040728@smtp.mail.yahoo.co.jp>
Date & Time: Mon, 26 Sep 2005 19:28:26 +0900
[Takeyamaさん] == "M. Takeyama(takezou)"
M. Takeyamaです。
#rsync使いじゃないですけど...
#(rcp使いということで予防線をはっておいて。)
On Thu, 22 Sep 2005 18:35:18 +0900
野宮 賢 / NOMIYA Masaru
野宮です。
[...]
# rsync -acuv --delete /home /bkup -a, --archive アーカイブモード(-rlptgoD オプションと同義) -c, --checksum 常にチェックサムを行う -u, --update アップデートのみ許可 (上書き禁止) -v バックアップ中にコピーしているファイル名を表示する --delete コピー元で削除されたファイルは、コピー先でも削除する。 -aオプションと同時に指定するとコピー元とコピー先を同期できる
-a のオプションを指定した時点で、ファイル変更(ファイルスタンプが変更) があっても, 追加変更あったファイルのみをコピーして同期をとるように 指定しているということになるのではないでしょうか。 --- M. Takeyama __________________________________ For All Sports Fans! http://pr.mail.yahoo.co.jp/yells/
M. Takeyamaです。
#タイポ。
On Mon, 26 Sep 2005 19:28:18 +0900
"M. Takeyama(takezou)"
-a のオプションを指定した時点で、ファイル変更(ファイルスタンプが変更) -a でなくて、 -u の間違いです。
--- M. Takeyama __________________________________ For All Sports Fans! http://pr.mail.yahoo.co.jp/yells/
野宮です。
In the Message;
Subject : Re: [suse-linux-ja] rsync 2.6.3
Message-ID : <4337CD4214A.3F38TAKEZOU040728@smtp.mail.yahoo.co.jp>
Date & Time: Mon, 26 Sep 2005 19:28:18 +0900
[MTさん] == "M. Takeyama(takezou)"
K.Suzukiです
On Mon, 26 Sep 2005 20:44:23 +0900
野宮 賢 / NOMIYA Masaru
野宮です。
In the Message;
Subject : Re: [suse-linux-ja] rsync 2.6.3 Message-ID : <4337CD4214A.3F38TAKEZOU040728@smtp.mail.yahoo.co.jp> Date & Time: Mon, 26 Sep 2005 19:28:18 +0900
[MTさん] == "M. Takeyama(takezou)"
has written: MTさん> -a のオプションを指定した時点で、ファイル変更(ファイルスタンプが変更) MTさん> があっても, 追加変更あったファイルのみをコピーして同期をとるように MTさん> 指定しているということになるのではないでしょうか。
ヒントになりました。m(_ _)m
-u を付けると、-c は効かなくあり、ファイルのタイム・スタンプのみに着目。 で、転送元のファイルのタイム・スタンプと転送先のファイルのタイム・スタンプ が同じ場合は、update しない、ということのようです。 つまり、man にある
-u, --update update only (don't overwrite newer files)
は、
-u, --update update only (overwrite older files only)
と読むべきようです。
えーと、その場合でも自分の環境では同期処理してます。 (同じタイムスタンプ & 同じサイズ & 転送元ファイル内容変更) 自分の環境 or やり方がおかしいのかな??? :-/ で、野宮さんが以前書かれていた
更新前のファイルと更新後のファイルのタイム・スタンプは、諸般の事情で、同一 に設定していますが。 この設定を自分は touch でタイムスタンプを同一にしてるのですが、 どのように設定されているのでしょうか?
#因みに、自分が使用しているファイルシステムは XFS です
野宮です。
In the Message;
Subject : Re: [suse-linux-ja] Re: rsync 2.6.3
Message-ID : <20050926233757.1415d2ef.knfeat@mbn.nifty.com>
Date & Time: Mon, 26 Sep 2005 23:37:57 +0900
[KSさん] == "K.Suzuki"
K.Suzukiです
On Tue, 27 Sep 2005 00:14:57 +0900
野宮 賢 / NOMIYA Masaru
野宮です。
KSさん> #因みに、自分が使用しているファイルシステムは XFS です
小生のは、ReiserFS です。
ひょっとしたらファイルシステムの違いでそうなるのかと思って聞いて見ました。 #でも、よく考えたらファイルシステムが違うだけでアプリの挙動が変わったらおかしいな... 一応、自分の環境でも ReiserFS 3.6 のファイルシステムを作成して同じテストを してみましたが結果は変わりませんでした。(同期処理されました) 何故、更新されない場合があるのだろうか??
M. Takeyamaです。
#まったく違う視点モード
On Tue, 27 Sep 2005 02:05:20 +0900
"K.Suzuki"
何故、更新されない場合があるのだろうか?? 本来、ファイルのコピーで確実性が求められている場面で、 rsyncのバグ or 使い方(オプション指定)というような 本質的な問題をちょっとだけ横においといて...
/home のデータを /bkupに確実にコピーすることが目的 なので、 cd /home; tar cfp - *| (cd /bkup; tar xfp -) という手は使えないのでしょうか? ローカルdisk上でのファイルコピーなんでデータ量は増えて も確実にバックアップが取れると思いますけど... #一時的な回避方法として、これではダメなのでしょうか? --- M. Takeyama __________________________________ For All Sports Fans! http://pr.mail.yahoo.co.jp/yells/
野宮です。
In the Message;
Subject : [suse-linux-ja] Re: rsync 2.6.3
Message-ID : <433939F537A.2A18TAKEZOU040728@smtp.mail.yahoo.co.jp>
Date & Time: Tue, 27 Sep 2005 21:24:21 +0900
[MTさん] == "M. Takeyama(takezou)"
野宮です。
In the Message;
Subject : Re: [suse-linux-ja] Re: rsync 2.6.3
Message-ID : <20050927020520.5b8113a3.knfeat@mbn.nifty.com>
Date & Time: Tue, 27 Sep 2005 02:05:20 +0900
[KSさん] == "K.Suzuki"
今井です。 日曜日 02 10月 2005 16:39、野宮 賢 / NOMIYA Masaru さんは書きました:
やはり、-acuv だと c より update が優先されるようです。 -acov だと問題無く update されます。 Suzukiさんは、
rsync -acuv ....
というオプションで実行されているのでしょうか?
-oオプションは-aオプション指定すると含まれるはず(man rsync)な ので、指定する必要は無いはずです。 私の場合、ネットワーク経由で使うので、もっぱら使うのは rsync -av -e ssh ..... ですね。 マシンに余力?のある場合(使ってる32bitマシンではそれだけの余裕 は無い様だけど)には rsync -avz -e ssh ..... ですね。 私の場合rsync動かそうとする場合には、rsync以外のプログラムから ターゲットに手を加える様なことは避けます。 rsyncを使用するのが主にネットワーク経由で異なるマシン間のため、 ネットワーク経由だとntp使って同期させていてもソースとターゲットの で時刻のずれ等が存在します。 ターゲットを変更してしまうと、場合によってはターゲットの方が常に新 しくなってしまって野宮さんが直面されている様な問題が生じやすいで すから。 -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 今井 優 mail: maimai@coral.ocn.ne.jp web: http://www10.ocn.ne.jp/~masimai/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
野宮です。
今井さん、どうも、です。m(_ _)m
In the Message;
Subject : Re: [suse-linux-ja] Re: rsync 2.6.3
Message-ID : <200510021704.01312.maimai@coral.ocn.ne.jp>
Date & Time: Sun, 2 Oct 2005 17:04:00 +0900
[今井さん] == Masaru Imai
今井です。 日曜日 02 10月 2005 17:28、野宮 賢 / NOMIYA Masaru さんは書きました:
今井さん> マシンに余力?のある場合(使ってる32bitマシンではそれだけの余裕 今井さん> は無い様だけど)には 今井さん> rsync -avz -e ssh ..... 今井さん> ですね。
-c はご不要なんでしょうか?
少しそれてしまいますが、一つ思い当たる事が....。 ファイルシステムの違いによる違いが影響してる可能性があります。 (なんか日本語が変だ....) XFSだと http://www.atmarkit.co.jp/flinux/rensai/fs07/fs07a.html の様な特徴?があり、もしかするとこの辺りのために影響が出てくる 可能性があります。 Direct I/Oの辺りとか怪しそうですが....。 ReiserFSは基本的に使ってない(K8N Neo2でやむを得ず使ってる程度) ので実証などはしていないので本当にそうかどうかまでは微妙ですが.....。 -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 今井 優 mail: maimai@coral.ocn.ne.jp web: http://www10.ocn.ne.jp/~masimai/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
K.Suzukiです。
On Sun, 02 Oct 2005 16:39:37 +0900
野宮 賢 / NOMIYA Masaru
野宮です。
In the Message;
Subject : Re: [suse-linux-ja] Re: rsync 2.6.3 Message-ID : <20050927020520.5b8113a3.knfeat@mbn.nifty.com> Date & Time: Tue, 27 Sep 2005 02:05:20 +0900
[KSさん] == "K.Suzuki"
has written: KSさん> 一応、自分の環境でも ReiserFS 3.6 のファイルシステムを作成して同じテストを KSさん> してみましたが結果は変わりませんでした。(同期処理されました)
KSさん> 何故、更新されない場合があるのだろうか??
どうも、です。m(_ _)m
やはり、-acuv だと c より update が優先されるようです。 -acov だと問題無く update されます。
-a は -o を含んでいると思うのですけれど...( -a = -rlptgoD ) # オプションの優先度に関して、man rsync とか Google で rsync のページを検索 # しているのですけど、その辺をはっきり書いたページが見つからない...
Suzukiさんは、
rsync -acuv ....
というオプションで実行されているのでしょうか?
はい。 # rsync -acuv --delete foo bar で実行しました。 しかし、自分の環境では問題の現象を再現する事ができませんでした。
野宮です。
In the Message;
Subject : Re: [suse-linux-ja] Re: rsync 2.6.3
Message-ID : <20051002174733.6587f2ec.knfeat@mbn.nifty.com>
Date & Time: Sun, 2 Oct 2005 17:47:33 +0900
[KSさん] == "K.Suzuki"
participants (4)
-
K.Suzuki
-
M. Takeyama(takezou)
-
Masaru Imai
-
野宮 賢 / NOMIYA Masaru