- MacやWindows* でよくやるデフラグメントではなく、HDDパフォーマンスを改善するためのパラメータ設定です。
- hdparm コマンドを使用します。
- コマンド書式:
# hdparm <パラメータ設定値> <IDE-HDD装置名(/dev/hdaなど)>
- 入手
# apt-get install hdparm
- パフォーマンステスト
どのようなパラメータを与えるのが良いかを検討するため、まずは何もしない状態でのパフォーマンスを確認します(/dev/hdaの場合)。
# hdparm -t /dev/hda
結果は、例えばこのように表示されます:
/dev/hda:
Timing buffered disk reads: 64 MB in 18.09 seconds = 3.54 MB/sec
- 次に、現在使用しているIDE-HDDに対し、高速化の効果のあるパラメータを探します。
基本的には、次の4つを対象とすれば良いでしょう(括弧内は各パラメータのON/OFFを設定する時のコマンド引数):
- 32bit I/O オン ( -c )
- using_dma ( -d )
- multiple sector count ( -m )
- unmaskirq ( -u )
- これらを、単独で設定したり、組み合わせて設定したりして、パフォーマンスをチェックします。
パラメータをON にするときは、各々の引数に1(ただし、 -m オプションの場合は16)を与えます。例えば、「32bit I/O 」をONにする場合は
# hdparm -c1 /dev/hda
とします。パラメータを変更した後、次のコマンドでテストをします。
# hdparm -t /dev/hda
結果が出たら、どこかに記録しておき、後で比較に使用します。
テストしたら、次のパラメータでテストをやるため、先程設定したパラメータは OFF にします。OFFにする場合、先程引数に与えた "1" の代わりに "0" を与えて、同じようにコマンドを実行します。
# hdparm -c0 /dev/hda
...これを各オプションについて繰り返し、それが済んだら2つ以上のオプションの組合せで、また同じようにテストを繰り返します。
その結果、当時の私の環境(ThinkPad X24)では、
- Boot時に自動で設定するようにする
最適な設定が決まったら、これをOS起動時に自動的に設定させるようにします。
/etc/init.d/hdparm を作成した後、これに実行権限を設定( chmod で 755 に )し、更に
# update-rc.d hdparm defaults 20
を実行します。
- /etc/init.d/hdparm