僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
dd(1)で、からっぽの100MBのファイルを作った。
これをgzip、bz2、7zそれぞれデフォルトの圧縮率と
時間を測ってみる。
環境はPowerPC(466MHz)のDebian Etch + Kernel2.6.8。
$ time gzip -c zero.img > zero.gz real 0m6.754s user 0m6.484s sys 0m0.252s
$ time bzip2 -c zero.img > zero.bz2 real 0m24.866s user 0m24.541s sys 0m0.318s
$ time 7z a zero.img.7z zero.img 7-Zip 4.43 beta Copyright (c) 1999-2006 Igor Pavlov \ 2006-09-15 p7zip Version 4.43 (locale=C,Utf16=off,HugeFiles=on,1 CPU) Scanning Creating archive zero.img.7z Compressing zero.img Everything is Ok real 0m52.360s user 0m50.906s sys 0m0.828s
で、サイズは。
$ ls -l zero.img* | sort -r -rw-r--r-- 1 user group 104857600 Dec 26 01:18 zero.img -rw-r--r-- 1 user group 101800 Dec 26 01:20 zero.img.gz -rw-r--r-- 1 user group 14977 Dec 26 01:21 zero.img.7z -rw-r--r-- 1 user group 113 Dec 26 01:19 zero.img.bz2
/dev/urandomに吐かせたファイルも試したが、いずれも元ファイルより小さくは ならなかった。
noteでNTFSの読み書きを試す。 kernel2.6.19.1に fuse-2.6.1とntfs-3g-0.20061218-BETAをmake install。
FUSEのソースツリーには、linuxのカーネルソースとは別にfuseのカーネルモジュールがあるらしい。
"CONFIG_FUSE_FS=m"していると、モジュールは(明示しなければ)インストールされないようだ。
そのためかどうか(それらしい警告が出た)、それではntfs-3gはうまく動作しなかった。
カーネルモジュールからfuseを外して再構築し、FUSEも入れなおす。と、うまくいった。
NTFS直下にmkdir し、/dev/urandomから100MBのファイルを作ったりした。少し負荷が高い
ように思えた。
WinXPを再起動したが、特に変化もなし。
こないだ失敗したInspironも同じようにやり直すとうまくいった。 マウントオプション(-o hoge)に "utf-8"を与えると、 日本語のファイルが(LANG=ja_JP.eucJPな端末で)表示されるようになった。
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。