fision の試用2006年09月20日 11時48分00秒

いくつか、バグを修正し fision-20060919.tar.bz2 を公開。まだ、修正したい部分も残っている。今までは、実験用のファイルを作ってのプログラム自体のテストだけだった。今回は使い方次第では、期待通りの動作をさせることも出来るので、試用してみた。動作は安定してきたと思っているが開発版であることは変わらず、他の人の期待した通りの動作をするかは保証できない。

まずは、ディスクの容量が大きく、元々繋がっていた機械の CPU は遅いので、速い機械に繋ぎ直した。メモリは少ないのでスワップは覚悟している。


FreeBSD 6.1-RELEASE #13: Fri Aug 18 19:37:56 EST 2006
...
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: AMD Athlon(tm) 64 Processor 2800+ (1799.49-MHz 686-class CPU)
  Origin = "AuthenticAMD"  Id = 0xf4a  Stepping = 10
  Features=0x78bfbff
  AMD Features=0xe0500800
real memory  = 268369920 (255 MB)
avail memory = 253120512 (241 MB)
...
ad10: 238475MB  at ata5-master UDMA100

ディスクの容量が約 250GB で、以前に dump と restore をやったときに、利用可能なメモリを拡張する必要があった。今回も同じ事になるのは容易に予想できるので、/boot/loader.conf に以下のように設定する。


kern.maxdsiz="2048m"

そして、ディスクへのアクセスを軽減するために、noatime を有効にして mount する。


# mount -onoatime /dev/ad10s1c /jail
# df -i /jail
Filesystem   1K-blocks      Used    Avail Capacity iused    ifree %iused  Mounted on
/dev/ad10s1c 236511738 234907068 -5490682   102%  889785 29680709    3%   /jail

まあ、こんな感じで、ディスクはいっぱいだ。pdumpfs でバックアップを繰り返していた。時折り、ディレクトリを移動したり、ファイルを移動したりしたので、余計な複製がある。それを取り除こうと思って、プログラムを書いた。


# fision -e -v -v -v -v /jail
...
process domain(101, 18022) 1 files 111933/111936 domains
free domain(101, 18022)
process domain(101, 1026458178) 1 files 111934/111936 domains
free domain(101, 1026458178)
process domain(101, 995335659) 1 files 111935/111936 domains
free domain(101, 995335659)
2nd stage completed: combined same files
3rd stage completed: restored timestamps
50350 files
47601 dirs
38679 linked
8273.085u 852.376s 28:06:33.77 9.0%     16+-1862k 4594526+638io 2845078pf+0w

統計を取るようにしたが、ファイル、ディレクトリ共に数が明らかにおかしい。int が溢れてしまったのだろうか。また、長時間かかるので、進行状況が全然判らないのは不便だ。結構多めにデバッグの情報を出力した。後、数時間で終わりそうなのか、一日以上掛かりそうなのかで、心構えが変わる。結果は御覧の通り、丸一日かかっている。

そして、これが結果だ。


# df -i /jail
Filesystem   1K-blocks      Used    Avail Capacity iused    ifree %iused  Mounted on
/dev/ad10s1c 236511738 206339330 23077056    90%  753188 29817306    2%   /jail

約一割程のファイルが削除され、ハードリンクに変えられた。大体、予想していたぐらいの容量が空けられた。

今回、メモリの利用量は 1.5 GB まで上がった。もし、大型のパーティションに対して実行する場合は参考にして頂きたい。また、今回の試用で、大量のスワップを利用した時の改善点が見えた。

前回次回

コメント

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※なお、送られたコメントはブログの管理者が確認するまで公開されません。

名前:
メールアドレス:
URL:
コメント:

トラックバック

このエントリのトラックバックURL: http://uyota.asablo.jp/blog/2006/09/20/531120/tb

※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。