vine-users ML アーカイブ



[vine-users:077975] cp -a で時刻 が保存されない (NFS)

  • From: Nobuyuki Tsuchimura <tutimura@xxxxxxxxxxxxxx>
  • Subject: [vine-users:077975] cp -a で時刻 が保存されない (NFS)
  • Date: Fri, 11 Jan 2008 14:34:59 +0900
  土村です。

  解決したのですが、情報共有ということで、
報告しておきます。

  Vine 4.1  にしてから "cp -a hoge fuga" としても、
fuga が NFS 上のファイルだと、
タイムスタンプが hoge からコピーされずに、
現在時刻になってしまいます。

  どうやら kernel 2.6.16 あたりのバグのようです。
http://www.mail-archive.com/bug-coreutils@xxxxxxx/msg11414.html
http://bugs.gentoo.org/show_bug.cgi?id=132673

  対処療法ですが、cp コマンドだけは、以下のもので直りました。
http://meyering.net/cu/coreutils-6.9.91.24-424fe.tar.gz
(lib/utimens.c の先頭に
"#define HAVE_BUGGY_NFS_TIME_STAMPS 1" を書き加えて)

  BTS に kernel のパッチを要望してみようと思ってます。
(まだ動作確認できてないので、できてから。)
以下、不具合の確認方法です。

% cd /tmp/  ←ローカルな FS(正常)
% cp -a ~/hoge fuga
% ls -l ~/hoge fuga
-rw-r--r-- 1 me  me  21429  1月11日 11:45 /home/me/hoge
-rw-r--r-- 1 me  me  21429  1月11日 11:45 fuga

% cd   ←home は NFS 上にある
% cp -a ~/hoge fuga
% ls -l ~/hoge fuga
-rw-r--r-- 1 me  me  21429  1月11日 11:45 /home/me/hoge
-rw-r--r-- 1 me  me  21429  1月11日 12:06 fuga  ←日付が変

% touch -r ~/hoge fuga  ← touch するとさすがに大丈夫
% ls -l ~/hoge fuga
-rw-r--r-- 1 me  me  21429  1月11日 11:45 /home/me/hogekno
-rw-r--r-- 1 me  me  21429  1月11日 11:45 fuga
-----
土村 展之     Nobuyuki Tsuchimura