Linux
Tips |
|
ext2/3のフラグメンテーション状態を調べるには
北浦訓行
2005/7/14
|
Disk Allocation Viewer(DAV:http://dav.sourceforge.jp/)を使うと、ext2/3ファイルシステムのフラグメンテーション状態を調べることができる。ここでは、DAVをFedora Core 4(FC4)にインストールする手順を紹介する。
DAVをインストールするには、FC4のカーネルソースが必要になる。そこで、まずFC4のカーネルソース(例ではkernel-2.6.12-1.1390_FC4.src.rpm。使用しているカーネルと同じバージョン)をダウンロードして、インストールする。
# rpm -ihv kernel-2.6.12-1.1390_FC4.src.rpm |
そして、FC4のソースを作成して、そのディレクトリに移動する。
# rpmbuild -bp --target i686 /usr/src/redhat/SPECS/kernel-2.6.spec
# cd /usr/src/redhat/BUILD/kernel-2.6.12/linux-2.6.12 |
Makefileを編集して、EXTRAVERSIONをカーネルの番号に合わせる。
EXTRAVERSION = -prep |
↓ |
EXTRAVERSION = -1.1390 |
次に、モジュール構築の準備を行う。
# make prepare-all
# exit |
以上でカーネルソースの準備は終了だ。続いて、DAVのインストールを行う。rootからログアウトして、DAVのtarボール(原稿執筆時点での最新版はdavl-1.2.0.tar.bz2。davlはDisk Allocation Viewer for Linuxのこと)をダウンロードしたディレクトリに移動し、tarボールを展開する。
$ tar jxf davl-1.2.0.tar.bz2 |
展開したディレクトリ(davl-1.2.0)に移動して、path_listというファイルにあるKERN_DIRを先ほどインストールしたカーネルソースのディレクトリに変更する。
KERN_DIR = /lib/modules/$(shell uname -r)/build |
↓ |
KERN_DIR = /usr/src/redhat/BUILD/kernel-2.6.11/linux-2.6.11 |
path_listの編集が終わったら、DAVのモジュールを作成する。
makeが終了したら、rootになってインストールする。
$ su
Password:
# make WITH_DRV=1 install |
ここまでの作業が終了したら、作成したモジュール(davl_liveinfo)をロードする。davl_liveinfoは、マウント中のフラグメンテーション状況をリアルタイムで取得するためのカーネルモジュールである。リアルタイムで情報を取得する必要がないなら、davl_liveinfoをロードする必要はない。ちなみに、デュアルCPU環境ではdavl_liveinfoを実行できなかった。
# /sbin/modprobe davl_liveinfo |
以上でDAVのインストール作業は終了だ。
DAVには、GUIのgdavlコマンドとCUIのcdavlコマンドがある。ターミナルエミュレータを起動して、
などどするとDAVのウィンドウが表示される。[exec]ボタンをクリックすると、フラグメンテーションの調査が始まる。
|
Disk Allocation Viewer(DAV)のGUI画面 |
CUIの場合、以下のように実行するとテキストで情報が表示される。画面は一気に最下行まで表示されるので、moreなどにパイプするかテキストファイルにリダイレクトするといいだろう。
# cdavl /dev/hda1
------ cdavl result start ------
fstype ext3
mount mount(use davl_liveinfo)
f-per 0.04%
blocks 104391
sblocks 3302
fblocks 32239
frags 12
sfrags 3
cfiles 62
ffiles 12
depth 2
0 SSSssIIIIIIIiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
iiiiiiiiiiii
64 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
iiiiiiiiiiii
128 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
iiiiiiiiiiii
192 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
iiiiiiiiiiii
256 xoooooooooooo.......................................
............
320 ....................................................
............
384 ....................................................
............
448 ....................................................
............
512 ....................................................
............
576 ....................................................
............
(省略) |
Linux Squareフォーラム Linux Tipsカテゴリ別インデックス |
Linux & OSS 記事ランキング
本日
月間