株式会社ラクス  ITエンジニア総合支援サイト スタックアスタリスク フルマネージド専用サーバー エクスユニット
ITエンジニアとして 知る 学ぶ
 
Java
.NET
PHP
プログラミング一般
DataBase
システム/サーバ構築
システム/サーバ運用
技術系一般知識
 
 
>IT技術情報>システム/サーバ運用>Linux向けハードディスク監視/設定アプリケーションの紹介

Linux向けハードディスク監視/設定アプリケーションの紹介

 
Linuxにはハードディスクの詳細なパラメータ情報を取得したり、温度やディスク容量の監視ができる便利なツールがあります。
ここでは3つのツール(hdparm, smartctl, diskcheck)の利用方法を実例を挙げて紹介します。

林 信之
株式会社アイティーブースト
2004/5/21
 

【 目次 】
1.はじめに
2.hdparm
3.smartctl
4.diskcheck
5.最後に


【実行環境】
FedoraCore1

1.はじめに

 PCはさまざまなパーツで構成されています。通常、パーツが故障した場合には交換することになりますが、ハードディスクは特有の問題としてユーザの"データ"が記録されているので故障はクリティカルな問題です。このように重要なハードディスクですが、稼動中のシステムからハードディスクの情報や故障の前兆を知る方法があります。ここではhdparm, smartctl, diskcheckの各ツールを紹介したいと思います。

ツール名
役     割
hdparm
情報収集、パラメータの設定
smartctl
ハードディスクの情報を監視、故障発生を予測
diskcheck
システムの空き領域の大きさを監視

警告: ここで紹介する方法は間違ったパラメータの設定でハードディスクを壊してしまう可能性もあります。用法を理解し、手順を検証した上で自己責任で行ってください。

▼Java や Linux を体系的に学びましょう!▼
Stack*のラクスが、
新学習方式のカリキュラムを開発しました!
14700円から(*1)、Java や Linux を体系的に学べます!!
(*1 テキスト代のみの税込料金です)




2.hdparm

 IDEのハードディスクでPCのプライマリマスタに接続されたものであれば、以下のコマンドを実行することでハードディスクの詳細情報を表示させることができます。

# hdparm -i /dev/hda

/dev/hda:

 Model=FUJITSU MHT2030AT, FwRev=009B, SerialNo=NN0DT421E4LV
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
 BuffType=DualPortCache, BuffSize=2048kB, MaxMultSect=16, MultSect=16
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=58605120
 IORDY=yes, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 *udma2 udma3 udma4 udma5
 AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled
 Drive conforms to: ATA/ATAPI-6 T13 1410D revision 3a:

 * signifies the current active mode

hdparmで表示されるハードディスクの詳細情報
項目
内     容
Model
製品名
FwRev
ファームウェアのリビジョン
SerialNo
製造番号
Config
設定
RawCHS
シリンダ/ヘッド/セクタの数
TrkSize
トラックサイズ
SectSize
セクタサイズ
ECCbytes
Error-Correcting Codeのチェックビット数
BuffType
バッファメモリのタイプ
BuffSize
バッファメモリのサイズ
MaxMultSect
マルチセクタ転送時の最大セクタ数
MultSect
マルチセクタ転送時のセクタ数
CurCHS
現在のシリンダ/ヘッド/セクタの数
CurSects
現在のセクタ数
LBA
Logical Block Addressingを使うかどうか
LBAsects
論理セクタ数,ロジカルブロック数
IORDY
I/O Channel Ready対応かどうか
tPIO
PIO転送時のサイクルタイム
tDMA
DMA転送時のサイクルタイム
PIO modes
設定可能なデータ転送のモード
"*"がついているものが現在アクティブになっているモード
DMA modes
UDMA modes
AdvancedPM
APMへの対応状況
WriteCache
書き込みキャッシュを使うかどうか
Drive conforms to
ドライブが準拠する規格

 製品名、設定可能なPIO・DMA・UDMAのモードなど多数の情報を得ることができます。この場合、富士通製MHT2030ATで現在はUDMA2モードで動作中であることがわかります。

 また、簡単なベンチマークをおこなうこともできます。"-t"オプションを付けてhdparmコマンドを実行します。しばらく待ち時間があったあとに結果が出力されます。

# hdparm -t /dev/hda

/dev/hda:
 Timing buffered disk reads:   66 MB in  3.02 seconds =  21.85 MB/sec ←読み出し速度が21.85 MB/秒

 hdparmコマンドでは設定を変更することもできます。出力結果を比較するために、試験的にDMA転送をオフにしてみます。"-d0"オプションでオフ、逆に"-d1"オプションでオンにすることができます。

# hdparm -d0 /dev/hda
/dev/hda:
 setting using_dma to 0 (off)
 using_dma    =  0 (off)
 ←DMA転送がオフになっています

 先程と同様のベンチマークを実行してみます。

# hdparm -t /dev/hda
/dev/hda:
 Timing buffered disk reads:   10 MB in  3.04 seconds =   3.29 MB/sec ←読み出し速度が3.29 MB/秒

 DMA転送をオフにするとかなりの性能低下が起こるのがわかると思います。マシンのスペックのわりにあまりにもハードディスクのアクセスが遅いと感じる場合、ハードディスクPIO転送モードで動作している可能性もあります。そのときにはhdparmコマンドで確認してみると問題を発見できるかもしれません。

 実験後は忘れずDMA転送に戻しておきます。

# hdparm -d1 /dev/hda

/dev/hda:
 setting using_dma to 1 (on)
 using_dma    =  1 (on)
 ←DMA転送をオンに戻しました


>>次のページへ

【 ページ 】 | 1 | 2 | 3 |

【 関連記事 】
テープライブラリの運用

サイト内全文検索
スタックアスタリスクのサイトを検索します。検索には、Googleを利用しています。そのため、最新の情報で検索されない可能性があります。


簡単レンタルメールフォーム
300メガ1000円〜 XBitのレンタルサーバー
500メガ1995円〜 電話サポート/PostgreSQL/専用SSLなどにも対応!お客様のニーズを網羅したレンタルサーバ
ホームページ制作のアシストウェブ
STACK* 執筆の講師陣から習得する!! ITエンジニアスクール アイティブースト
統合メールサポートシステム 〜MailDealer(メールディーラー)〜
システム開発,IT教育 〜株式会社アイティーブースト(ITBoost)〜
簡単 営業支援/顧客管理ツール Easy Sales
  利用規約 お問い合わせ・ご意見 スタックアスタリスクについて 運営会社について 
  レンタルサーバー ホスティング 専用サーバー メールフォーム ショッピングカート メール共有 ITエンジニア派遣 Linux講座 Java講座 メール配信 レンタルサーバー Webデータベース 検索サービス
CopyrightcRAKUS Co.,Ltd. All Rights Reserved.  メール管理・共有 顧客管理(CRM)もできるメール対応サポートシステム JAVA LINUX CISCO 技術者派遣 育成事業 株式会社ラクス