2009年5月21日

[samba-jp:20690] Re:ファイル更新時刻の精度

HATです。

>Linux (Fedora 10) 上で samba を動かし、ファイルサーバとして使っています。
>
>Windows 上で更新されたファイルだけをコピーしようと、
>MicroSoft の SyncToys その他フリーのバックアップツール、
>ファイラー等を試してみたのですが、Windows 上でファイルを
>更新していないにも関わらず Windows 上のファイルが新しいと

>判断されて毎回ファイルのコピーが行われます。
>
>Windows / Linux の両者のファイルのタイムスタンプを比較してみると、
>Linux 上でミリ秒未満が切り捨てられているため、
>何度コピーしても Windows 上の方が新しいと判断
>されていると思うのですが、これは samba の仕様でしょうか?
>それとも OS の制限でしょうか?

sambaの実装がどうなっているのか良く知らないのですが、
ファイルシステムによってタイムスタンプの分解能が違いますね。
Wikipediaあたりで調べると、

FAT 2.000000000 2s
ext3 1.000000000 1s
NTFS 0.000000100 100ns
XFS 0.000000001 1ns
ext4 0.000000001 1ns

>Linux 上
>> ls --full-time *
>> -rwxr--r-- 1 emo emo 5120 2009-05-20 12:26:33.272621000 +0900 001*
>> -rwxr--r-- 1 emo emo 5120 2009-05-20 12:26:33.350625000 +0900 002*
>> -rwxr--r-- 1 emo emo 5120 2009-05-20 12:26:33.428628000 +0900 003*

しかし、この結果だと、
XFS 0.000001000 1us
ということになる。sambaの制限?

>ミリ秒未満の更新時刻を保存する方法があれば教えてください。
>また、何か他に更新されたファイルだけコピーを行う
>方法がありましたらアドバイスをお願いします。

RealSyncというバックアップツールを使ってますが、
「NTFS-FAT間の誤差対応」
というオプションがあって、これを有効にしておくと2秒以内のずれは
更新されません。
http://www.takenet.or.jp/~ryuuji/realsync/

>OS: Fedora 10
>Kerenel : 2.6.27.21-170.2.56.fc10.x86_64
>samba : samba-3.2.11-0.30.fc10.x86_64
>ファイルシステム : XFS

Fedora11でデフォルトになるext4だと、タイムスタンプの分解能は
1nsなので、NTFSよりも細かいです。

Fedora 10でもext4は使えるのですが、実際に問題なく運用できるか
どうかは知りません。

--
HAT


投稿者 xml-rpc : 2009年5月21日 12:30
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/85300
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。