柘植です。
ちょっとだけ進展がありました。
On Wed, 18 Feb 2004 20:47:14 +0900
[knoppix:2974] Re: リマスタ時の奇怪現象
Tsuge Akihide <buxus@xxxxxxxxxxxxxxxxx> wrote:
> 私にあと思いつくのは、コピー先の fs type や block sizeを変えてみたら
> どうなるだろう、ということくらい。
コピー先パーティションのブロックサイズも関係あるようです。
気がついたきっかけは、ハードリンクがひとつも存在しないcloopファイル内の
/etcディレクトリをハードディスクにコピーしてみたらどうなるんだろう、とい
う疑問でした。
で、その結果サイズが増加したのです。
要点だけ記しますと以下のようになります。
+ 実験に使ったのはKNOPPIX_V3.3-2004-02-16-EN
+ このCD内のcloopファイルKNOPPIXを/mnt/cloopにループバックマウント
+ /mnt/cloop/etc以下のファイルすべてを`cp -a'で
ブロックサイズ 4096 のext3パーティションにコピー
[結果]
15153 ---> 22024
増分 6871(kilobyte) 45.3% up
ということはつまり、ハードリンク以外の原因がありそうだというわけで
調べてみたら、
--- etc_cloop
+++ etc_HD
-drwxr-xr-x 2 root root 2048 2004-01-27 00:05 1.2
+drwxr-xr-x 2 root root 4096 2004-01-27 00:05 1.2
-drwxr-xr-x 2 root root 2048 2004-01-05 11:19 100dpi
+drwxr-xr-x 2 root root 4096 2004-01-05 11:19 100dpi
...
こんな違いがありました。
ディレクトリ自体のサイズが違うようです。[*1]
[linux-users:99771] Re:lsコマンドの表示について(ディレクトリのサイズ)
http://search.luky.org/linux-users.9/msg09161.html
によると、ディレクトリ自体のサイズはファイルシステムのブロックサイズ
と同じになるものらしいので、コピー先のパーティションをブロックサイズ
2048 で作りなおして実験してみました。(mke2fs -b 2048)
その結果だけを書いておきます。
[ext2, ブロックサイズ 2048]
1847310 ---> 1952938
増分 105628(kilobyte) 5.7% up
[ext2, ブロックサイズ 4096]
1847310 ---> 2125424
増分 278114(kilobyte) 15% up
ブロックサイズを同じにしてext2とext3で比較しても顕著な差は見られません
でした。
ということで、田村さんの[knoppix:2958] で
> # du -s /KNOPPIX -> 1833799
> # du -s /mnt/hdb1/32orig -> 1869462
という結果が出たときの `tune2fs -l /dev/hdb1' の出力が見てみたい
のですが、急ぎませんので、よろしければ教えていただけませんでしょうか。
[*1]
cloopファイル内のディレクトリのサイズがすべて 2048 ということでは
ありません。一例ですが、なかにはこんなサイズのディレクトリもあります。
drwxr-xr-x 2 root root 22528 2004-02-16 04:21 etc/alternatives
drwxr-xr-x 2 root root 6144 2004-02-04 06:49
etc/X11/app-defaults
drwxr-xr-x 2 root root 12288 2004-02-14 03:43 etc/brltty
drwxr-xr-x 2 root root 12288 2004-02-06 10:02 etc/texmf/dvips
--
Tsuge Akihide
|