(57)【要約】【課題】通常の運用ではない、プログラム更新等を実施する際に不良セクタの発生による更新作業等の失敗を未然に防ぐ事前チェックを行う。【解決手段】チェック対象であるハードディスクをパーティション単位で分け、事前チェック専用のパーティションを設定する。設定した事前チェック専用のパーティション内を読み込み、不良セクタを捜索する。捜索により不良セクタが発見された場合に、当該発見された不良セクタを代替セクタに代替する。【選択図】図１
2008310846.tif 000002
【特許請求の範囲】
【請求項１】
ハードディスクドライブの故障を事前にチェックする、事前チェック装置であって、
ハードディスクドライブをパーティション単位で分け、事前チェック専用のパーティションを設定する、パーティション分割手段と、
前記パーティション分割手段において設定した事前チェック専用のパーティション内を読み込み、不良セクタを捜索する、事前読み込み手段と、
前記事前読み込み手段において不良セクタが発見された場合に、当該発見された不良セクタを代替セクタに代替する、セクタ代替手段と、
を備えることを特徴とする事前チェック装置。
【請求項２】
請求項１に記載の事前チェック装置であって、
あらかじめ許容出来る不良セクタの数を閾値として設定しておく、閾値設定手段を更に備え、
前記セクタ代替手段は、前記事前読み込み手段において発見された不良セクタの数が、前記閾値設定手段において設定した前記閾値を超えた場合にのみ動作することを特徴とする事前チェック装置。
【請求項３】
ハードディスクドライブの故障を事前にチェックする、事前チェック装置であって、
ハードディスクドライブを読み込み、不良セクタの有無を判別する、不良セクタ判別手段と、
あらかじめ許容出来る不良セクタの数を閾値として設定しておく、閾値設定手段と、
前記不良セクタ判別手段において判別された不良セクタの数が、前記閾値設定手段において設定した前記閾値を超えた場合は、当該発見された不良セクタを代替セクタに代替する、セクタ代替手段と、
を備えることを特徴とする事前チェック装置。
【請求項４】
請求項２又は３に記載の事前チェック装置であって、
前記セクタ代替手段においてセクタの代替を行った後に、再度ハードディスクを読み込み、不良セクタの有無を判別する、第２の不良セクタ判別手段と、
前記第２の不良セクタ判別手段において判別された不良セクタの数が、前記閾値設定手段において設定した前記閾値を超えた場合は、ハードディスクにディスク障害が発生していると判断する手段と、
を更に備えることを特徴とする事前チェック装置。
【請求項５】
請求項１乃至４の何れか１項に記載の事前チェック装置であって、
前記不良セクタの代替は、物理フォーマット、又はダミーデータの書き込みの何れか又はその組合せによって行われることを特徴とする事前チェック装置。
【請求項６】
請求項１乃至５の何れか１項に記載の事前チェック装置であって、
プログラム更新が実施される間隔を把握する、プログラム更新間隔把握手段と、
プログラム更新が実行される前に事前チェックを行うことができるようにスケジュールを定めておく、スケジュール設定手段と、
前記設定したスケジュールに基づいて前記全ての手段を動作させる手段と、
を更に備えることを特徴とする事前チェック装置。
【請求項７】
ハードディスクドライブの故障を事前にチェックする、事前チェック方法であって、
ハードディスクドライブをパーティション単位で分け、事前チェック専用のパーティションを設定する、パーティション分割ステップと、
前記パーティション分割ステップにおいて設定した事前チェック専用のパーティション内を読み込み、不良セクタを捜索する、事前読み込みステップと、
前記事前読み込みステップにおいて不良セクタが発見された場合に、当該発見された不良セクタを代替セクタに代替する、セクタ代替ステップと、
を備えることを特徴とする事前チェック方法。
【請求項８】
請求項７に記載の事前チェック方法であって、
あらかじめ許容出来る不良セクタの数を閾値として設定しておく、閾値設定ステップを更に備え、
前記セクタ代替ステップは、前記事前読み込みステップにおいて発見された不良セクタの数が、前記閾値設定ステップにおいて設定した前記閾値を超えた場合にのみ行われることを特徴とする事前チェック方法。
【請求項９】
ハードディスクドライブの故障を事前にチェックする、事前チェック方法であって、
ハードディスクドライブを読み込み、不良セクタの有無を判別する、不良セクタ判別ステップと、
あらかじめ許容出来る不良セクタの数を閾値として設定しておく、閾値設定ステップと、
前記不良セクタ判別ステップにおいて判別された不良セクタの数が、前記閾値設定ステップにおいて設定した前記閾値を超えた場合は、当該発見された不良セクタを代替セクタに代替する、セクタ代替ステップと、
を備えることを特徴とする事前チェック方法。
【請求項１０】
請求項８又は９に記載の事前チェック方法であって、
前記セクタ代替ステップにおいてセクタの代替を行った後に、再度ハードディスクを読み込み、不良セクタの有無を判別する、第２の不良セクタ判別ステップと、
前記第２の不良セクタ判別ステップにおいて判別された不良セクタの数が、前記閾値設定ステップにおいて設定した前記閾値を超えた場合は、ハードディスクにディスク障害が発生していると判断するステップと、
を更に備えることを特徴とする事前チェック方法。
【請求項１１】
請求項７乃至１０の何れか１項に記載の事前チェック方法であって、
前記不良セクタの代替は、物理フォーマット、又はダミーデータの書き込みの何れか又はその組合せによって行われることを特徴とする事前チェック方法。
【請求項１２】
請求項７乃至１１の何れか１項に記載の事前チェック方法であって、
プログラム更新が実施される間隔を把握する、プログラム更新間隔把握ステップと、
プログラム更新が実行される前に事前チェックを行うことができるようにスケジュールを定めておく、スケジュール設定ステップと、
前記設定したスケジュールに基づいて前記全てのステップを行うステップと、
を更に備えることを特徴とする事前チェック方法。
【請求項１３】
ハードディスクドライブの故障を事前にチェックする、事前チェックプログラムであって、
ハードディスクドライブをパーティション単位で分け、事前チェック専用のパーティションを設定する、パーティション分割機能と、
前記パーティション分割機能において設定した事前チェック専用のパーティション内を読み込み、不良セクタを捜索する、事前読み込み機能と、
前記事前読み込み機能において不良セクタが発見された場合に、当該発見された不良セクタを代替セクタに代替する、セクタ代替機能と、
をコンピュータに実現させることを特徴とする事前チェックプログラム。
【請求項１４】
ハードディスクドライブの故障を事前にチェックする、事前チェックプログラムであって、
ハードディスクドライブを読み込み、不良セクタの有無を判別する、不良セクタ判別機能と、
あらかじめ許容出来る不良セクタの数を閾値として設定しておく、閾値設定機能と、
前記不良セクタ判別機能において判別された不良セクタの数が、前記閾値設定機能において設定した前記閾値を超えた場合は、当該発見された不良セクタを代替セクタに代替する、セクタ代替機能と、
をコンピュータに実現させることを特徴とする事前チェックプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は汎用サーバにおいて生じるハードディスクドライブの故障を、通常運用でない運用を実施する前にチェックすることに関する。
【背景技術】
【０００２】
ハードディスクドライブ（Hard Disk Drive）を利用するに際して、ハードディスクドライブの冗長化のための手段としてＲＡＩＤ（Redundant Arrays of Inexpensive Disks）がある。ＲＡＩＤを使用することで、書き込み失敗時やデータ破損時にリカバリーをすることが可能である。
【０００３】
もっとも、ＲＡＩＤを実現するための装置を搭載するスペースの確保が出来ない場合にはＲＡＩＤを使用できない。
【０００４】
また、関連する技術として、不良セクタを発見し、ハードディスクドライブの不良セクタ代替機能を用いて修復する手段も公開されている（例えば特許文献１及び特許文献２参照）。
【特許文献１】特開２００６−１９０４０６号公報
【特許文献２】特開２００６−０９２６５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記した、特許文献１及び特許文献２に記載の技術では、不良セクタを代替する場合には、他のデータに影響が出ないように不良セクタの位置を確認する必要がある。更に、代替するためにはダミーデータの書き込みをする作業が必要である。
【０００６】
これらの不良セクタ位置の特定作業や、不良セクタ位置の情報を保持する等の処理、及びダミーデータの書き込みは、処理として複雑になるものが多く、余計な工数が発生してしまうという問題がある。
【０００７】
更に、今まで未使用であったエリアにおける不良セクタの発生による書き込み失敗を、未然に確認することができる仕組みではなかった。
【０００８】
また、上記したように、ＲＡＩＤを使用することで書き込み失敗時のリカバリーは可能であるが、ＲＡＩＤ装置を搭載するスペースの確保が出来ない場合や、ＲＡＩＤ機能を織り込むには特殊な作りこみが必要であり、簡単には使用できないという問題があった。
【０００９】
そこで、本発明は通常運転では実行されない処理作業であるプログラム更新作業等において、プログラム更新を実施する際に不良セクタの発生による更新作業の失敗を未然に防ぐ事前チェック装置、その方法及びそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明によれば、第１の装置としてハードディスクドライブの故障を事前にチェックする、事前チェック装置であって、ハードディスクドライブをパーティション単位で分け、事前チェック専用のパーティションを設定する、パーティション分割手段と、前記パーティション分割手段において設定した事前チェック専用のパーティション内を読み込み、不良セクタを捜索する、事前読み込み手段と、前記事前読み込み手段において不良セクタが発見された場合に、当該発見された不良セクタを代替セクタに代替する、セクタ代替手段と、を備えることを特徴とする事前チェック装置が提供される。
【００１１】
更に、第２の装置としてハードディスクドライブの故障を事前にチェックする、事前チェック装置であって、ハードディスクドライブを読み込み、不良セクタの有無を判別する、不良セクタ判別手段と、あらかじめ許容出来る不良セクタの数を閾値として設定しておく、閾値設定手段と、前記不良セクタ判別手段において判別された不良セクタの数が、前記閾値設定手段において設定した前記閾値を超えた場合は、当該発見された不良セクタを代替セクタに代替する、セクタ代替手段と、を備えることを特徴とする事前チェック装置が提供される。
【００１２】
更に、第１の方法としてハードディスクドライブの故障を事前にチェックする、事前チェック方法であって、ハードディスクドライブをパーティション単位で分け、事前チェック専用のパーティションを設定する、パーティション分割ステップと、前記パーティション分割ステップにおいて設定した事前チェック専用のパーティション内を読み込み、不良セクタを捜索する、事前読み込みステップと、前記事前読み込みステップにおいて不良セクタが発見された場合に、当該発見された不良セクタを代替セクタに代替する、セクタ代替ステップと、を備えることを特徴とする事前チェック方法が提供される。
【００１３】
更に、第２の方法としてハードディスクドライブの故障を事前にチェックする、事前チェック方法であって、ハードディスクドライブを読み込み、不良セクタの有無を判別する、不良セクタ判別ステップと、あらかじめ許容出来る不良セクタの数を閾値として設定しておく、閾値設定ステップと、前記不良セクタ判別ステップにおいて判別された不良セクタの数が、前記閾値設定ステップにおいて設定した前記閾値を超えた場合は、当該発見された不良セクタを代替セクタに代替する、セクタ代替ステップと、を備えることを特徴とする事前チェック方法が提供される。
【００１４】
更に、第１のプログラムとしてハードディスクドライブの故障を事前にチェックする、事前チェックプログラムであって、ハードディスクドライブをパーティション単位で分け、事前チェック専用のパーティションを設定する、パーティション分割機能と、前記パーティション分割機能において設定した事前チェック専用のパーティション内を読み込み、不良セクタを捜索する、事前読み込み機能と、前記事前読み込み機能において不良セクタが発見された場合に、当該発見された不良セクタを代替セクタに代替する、セクタ代替機能と、をコンピュータに実現させることを特徴とする事前チェックプログラムが提供される。
【００１５】
更に、第２のプログラムとしてハードディスクドライブの故障を事前にチェックする、事前チェックプログラムであって、ハードディスクドライブを読み込み、不良セクタの有無を判別する、不良セクタ判別機能と、あらかじめ許容出来る不良セクタの数を閾値として設定しておく、閾値設定機能と、前記不良セクタ判別機能において判別された不良セクタの数が、前記閾値設定機能において設定した前記閾値を超えた場合は、当該発見された不良セクタを代替セクタに代替する、セクタ代替機能と、をコンピュータに実現させることを特徴とする事前チェックプログラムが提供される。
【発明の効果】
【００１６】
本発明によれば、通常運転では実行されない処理作業であるプログラム更新作業等において、プログラム更新を実施する際に不良セクタの発生による更新作業の失敗を未然に防ぐことが可能となる。
【発明を実施するための最良の形態】
【００１７】
次に、本発明の実施例について図面を用いて説明する。
【００１８】
図１を参照すると、本発明の実施例である汎用サーバは、ＣＰＵ１１と、チップセット１２と、ディスクコントローラ１３とディスク１４を備える。なお、本発明におけるハードディスクドライブ故障の事前チェック装置は、汎用のサーバに適用し、実現することが可能である。
【００１９】
また、ディスク１４は用途ごとのパーティションに分割されている。
【００２０】
本実施例では、プログラムの更新のための専用のパーティションを設ける。この、更新プログラム専用のパーティションは、通常運用には使用されない。
【００２１】
加えて、更新プログラム専用のパーティションは、通常運用時にはデータが書き込まれていない状態である。
【００２２】
そして、この更新プログラム専用のパーティションは、更新するプログラムの転送及び更新作業専用のエリアとして利用される。
【００２３】
本実施例では、更新プログラム専用のパーティションとして、パーティション（ｎ）を備える。
【００２４】
次に、図１に示す本発明の実施例の動作を、図２のフローチャートを参照して説明する。
【００２５】
まず、プログラム更新を実施する前に、指定されたパーティション（ｎ）の全領域のリードを実施する。そして、パーティション（ｎ）の全記憶領域の不良セクタの有無を確認する（Ｓ２１）。
【００２６】
これにより、リードエラーが発生したか否かを判定する。（Ｓ２２）。
【００２７】
ここでリードエラーが発生しなかった場合は、不良セクタが発生しておらずパーティション（ｎ）に問題が発生していないことになるため、事前チェックを終了する（Ｓ２６）。
【００２８】
一方、Ｓ２２での判定作業において、リードエラーが発生したと判定された場合は、リードエラーが発生した回数の確認を行う（Ｓ２３）。
【００２９】
そして、あらかじめ規定した回数未満のリードエラーが発生していた場合は、指定パーティションのセクタの配置をやり直す物理フォーマット（low level format）を実施する（Ｓ２４）。これにより、ディスクの不良セクタの代替機能を用いて、不良セクタの代替を実施する。
【００３０】
なお、あらかじめ規定するリードエラーの許容回数は、サーバに求める信頼性、ディスクの製品寿命、サーバに要求される作業効率、プログラムの更新が行われる頻度といった各要素に基づいて任意の回数を定めることが可能である。
【００３１】
また、不良セクタの代替を行うにあたっては、ダミーデータを書き込むことにより不良セクタの代替機能を発揮させる構成とすることも可能である。
【００３２】
不良セクタの代替を行った後に、再度指定パーティション（ｎ）の全領域リードを実施する（Ｓ２１）。そして、あらかじめ規定した回数以上のリードエラーが発生していないかを判断する（Ｓ２２）。
【００３３】
発生していない場合は事前チェックを終了とする（Ｓ２６）。
【００３４】
一方、リードエラーが発生しており、それが規定回数以上発生（Ｓ２３）していた場合は、ディスク１４にディスク障害が発生していると判断する（Ｓ２５）。
【００３５】
これにより、プログラム更新を実施する際に不良セクタの発生の有無を事前に検知することが可能となる。
【００３６】
[発明の他の実施例]
本発明の実施例を適用するサーバが、プログラム更新がある一定間隔で実施されるサーバである場合が考えられる。この場合の変更例として、プログラム更新が実施される間隔にあわせて事前確認作業のスケジュール化を図ることも可能である。
【００３７】
これにより、事前チェックを行うべきタイミングをあらかじめ把握することができる。よって、運用プログラムの処理に影響が無い時間帯に事前チェックをすませておくといったことが可能となる。
【００３８】
また、サーバの処理能力を鑑みて、運用プログラムの処理に影響が無いように、リードの周期を遅くする等のカスタマイズをすることも可能である。
【００３９】
以上説明した本発明の実施例の効果は、以下である。
【００４０】
第一の効果は、通常運転では実行されない処理作業であるプログラム更新作業等において、いざプログラム更新を実施する際に不良セクタの発生による更新作業の失敗を未然に防ぐことが可能となることである。
【００４１】
第二の効果は、用途によりパーティションを分けることにより、不良セクタの確認のためのリードや、不良セクタが存在した時の復旧作業が、パーティション単位で実行できるため、通常運用の用途に使用しているエリアを意識することなく簡潔に作業が実施出来ることである。
【００４２】
また、該当するパーティションのみに復旧作業をすることにより処理自体を迅速に終了させることができる。これは特に時間を要する処理である、物理フォーマットを、短時間に終了出来るという効果がある。
【００４３】
さらにディスク全体を物理フォーマットした場合は、ディスク全体のデータが削除されてしまうが、本実施例では更新プログラム専用のパーティション以外のデータには影響を及ぼすことがないという効果もある。
【００４４】
第三の効果は、本実施例はディスクを一つしか持たない汎用サーバにたいして適用することが可能な点である。これにより複数のディスク搭載するスペースの確保が出来ないサーバや、複数のディスク搭載するためには特別に改変をしなくてはいけないサーバであっても改変等を行うことなく本実施例を適用できる。
【００４５】
第四の効果は、ディスクにあらかじめ備わっているセクタ代替機能を用いることで複雑な処理をせずに実施できることである。
【００４６】
なお、汎用サーバにおけるハードディスクドライブ故障の事前チェック装置は、ハードウェア、ソフトウェア又はこれらの組合せにより実現することができる。
【図面の簡単な説明】
【００４７】
【図１】本発明の実施例の基本的構成を表す図である。
【図２】本発明の実施例の動作を表す図である。
【符号の説明】
【００４８】
１１  ＣＰＵ
１２  チップセット
１３  ディスクコントローラ
１４  ディスク
【図１】
2008310846.tif 000003
【図２】
2008310846.tif 000004