(57)【要約】【課題】  ディスク障害時において、短時間で高効率かつオペレーティングシステムに依存しない確実な復旧とバックアップを実行する。【解決手段】  ディスクシステムコントローラ１を構成するエラー検知部４はディスク２のデータの読み／書きを常時監視し、異常が発生した場合はそれを検知してｗａｒｎｉｎｇやerrorを発する。エラー判別部５はｗａｒｎｉｎｇやerrorをディスク障害として判別する。エラー箇所検索部６はディスク２に発生したディスク障害（エラー）の発生箇所を検索して、エラーの発生しているパーティションやブロックを特定する。データ修復部７は特定したパーティションやブロックの修復を行い、エラーの修復をしたブロックやパーティションをバックアップ装置３でバックアップする。なお、バックアップはエラー修復に失敗したデータ（ブロック、パーティション）や、エラーが発生していないパーティションもバックアップする。【選択図】      図１
2007079931.tif 000002
【特許請求の範囲】
【請求項１】
ディスクの動作を監視してエラーの発生を検知するエラー検知手段と、
検知したエラーがディスク障害であるか否かを判別するエラー判別手段と、
ディスク障害の生じたブロックを検索するブロック検索手段と、
検索したブロックを修復する修復手段と、
修復手段によって修復できなかったブロックを含み障害が生じたままのパーティションを検索するパーティション検索手段と、
ディスク障害が生じていないパーティションと、障害が生じたままのパーティションと、を共にバックアップのために取得するバックアップ手段と、
を備えることを特徴とするディスク障害監視装置。
【請求項２】
前記ディスクは冗長化された構成を備えることを特徴とする請求項１記載のディスク障害監視装置。
【請求項３】
前記ディスク上で動作するオペレーティングシステムに動作が依存しないシステムコントローラ上にて動作可能なことを特徴とする請求項１または２記載のディスク障害監視装置。
【請求項４】
エラー検知手段によって、ディスクの動作を監視してエラーの発生を検知するステップと、
エラー判別手段によって、検知したエラーがディスク障害であるか否かを判別するステップと、
ブロック検索手段によって、ディスク障害の生じたブロックを検索するステップと、
修復手段によって、検索したブロックを修復するステップと、
パーティション検索手段によって、修復手段によって修復できなかったブロックを含み障害が生じたままのパーティションを検索するステップと、
バックアップ手段によって、ディスク障害が生じていないパーティションと、障害が生じたままのパーティションと、を共にバックアップのために取得するステップと、
を有することを特徴とするディスク障害監視方法。
【請求項５】
エラー検知手段によって、ディスクの動作を監視してエラーの発生を検知するステップと、
エラー判別手段によって、検知したエラーがディスク障害であるか否かを判別するステップと、
ブロック検索手段によって、ディスク障害の生じたブロックを検索するステップと、
修復手段によって、検索したブロックを修復するステップと、
パーティション検索手段によって、修復手段によって修復できなかったブロックを含み障害が生じたままのパーティションを検索するステップと、
バックアップ手段によって、ディスク障害が生じていないパーティションと、障害が生じたままのパーティションと、を共にバックアップのために取得するステップと、
を有することを特徴とするディスク障害監視プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスク障害の監視および復旧を行うディスク障害監視装置および方法、プログラムに関する。
【背景技術】
【０００２】
従来のコンピュータシステムやサーバにおいて、記憶手段としてハードディスクなどの磁気ディスク型記憶装置（ディスク）が用いられている。これらのディスクは予期しないディスク障害などのデータ読み書きに関するエラーが生じた場合に備えて冗長化された構成を備えている。
【０００３】
冗長化されたディスクの構成により、たとえばディスク障害が発生しても、作業者がオペレーティングシステムにコマンドを入力し、障害が発生したディスクのパーティションを特定できる。こうして特定したディスク障害が発生していないパーティションのバックアップは、コマンドを入力して取得することでデータの保護や修復に用いられている。
【０００４】
また、ディスク障害が発生しているパーティションに対しても、作業者が所定のコマンドを入力して、特定のブロックの修復を試みている。
【０００５】
また、予期しないディスク障害により重要なデータが消失してしまうのを防ぐために、ディスク障害が発生していない状態でも常時にバックアップを取得し、たとえばディスク障害が発生しても消失するデータの分量を最小限度に抑える技術も提案されている（特許文献１参照）。
【特許文献１】特開２０００−２０２４８
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来の技術によるディスク障害時のバックアップ作業では、バックアップのためのコマンドは手動で入力されるので作業者が現場へ出向くか駐在する必要があり、費用と効率の点で決して良好な手段ではなかった。
【０００７】
また、ディスク障害が発生してからデータのバックアップを開始するまでに比較的長い時間を要してしまっていた。
【０００８】
また、ディスク障害が発生したディスクにオペレーティングシステム（ＯＳ）がインストールされている場合は、オペレーティングシステム自体が正常に機能しない可能性があり、バックアップの作業自体が実行不可能となる可能性もあった。
【０００９】
本発明は、上記に鑑みてなされたもので、その目的とするところは、ディスク障害時において、短時間で高効率かつオペレーティングシステムに依存しない確実な復旧とバックアップを実行するディスク障害監視装置および方法、プログラムを提供することにある。
【課題を解決するための手段】
【００１０】
請求項１記載の本発明は、ディスクの動作を監視してエラーの発生を検知するエラー検知手段と、検知したエラーがディスク障害であるか否かを判別するエラー判別手段と、ディスク障害の生じたブロックを検索するブロック検索手段と、検索したブロックを修復する修復手段と、修復手段によって修復できなかったブロックを含み障害が生じたままのパーティションを検索するパーティション検索手段と、ディスク障害が生じていないパーティションと、障害が生じたままのパーティションと、を共にバックアップのために取得するバックアップ手段と、を備える。
【００１１】
また、請求項４に記載の本発明は、エラー検知手段によって、ディスクの動作を監視してエラーの発生を検知するステップと、エラー判別手段によって、検知したエラーがディスク障害であるか否かを判別するステップと、ブロック検索手段によって、ディスク障害の生じたブロックを検索するステップと、修復手段によって、検索したブロックを修復するステップと、パーティション検索手段によって、修復手段によって修復できなかったブロックを含み障害が生じたままのパーティションを検索するステップと、バックアップ手段によって、ディスク障害が生じていないパーティションと、および障害が生じたままのパーティションと、を共にバックアップのために取得するステップと、を有する。
【００１２】
また、請求項５に記載の本発明は、エラー検知手段によって、ディスクの動作を監視してエラーの発生を検知するステップと、エラー判別手段によって、検知したエラーがディスク障害であるか否かを判別するステップと、ブロック検索手段によって、ディスク障害の生じたブロックを検索するステップと、修復手段によって、検索したブロックを修復するステップと、パーティション検索手段によって、修復手段によって修復できなかったブロックを含み障害が生じたままのパーティションを検索するステップと、バックアップ手段によって、ディスク障害が生じていないパーティションと、および障害が生じたままのパーティションと、を共にバックアップのために取得するステップと、を有する。
【発明の効果】
【００１３】
本発明によれば、ディスク障害時において、短時間で高効率かつオペレーティングシステムに依存しない確実な復旧とバックアップを実行することができる。
【発明を実施するための最良の形態】
【００１４】
図１は、ディスク障害監視装置の実施の形態の全体構成図を示す。
【００１５】
この図１にはディスクシステムコントローラ１と、ディスク２と、バックアップ装置３が示されており、ディスクシステムコントローラ１には必要に応じてモニタ８を備えてもよい。さらにディスクシステムコントローラ１は、エラー検知部４と、エラー判別部５と、エラー箇所検索部６と、データ修復部７と、を備えている。
【００１６】
このような構成において、ディスクシステムコントローラ１はディスク障害監視装置の実施の形態の要部を構成しており、ＨＤＤ（Hard Disk Drive）などの磁気ディスク記録媒体にて構成されるディスク２のディスク障害をエラー検知し、データ修復などの復旧とデータのバックアップを行う。
【００１７】
バックアップ装置３は、たとえば外部に別体に設けられた光磁気ディスクや磁気テープ、磁気ディスクなどの情報記録媒体であり、ディスク２に発生したディスク障害時において、ディスク２に記録されているデータをバックアップするためのデータ記録に用いられる。モニタ８は必ずしもディスクシステムコントローラ１に必要な構成ではないが、ディスクシステムコントローラ１の動作状態の確認や、あるいは任意のコマンドを入力する必要がある場合に用いてもよい。
【００１８】
ディスクシステムコントローラ１を構成するエラー検知部４はディスク２の動作状態、すなわちデータの読み／書きを常時監視しており、データの読み／書きにおいて異常が発生した場合はそれを検知してｗａｒｎｉｎｇやerrorを発する。エラー判別部５は、検知されたｗａｒｎｉｎｇやerrorをディスク障害であるか、あるいは他のネットワーク障害やミドルウェア障害、ＣＰＵやメモリなどに生じたハードウェア障害であるかを判別する。
【００１９】
エラー箇所検索部６は、ディスク２に発生したディスク障害（エラー）の発生箇所を検索して、エラーの発生しているパーティションやブロックを特定する。データ修復部７は特定したパーティションのブロックの修復を試みる。そして、エラーの修復を試みたブロックを含むパーティションをバックアップ装置３に送り、バックアップを実行する。なお、バックアップはエラー修復に失敗したデータ（ブロック、パーティション）や、最初からエラーが発生していないパーティションもバックアップされる。
【００２０】
なお、図１に示すディスク２は冗長化されている／いないにかかわらずディスクシステムコントローラ１により全てのディスク２におけるディスク障害の発生を監視している。
【００２１】
また、ディスクシステムコントローラ１が備える、エラー検知部４と、エラー判別部５と、エラー箇所検索部６と、データ修復部７と、はハードウェアによる構成に限定されるものではない。たとえばディスクシステムコントローラ１にインストールされて動作するコンピュータプログラムによって同等の各機能を実現する構成でもよく、あるいはネットワーク等で接続された遠隔のサーバなどに同等のこれら機能を持たせて実現してもよい。
【００２２】
次に、図２に、実施の形態にて実行される処理の構成を説明するための説明図を示す。
【００２３】
この図２において、「ｓｙｓｌｏｇ」とはUNIX（登録商標）システム・メッセージのログをログファイルに記録するプログラムを示している。また「error」や「ｗａｒｎｉｎｇ」はｓｙｓｌｏｇから出力されるエラーメッセージであって、ディスク２の所定外の動作やディスク障害の発生を表示するためのものである。
【００２４】
まず、ディスクシステムコントローラ１はｓｙｓｌｏｇを常時監視しており、たとえばｓｙｓｌｏｇからerrorやｗａｒｎｉｎｇのメッセージが出力されることを監視している（Ｓ１）。この監視においてディスク２に障害が発生したことを検知すると（Ｓ２）、ｓｙｓｌｏｇによりディスク障害の判別が実行される（Ｓ３）。
【００２５】
次に、ｓｙｓｌｏｇに出力されている番地より検出することで障害の出たブロックの番地を検索する（Ｓ４）。
【００２６】
次に、ディスク２上の特定のブロックの修復を試みる。この特定のブロックとはＳ４で検索した障害の出たブロックであり、修復はｆｏｒｍａｔのｒｅｐａｉｒコマンドによって実行される。
【００２７】
次に、修復を試みた後にもかかわらず引き続き障害が修復されていないブロックを含むパーティションを検索する。この検索はＳ４で検出したブロックとformatコマンドにより検出が行われる（Ｓ６）。
【００２８】
次に、障害の無いパーティションのバックアップをＯＳのｕｆｓｄｕｍｐコマンドにより実行する。図２においては、たとえばディスク２のパーティションＡ〜Ｃのうち、ディスク障害の発生していないパーティションＡとパーティションＣについてバックアップが実行される。このバックアップはバックアップ装置３に記録することで行われる（Ｓ７）。
【００２９】
次に、ブロックの修復を試みたにもかかわらず障害が残ったままのパーティションのバックアップもｕｆｓｄｕｍｐコマンドにより実行される。図２においてはパーティションＢについて実行され、障害が発生したままのパーティションＢ中のブロックのうち、修復が成功したブロックも不成功のブロックとともにバックアップとしてバックアップ装置３に記録される（Ｓ８）。
【００３０】
図３は、ディスク障害監視装置の実施の形態の処理を説明するためのフロー図であって、すでに図２に示した説明図の処理をさらに容易に理解するためのフロー図である。
【００３１】
ディスク障害の監視がスタートすると、まずｓｙｓｌｏｇをたとえば１０分間隔で監視する（Ｓ１、図２に示したＳ１に対応。以下同様に記す。）。この監視においてerrorまたはｗａｒｎｉｎｇが発生しているか否かが判断される（Ｓ２）。この判断で発生していない（ＮＯ）とされると、Ｓ１に戻って再び監視を続ける。一方、発生していると判断されると（ＹＥＳ）、次に、ディスク障害であるか否かが判断される（Ｓ３）。
【００３２】
Ｓ３の判断において、ディスク障害ではない（ＮＯ）と判断されると、再びＳ１へ処理が戻り監視を続行する。一方、ディスク障害である（ＹＥＳ）と判断されると、ｓｙｓｌｏｇに基づいて障害の出たブロックの番地を検索する（Ｓ４）。そして、検索により発見した特定のブロックに対してデータ修復を実行する（Ｓ５）。
【００３３】
次に、データ修復後にもかかわらず障害が継続しているパーティションの検索を行う（Ｓ６）。この検索はディスク２内の全てのパーティションに対してそれぞれ実行される。それぞれのパーティションごとに障害の有無が判断され（ＹＥＳ／ＮＯ）、障害が無い（ＮＯ）の場合はこのパーティションに対してバックアップが実行され、障害がある（ＹＥＳ）場合はここではバックアップを行わない（Ｓ７）。
【００３４】
次に、障害が発生しブロックの修復に失敗したパーティションのバックアップを実行して（Ｓ８）、ディスク障害監視装置によるディスク障害発生時の処理が終了する。
【００３５】
このように、上述の実施の形態によれば、ディスク障害時において、短時間で高効率かつオペレーティングシステムに依存しない確実な復旧とバックアップを実行することができる。
【００３６】
なお、実施の形態に示したディスク障害監視装置を従来のサーバに適用することにより、バックアップ機能付きのディスクシステムコントローラ搭載サーバを構成してもよい。
【００３７】
また、既設のサーバに対してディスク障害監視装置を後付けしてもよく、従来の冗長化によるディスク障害対策を実施している企業に対して、ディスク障害の復旧とデータバックアップ作業の効率向上を機能として提供してもよい。
【図面の簡単な説明】
【００３８】
【図１】実施の形態の全体構成図を示す。
【図２】実施の形態にて実行される処理の構成を説明するための説明図を示す。
【図３】実施の形態にて実行される処理を説明するためのフロー図を示す。
【符号の説明】
【００３９】
１  ディスクシステムコントローラ
２  ディスク
３  バックアップ装置
４  エラー検知部
５  エラー判別部
６  エラー箇所検索部
７  データ修復部
８  モニタ
【図１】
2007079931.tif 000003
【図２】
2007079931.tif 000004
【図３】
2007079931.tif 000005