(57)【要約】      （修正有）【課題】本発明におけるデータアーカイビングシステムは、ネットワークに接続している目標システムに保存されているデータのオフラインのバックアップを実行する。【解決手段】目標システムのダウンタイムを最小にするために、ファイルシステムレベルよりもアブストラクションの低いレベル（例えばブロックレベル）でデータはアーカイブされる。オフラインのバックアップは、使用中のファイルとアプリケーションを閉じて、データバックアッププロセスを管理するアーカイビングオペレーティングシステムで目標システムを再起動することによって達成される。目標データがアーカイブされたあと、目標システムは通常のオペレーティングシステムで再起動される。【選択図】図１
2006120132.tif 000002
【特許請求の範囲】
【請求項１】
目標オペレーションシステム（OS）を有する目標システムのデータをアーカイブする方法、この方法は以下を含む：
前記目標OSを閉じる;
目標OSの代わりに、アーカイブOSを使って前記目標システムを再起動
させる；そして
前記のアーカイブOSが目標システム上で稼動中に前記目標システムに保存されているデータをアーカイブする。
【請求項２】
前記目標システムを再起動する前に、前記目標システムに保存されている開かれているファイルを閉じることも含む、請求項１に記載の方法。
【請求項３】
前記目標システムを再起動する前に、前記目標システムに保存されている開かれているアプリケーションを閉じることも含む、請求項１に記載の方法。
【請求項４】
前記アーカイビングステップは、前記目標システムの記憶媒体装置のブロックレベルのバックアップを実行するものである、請求項１に記載の方法。
【請求項５】
アーカイブブートパラメータセットを作成するために、前記目標システムを再起動する前に、前記目標システムの少なくとも１つのブートパラメータを変更することも含む、請求項１に記載の方法。
【請求項６】
前記アーカイブOSにより前記目標システムを再起動させるようにアーカイブブートパラメータセットが構成されている、請求項５に記載の方法。
【請求項７】
前記目標システムはネットワークの第1のノードに対応する；そして
前記ブートパラメータセットは、前記目標システムを、前記ネットワークの第２のノードに対応するアーカイビングサーバーシステムから起動させるように構成されている、請求項５に記載の方法。
【請求項８】
前記アーカイブブートパラメータセットに、前記アーカイビングサーバーシステムのためのネットワーク識別子が含まれている、請求項７に記載の方法。
【請求項９】
前記アーカイブブートパラメータセットに、前記ネットワークの第２ノードにあるアーカイビングサーバーアプリケーションのためのネットワーク識別子が含まれている、請求項７に記載の方法。
【請求項１０】
前記アーカイブブートパラメータセットに、ネットワークブートリクエストが含まれている、請求項７に記載の方法。
【請求項１１】
前記アーカイブブートパラメータセットに、可搬媒体ブートリクエストが含まれている、請求項７に記載の方法。
【請求項１２】
前記目標システムはネットワークの第１ノードに対応する；そして
前記方法は、前記目標システムを再起動するまえに、前記アーカイブOSを前記ネットワークの第２ノードから受け取ることをも含む、請求項１に記載の方法。
【請求項１３】
前記アーカイブOSの代わりに、前記目標OSにより目標システムを再々起動させ、
前記再々起動操作は、アーカイビング操作が完了してから実行されることも含む、請求項１に記載の方法。
【請求項１４】
前記目標システムを再々起動させる前に、リストアされたブートパラメータセットを作成するために、前記アーカイブブートパラメータの少なくとも１つのブートパラメータを変更することも含む、請求項１３に記載の方法。
【請求項１５】
前記リストアされたブートパラメータセットは、目標OSを前記目標システムで再起動させるように構成されている、請求項１４に記載の方法。
【請求項１６】
目標オペレーティングシステム（OS）を有する目標システムのデータをアーカイブするためのシステム、このシステムは以下を含む：
前記目標OSを閉じる手段；
前記目標OSの代わりにアーカイブOSで前記目標システムを再起動する手段；そして
前記アーカイブOSが前記目標システム上で稼動中に、前記目標システムによって維持されているデータをアーカイブする手段。
【請求項１７】
前記のアーカイブする手段は、前記目標システムの記憶媒体装置のブロックレベルのバックアップを実行するように構成されている、請求項１６に記載のシステム。
【請求項１８】
前記目標システムを再起動する前に、アーカイブブートパラメータセットを作成するために、前記目標システムのブートパラメータの少なくとも１つを変更する手段も含む、請求項１６に記載のシステム。
【請求項１９】
前記アーカイブブートパラメータセットは、前記アーカイブOSで前記目標システムを再起動させるように構成されている、請求項１８に記載のシステム。
【請求項２０】
コンピュータで読取り可能な媒体で実現されるコンピュータープログラムであって、前記コンピュータプログラムは、以下を含むコンピュータ実行可能な指示を含む：
前記目標OSを閉じるための指示；
前記目標OSの代わりにアーカイブOSで前記目標システムを再起動するための指示；そして
前記目標OSが前記目標システム上で稼動中に、前記目標システムによって維持されているデータをアーカイビングするための指示。
【請求項２１】
前記目標システムを再起動する前に、アーカイブブートパラメータセットを作成するために、前記目標システムの少なくとも１つのブートパラメータを変更する指示も含む、請求項２０に記載のコンピュータプログラム。
【請求項２２】
前記目標システムはネットワークの第１ノードに対応し、
前記コンピュータプログラムは、前記目標システムを再起動する前に、前記ネットワークの第２ノードから前記アーカイブOSを受け取るための指示をも含む、請求項２０に記載のコンピュータプログラム。
【請求項２３】
前記アーカイブOSの代わりに前記目標OSで目標システムを再々起動させるための指示を含み、
前記再々起動の実行は、前記データのアーカイビングが完了してから行われる、請求項２０に記載のコンピュータプログラム。
【請求項２４】
前記目標システムを再々起動する前に、リストアされたブートパラメータセットを作成するために、前記アーカイブブートパラメータセットの少なくとも１つのブートパラメータを変更する指示をも含む、請求項２３に記載のコンピュータプログラム。
【請求項２５】
データをアーカイブするシステムであって、
目標システム；
前記目標システムのための目標オペレーティングシステム（OS）；
前記目標システムのためのアーカイブOS;  そして
前記目標システムのためのアーカイビングクライアントアプリケーションを含み、
前記アーカイビングクライアントアプリケーションは、前記目標システム上で前記アーカイブOSが稼動中に当該目標システムに維持されているデータをアーカイビングすることを容易にするために、前記目標OSの代わりに前記アーカイブOSを使って前記目標システムを再起動することを指示するように構成されている。
【請求項２６】
前記目標システムのための記憶媒体装置も含み、前記アーカイブOSはこの記憶媒体装置のブロックレベルバックアップを容易にする、請求項２５に記載のシステム。
【請求項２７】
前記目標システムのためのブートパラメータセットを含み、前記アーカイビングクライアントアプリケーションは、アーカイブブートパラメータセットを作成するために、前記目標システムを再起動する前に、前記ブートパラメータセットの少なくとも１つのブートパラメータを変更するように構成されている、請求項２５に記載のシステム。
【請求項２８】
前記アーカイブブートパラメータセットは、前記アーカイブOSで前記目標システムを再起動させるように構成されている、請求項２７に記載のシステム。
【請求項２９】
前記目標システムがネットワークの第１ノードに対応し、
前記アーカイブブートパラメータは、前記ネットワークの第２ノードに対応するアーカイビングサーバーシステムによって前記目標システムを起動させるように構成されている、請求項２７に記載のシステム。
【請求項３０】
前記アーカイブブートパラメータセットは、前記アーカイビングサーバーシステムのためのネットワークアドレスを含む、請求項２９に記載のシステム。
【請求項３１】
前記アーカイブブートパラメータセットは、前記ネットワークの第２ノードにあるアーカイビングサーバーアプリケーションのためのネットワークアドレスを含む、請求項２９に記載の方法。
【請求項３２】
前記アーカイブブートパラメータセットは、ネットワークブートリクエストを含む、請求項２９に記載の方法。
【請求項３３】
目標オペレーティングシステムを有する目標システムのデータをアーカイビングする方法、その方法は以下を含む：
アーカイブブートパラメータセットを作成するために、前記目標システムの少なくとも１つのブートパラメータを変更する；
前記目標システムによって維持されている開かれているファイルやアプリケーションを閉じる；
前記アーカイブブートパラメータに応じて、前記目標システムを前記目標OSの代わりにアーカイブOSを用いて再起動させる；
前記目標システム上で前記アーカイブOSが稼動中に、前記目標システムに維持されているデータをアーカイビングする；
リストアされたブートパラメータセットを作成するために、前記アーカイブブートパラメータセットの少なくとも１つのブートパラメータを変更する；そして
前記のリストアされたブートパラメータセットに応じて、前記目標システムを前記アーカイブOSの代わりに前記目標OSを用いて再々起動させる。
【請求項３４】
前記アーカイビングステップは、前記目標システムの記憶媒体装置のブロックレベルのバックアップを実行する、請求項３３に記載の方法。
【請求項３５】
前記目標システムはネットワークの第１ノードに対応し；そして
前記アーカイブブートパラメータセットは、前記ネットワークの第２ノードに対応するアーカイビングサーバーシステムから前記目標システムを起動させるように構成されている、請求項３３に記載の方法。
【請求項３６】
前記アーカイブブートパラメータセットは、前記アーカイビングサーバーシステムのためのネットワーク識別子を含む、請求項３５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータデータのアーカイビング全般に関連した発明である。特に、目標装置に存在するデータのオフラインアーカイビングに関連している。
【背景技術】
【０００２】
この数十年間、多数の違った形式でコンピュータ間の情報交換がなされてきた。情報交換を容易にするひとつの代表的な形式はクライアントサーバーモデルとして知られ、一般的にはクライアントサーバー型ネットワークとして実装されている。クライアントサーバー型ネットワークにおいて、サーバーアプリケーションとは不特定多数のクライアントアプリケーションからリクエストを受け、処理するソフトウェアプログラム（コンピュータハードウェアの一つもしくは数箇所に点在する）のことである。多くの場合、サーバーアプリケーションは多数のクライアントアプリケーションが共有する膨大な情報資源を管理している。
【０００３】
このクライアントサーバー型ネットワークが普及するにつれ、一つのサーバーアプリケーションを多数のクライアントアプリケーションによってアクセス可能にするための技術も発達してきた。それにより、サーバーアプリケーションの信頼性、サーバー障害を減らす必要、災害復旧のためにサーバー情報のアーカイビングの必要なども増大してきた。情報をアーカイブする時に、アーカイビングシステムは、この分野で“バックアップジョブ”として知られるジョブをスケジュールする。バックアップジョブは、特定のアプリケーション、ファイルシステム、ドライブ、目標システム、などアーカイビングに必要とされるものを特定する。自動アーカイビングシステムは、人手をなるべくまたは全く介さず、バックアップジョブが実行されるように構成されている。言い換えれば、特定のシステムパラメタ（例として、バックアップジョブが設定された時間に周期的に実行されるなど）に応じて情報のアーカイブは“自動的”におこなわれる。
【０００４】
実用例において、アーカイブされるシステムが膨大な量の情報資源を管理、保存していることがある。さらに、これらのシステムが稼動中もしくは“オンライン”の状態をできるだけ維持する必要性があることもある。従って、従来の情報アーカイビング方法においては、いかに目標サーバーシステムの操作を中断せず、また目標サーバーシステムをオフラインの状態にせずにバックアップジョブを実行できるかに重点をおいてきた。このようなアーカイビング方法は、目標システムの情報のある瞬間の“スナップショット”（開かれているファイルに関連した情報や開かれている目標システムのオペレーティングシステムに関連した情報も含めて）をとる方法で情報のアーカイブを行った。開かれているまたは稼働中のファイルは常時情報がダイナミックに変化しているので、正確にアーカイブを行い、情報の破損なしに復元することは難しい。大型サーバーアプリケーションのオペレーティングシステムは、サーバにログインおよびログアウトする多数の異なるユーザに対応して膨大な量のファイルが常時変化するので、このような方法でのアーカイブは特に難しい。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従って、サーバーの情報を効率よく、正確にアーカイブできるアーカイブシステムと方法が必要になってくる。さらに、本発明のその他の優れた特徴や属性については図面や前述の技術分野及び背景の説明と共に、後述の詳細な説明や請求項において明らかにされる。
【課題を解決するための手段】
【０００６】
本発明における実用的な情報アーカイビングシステムはサーバーのダウンタイムが短くなるような方法で目標サーバーシステムのオフラインバックアップジョブの実行を可能にするアーカイビングシステムである。情報のオフラインアーカイビングは開かれたファイルが最小限もしくは無い状態で情報のバックアップが可能なのでファイルの保全性を失わず、望ましい方法である。オフラインの時間を最小限に抑えるため、情報アーカイビングシステムは目的記憶装置を比較的高いレベルのアブストラクションで（例えばブロックレベル）バックアップを行う。
【０００７】
上述及び本発明のその他の局面も、目標オペレーティングシステムを備えた目標システムの情報をアーカイブする方法を用いて、一括した実施形態で行うことができる。この方法は目標オペレーティングシステムを終了させ、代わりにアーカイブオペレーティングシステムを用いて再起動し、目標システムに保存されている情報をアーカイブすることを一括して行うことを含む。この方法では目標システム上でアーカイブオペレーティングシステムが稼動中にアーカイビングが行われる。一つの実施例では、アーカイビングはブロックレベルで行われ、アーカイビングプロセスを早めることができる。
【発明を実施するための最良の形態】
【０００８】
以下の図と共に、詳細説明及び請求範囲を参照することによって本発明の理解を深めることができる。図に記されている参照番号は一貫して各図面において同じエレメントを示している。
【０００９】
下記は単に典型的な実施形態の詳細説明にとどまり、本発明を限定したり、本発明の適用及び実用を制限するものではない。さらに、先の技術分野、背景、簡単な要約、またはこの詳細説明の中に記載されまたは示唆された理論に捕われることもない。
【００１０】
この説明の中で本発明は、機能的もしくはロジカルブロックコンポーネントとして、または様々な処理ステップによって表現されている。このようなブロックコンポーネントは特定の機能を実行するために構成された不特定多数のハードウェア、ソフトウェア且つ／またはファームウェアから成り立っていることを留意すべきである。例えば、発明の実施例はメモリ素子、論理素子、ルックアップ表、またその種のいろいろな集積回路構成要素を使用するかもしれない。それは一つ以上のマイクロプロセッサまたは他の制御装置の管理下でいろいろな機能を実行するかもしれない。それに加えて、この分野の専門家は本発明が多くのコンピュータハードウェア実装、ネットワーク構成、伝送プロトコルとデータ記憶フォーマットと関連して実施でき、そして、ここで記述されているシステムは本発明の単なる一つの典型的な応用例に過ぎないことが理解できるはずである。
【００１１】
コンピュータ装置、コンピュータネットワーク、データ伝送、データアーカイビング、データ通信、データ記憶、データ記憶媒体やその他のシステムの機能的要素（およびシステムの個々の動作要素）についての従来の技術に関してはここで詳述しない。さらにまた、ここで含まれている各々の図面に示されている線は、様々な要素間の機能的な関係や物理的な接続を表わすことが目的である。本発明の実施例において、これ以外の他の機能的な関係や物理的な接続があり得ることを留意する必要がある。
【００１２】
図１は本発明を応用できるネットワーク環境100の一例の略図である。説明の容易さのためにネットワーク環境100は簡易化されたアーキテクチュアで示されている。実際のアーキテクチャーにおいては追加及び／又は別の物理的要素または論理要素が含まれていることがある。ネットワーク環境100は、一般的に、アーカイビングサーバーシステム102、いくつかのクライアントコンポーネント104，106と108、目標システム110とこの目標システム110のために少なくとも記憶媒体装置111が一台、アーカイビングサーバーシステム102用に、少なくとも一台の記憶媒体装置112と、管理コンソール114を含む。記憶媒体装置111は目標システム110に接続するか、目標システム110に組み込まれるか、さもなければ、目標システム110と通信するように構成されることもある。同様に、記憶媒体装置112は、アーカイビングサーバーシステム102に接続されるか、アーカイビングサーバーシステム102に組み込まれるか、さもなければ、アーカイビングサーバーシステム102と通信するように構成されることもある。この説明の中では、単数扱いの「記憶装置」の使用は、特に明記しない限り複数の「記憶装置」を含む。さまざまなネットワーク構成要素は、一つ又はそれ以上のコミュニケーションリンク116を通して接続される。
【００１３】
目標システム110は、クライアント構成要素104、106と108（実際の応用例においては、目標システム110は、実際に操作を実行することが可能な限界まで、多くのクライアントコンポーネントをサポートすることができる）を支持するサーバーシステムを表す。アーカイビングサーバーシステム102と記憶媒体装置112は、障害や災害などが起きた際に、目標システムデータをアーカイブおよびバックアップし、そして、目標システムデータをリストアする機能を果たす。これに関して、有効なリストアツールを目標システム110に提供するために、記憶媒体装置112を、定期的に現在の目標システムデータによってリフレッシュしても良い。管理コンソール114はアーカイビングシステムをモニタリング、制御、もしくは管理するためのユーザインタフェースを提供する。したがって、管理コンソール114は目標システム110にある機能的な要素および／またはソフトウェア構成要素、クライアント構成要素、アーカイビングサーバーシステム102、またはネットワークにつながっているいかなる装置にもアクセスするために使用することができる。
【００１４】
図1で、アーカイビングサーバーシステム102、クライアント構成要素、目標システム110、記憶媒体装置111と記憶媒体装置112は、物理的なハードウェア構成要素、バーチャルマシンまたは論理的構成要素を表す。クライアント構成要素がいろいろなユーザーアプリケーションに関連するタスクを果たすように構成されているコンピュータであるかもしれないように、アーカイビングサーバーシステム102はここで記述されるアーカイビングサーバーアプリケーションタスク（そして、多分他のタスクも）を実行するように構成されるコンピュータであるかもしれない。この実施例において、クライアント構成要素は目標システム110によってストアされているか、さもなければ維持されているデータにアクセスできるように構成されている。通常、さらにここで記述されるように、アーカイビングサーバーシステム102は目標システム110によって維持されるデータのバックアップ記憶装置を管理する。実際の応用例において、目標システム110はネットワーク環境100で第１のノードに対応し、そして、アーカイビングサーバーシステム102はネットワーク環境100で第2のノードに対応するかもしれない。
【００１５】
ここで使われるように、「ノード」はネットワーク環境100で物理的な処理が行われる場所に言及する。そういう意味で、ノードはコンピュータまたは他の装置（例えばプリンター）でありえる。実用的なネットワークでは、各々のノードにはユニークなネットワークアドレスがあり、それは時には、Data Link Control（「DLC」）アドレスまたは媒体アクセス制御（「MAC」）アドレスと呼ばれている。
【００１６】
「サーバー」は、特にネットワーク環境で、管理、処理、保管、検索やデータの配送に関連する多くの機能と活動を実行するように構成されるコンピューターまたはシステムとしてしばしば定義される。あるいは、「サーバー」または「サーバーアプリケーション」は、そのようなプロセス、方法や技術を実行するソフトウェアを意味することもある。大部分の市販の多目的サーバーのように、本発明のアーカイビングシステムをサポートする実用的なサーバーコンポーネントはどんな適切なオペレーティングシステム（例えばUnix、Linux、アップルマッキントッシュOSまたはMicrosoft Windowsの応用システム）上でも動作するように構成されることができる、そして、それはIntelのPentiumファミリーのプロセッサやAdvanced Micro Devices, IBM, Sun MicrosystemsまたはMotorolaが販売しているプロセッサ装置などを含むマイクロプロセッサを使用することがある。
【００１７】
目標サーバーシステム110とアーカイビングサーバーシステム102に関して、それぞれのサーバープロセッサーは、システムメモリ（例えばランダムアクセスメモリの適当量）と記憶装置または「永久」メモリの適当量と通信する。目標システム110においては、記憶媒体デバイス111が、そのような永久メモリに該当し得る。永久メモリは、一つ以上のハードディスク、フロッピーディスク、CD-ROM、DVD-ROM、磁気テープ、リムーバブルメディア、半導体記憶装置またはその組合せを含む。公知の技術に従って、永久メモリおよびその一部に存在するオペレーティングシステムプログラムとサーバーアプリケーションプログラムは、動作中にシステムメモリへロードされる。コンピュータプログラミングの技術の専門家の経験に従って、本発明は、いろいろなサーバー構成要素またはクライアント構成要素によって実行されるオペレーションを抽象的表現によってここで説明される。そのようなオペレーションは時にはコンピュータによる実行、コンピュータ化、ソフトウェア実装、またはコンピュータ実装などと言及される。抽象的に表現されたオペレーションは、各種のマイクロプロセッサー装置によるシステムメモリの記憶位置においてデータビットを表わしている電気信号の処理（信号の他の処理と同様に）を含むことが理解できる。データビットが維持される記憶位置は、データビットに対応する特定の電気、磁気、光学もしくは有機の属性をもつ物理的位置である。
【００１８】
ソフトウェアでインプリメントされるとき、本発明のいろいろな要素は（それは、クライアント構成要素、目標システム110、またはアーカイビングサーバーシステム102に存在するかもしれない）、基本的に、様々なタスクを実行するコードセグメントまたは命令である。プログラムまたはコードセグメントは、プロセッサーで読取り可能な媒体に保存されることができるか、伝達媒体またはコミュニケーション経路上に搬送波に表現されるコンピュータデータ信号によって転送されることができる。「プロセッサーで読取り可能な媒体」または「機械で読み取ることができる媒体」には、情報をストアする、もしくは転送できるどんな媒体も含まれる。プロセッサーで読取り可能な媒体の例は、電子回路、半導体メモリデバイス、ROM、フラッシュメモリ、消去可能なROM（EROM）、フロッピーディスケット、CD-ROM、光ディスク、ハードディスク、光ファイバー媒体、無線周波数（RF）リンク、またはその種の他のものを含む。コンピュータデータ信号は、伝達媒体（例えば電子ネットワークチャンネル、光ファイバー、空気、電磁気の経路またはRFリンクなど）上を伝搬し得る任意の信号をも含む。コードセグメントは、インターネット、イントラネット、LAN、またはその種のコンピュータネットワークによってダウンロードされることが可能である。
【００１９】
実用的なアプリケーションでは、アーカイビングサーバーシステム102、目標システム110とクライアント構成要素は、どんな既知のコンピュータプラットホーム（例えばCompaq Alpha Tru64、FreeBSD、HP-UX、IBM、AIX、Linux、NCR MPRAS、SCO OpenServer、SCO Unixware、SGI Irix、Solaris（Sparc）、Solaris（Intel）、Windows 2000、Windows NTまたはNovell Netware）に従って構成されることが可能である。実用的なアプリケーションでは、記憶媒体装置111は、どんな既知のハードドライブでもまたはハードディスク技術（例えば記憶媒体装置111がパソコンなど商業用コンピューターや大規模なネットワークサーバーなどの例において典型的なように、一つ以上の従来のハードディスクを取り入れることがある）に従って構成されることが可能である。もちろん、本発明は特定のタイプの記憶テクノロジーに限定されるものではない、そして、記憶媒体装置111は将来開発されるかもしれない異なるテクノロジーを利用することが可能である。実用的なアプリケーションでは、記憶媒体装置112はどんな既知のテープ技術（DLT、8mm、4mmのDAT、DTF、LTO、AIT-3、SuperDLT、DTF2またはM2）でもまたはどんな既知の光ディスク技術（DVD-RAM、CD、またはその種の他のもの）、あるいは、記憶媒体装置111に使用されるあらゆる記憶媒体タイプに従って構成されることが可能である。実用的なアプリケーションでは、ネットワーク環境100は、また、多くのSAN/NAS装置（例えばAncor、Brocade Chaparral、Crossroads、EMC、FalconStor、Gadzoox、Network Appliance、Vixel）をサポートすることができる。簡潔さのために、これらの従来の装置とプラットホームについては、ここでは詳述しない。
【００２０】
本発明のデータアーカイブ方法によれば、オフラインの状態で目標システム110とアーカイブサーバーシステム102により、目標システムデータのバックアップを行うことが可能である。簡単にいえば、そのデータアーカイビングテクニックは目標システム110の通常のオペレーティングシステム（OS）を閉じ（そして、目標システム110の通常のOSに関連するファイルとアプリケーションを閉じる）、ここに記述されるアーカイビング手順を管理および／または実行するために構成された「置き換え」のOSで目標システム110を再起動し、そして、置き換えのOSが目標システム110上でまだ稼動中に目標システムデータのバックアップを実行する。バックアップをオフラインの状態で実行することによって、ファイル損傷の可能性を減少することができる。
【００２１】
図2は、ここで解説されるようなアーカイブシステムで利用可能な目標システム200の一部の略図である。目標システム200は目標OS 202とそれが維持または管理する、もしくはそれに対応している目標OSファイルシステム204を含む。実際の応用例では、目標OS 202は、Unix、Linux、Apple Machintosh OS、Microsoft Windowsまたは他の適したコンピュータOSであり得る。目標OSファイルシステム204は、目標OS 202と互換性をもつよう構成されている。図2で表されていないが、目標システム200は複数のオペレーティングシステムと複数の対応するファイルシステムをサポートすることが可能であり、本発明は一つのOSに限定される必要はない。基本的に、目標OS 202と目標OSファイルシステム204の構造と内容は目標システム200に対応しているかもしくは接続しているハードディスクまたは他のデータ記憶媒体装置にデータとして保存される。
【００２２】
目標システム200は、ブートパラメータセクター206を含むか、維持するか、またはアクセスする。実際の応用例で、ブートパラメータセクター206は、目標システム200のBIOSに対応する。ここで使われるように、「ブートパラメータ」はコンピューターの初期設定にかかわる情報で、またはコンピューター装置がスタートアップやリセットする時の初期設定の方法に影響を及ぼしたり、命令したりする情報またはデータのアイテムである。ブートパラメータの例としては（これに限定されないが）、BIOSプログラムまたはその任意の一部、BIOSプログラムによって定義される変数、別のネットワーク構成要素（例えばアーカイブサーバーシステムもしくはアーカイビングサーバーシステムのサーバーアプリケーション）のネットワークアドレス、またはBOOTP要求のようなネットワークブート要求などを含む。下で更に詳細に説明されるように、目標OS 202、アーカイブOS 208、または目標システム200がサポートするその他のOSの初期設定の必要性に応じてブートパラメータセクター206に含まれるブートパラメータを変更し、修正し、もしくは更新することができる。この事については、「通常の」オンラインオペレーションでは、目標システム200を、目標OS 202をロードさせる最初のセットのブートパラメータに応答して起動させることができる。対照的に、オフライン状態でアーカイブを実行するのに、目標システム200をアーカイブOS 208をロードさせる第2セットに応答して起動させることができる。
【００２３】
アーカイブOS 208は、ここで記述されるオフラインのデータバックアッププロシージャを管理し、制御し、さもなければ容易にする、目標システム200用の置き換えのOSである。アーカイブOS 208は、デフォルト目標OS 202の縮小されたバージョンであるかもしれない。アーカイブOS 208は目標OS 202の全機能を実装する必要はない。アーカイブ OS 208は特にここで記述されるアーカイブ機能を提供し、および／またはサポートするように構成されることができる。同様に、目標システム200は、時には、アーカイブ OS 208と互換性を持つように構成されるアーカイブ OS ファイルシステム209を含むこともあり得る。実際には、アーカイブ OS ファイルシステム 209の構造と構成は、目標 OS ファイルシステム 204の構造と構成と互換性を持っている。このことによって、特定のファイル構造を維持しながら目標データのバックアップ操作を容易にすることができる。
【００２４】
一つの好ましい実施例では、アーカイブ OS 208には、ブート変数が自由に変えられるように目標システム200のBIOSと交信するためのサブプログラムが含まれている。アーカイブOSファイルシステム209はアーカイブ OS 208に含まれることが可能で、アーカイブOSファイルシステム209は、アーカイブ OS 208やクライアントアプリケーションによって利用されるファイルを含むことがある。これによって、アーカイブOSファイルシステム209はメモリの中に含まれ、物理的なドライブには存在しない。アーカイブ OS 208は、また、目標システム200上でアーカイブ OS 208を起動させるオートメーションプロセスを実行するオートメーション化したプログラムまたはアプリケーションを含むことが可能である。
【００２５】
目標システム200は、また、オンラインアーカイブクライアントアプリケーション210を含むこともある。実施例においてはオンラインアーカイブクライアントアプリケーション210は目標OS 202がロードされているときなど、目標システム200の通常のオンラインオペレーション中にアクセスが可能である。従って、オンラインアーカイブクライアントアプリケーション210は、目標システム200にアプリオリにインストールされることができる。あるいは、たとえば、オンラインアーカイブクライアントアプリケーション210は、バックアップジョブの要求に応じて必要な時だけ、目標システム200にダイナミックにインストールされるか、「プッシュ」されることができる。ここで解説されるように、オンラインアーカイブクライアントアプリケーション210は、アーカイビングシステムのためにいろいろな機能を実行する。たとえば、オンラインアーカイブクライアントアプリケーション210は、アーカイビングシステム内の他のアプリケーションまたはプロセスと交信したり、アーカイビング手順をサポートする特定のアプリケーション、オペレーティングシステム、ハードウェアなどと交信したり、データを特定のアプリケーション、オペレーティングシステムまたはハードウェアから装置ハンドラーに転送したり、そして、バックアップジョブの詳細をアーカイビングサーバーシステムに維持されるジョブマネージャに報告したりする。オンラインアーカイブクライアントアプリケーション210はバックアップジョブの要求に応じて、ブートパラメータセクター206にセットされているデフォルトブートパラメータを変更できるように構成されていてもよい。
【００２６】
目標システム200は、オフラインアーカイブクライアントアプリケーション212を含むことがある。実施例において、オフラインアーカイブクライアントアプリケーション212はアーカイブOS 208がロードされている時など、目標システム200のオフライン中にアクセスすることができる。オフラインアーカイブクライアントアプリケーション212は目標システム200にアプリオリにインストールされ、バックアップジョブの要求またはアーカイブ OS 208の起動に応じてのみ起動されるようにすることが可能である。そのため、オフラインアーカイブクライアントアプリケーション212は、いくつかまたはそのソフトウェアコードの全てをオンライン アーカイブクライアントアプリケーション210と共有することがあり得る。あるいは、オフライン アーカイブクライアントアプリケーション212は、例えば、アーカイブOS 208と一緒にロードされる時など、必要に応じて目標システム200にダイナミックにインストールされるか、「プッシュ」されることができる。ここで解説されるように、オフラインアーカイブクライアントアプリケーション212はいろいろなアーカイブクライアント機能を実行する。例えば、たとえば、オフラインアーカイブクライアントアプリケーション212はアーカイビングシステム内の他のアプリケーションまたはプロセスと交信したり、アーカイビング手順をサポートする特定のアプリケーション、オペレーティングシステム、ハードウェアなどと交信したり、データを特定のアプリケーション、オペレーティングシステムまたはハードウェアから装置ハンドラーに転送したり、そして、バックアップジョブの詳細をアーカイビングサーバーシステムに維持されるジョブマネージャに報告したりする。オフラインアーカイブクライアントアプリケーション212が目標OS 202またはその関連したアプリケーションと通信することが実際には実行しないにしても、そのような通信は可能である。オフラインアーカイブクライアントアプリケーション212はバックアップジョブの完了に応じて、ブートパラメータセクター206にセットされているアーカイブブートパラメータを変更できるように構成されることが可能である。
【００２７】
目標システム200はネットワークマネージャ214をも含む。そして、ネットワークマネージャ214は、一つ以上のネットワーク経路、コミュニケーションリンク、またはその種の他のものを通して他のシステム、サブシステムやネットワークのコンポーネントとの通信を取り扱う。たとえば、ネットワークマネージャ214は、目標システム200と、アーカイビングサーバーシステム102、アーカイビングサーバーシステム102のOS、管理コンソール114などとの間の通信を容易にする。ネットワークマネージャは当業者に知られており、その役割についての説明はここでは省く。
【００２８】
図3は、ここで解説されるようなアーカイビングシステムで利用されるかもしれないアーカイビングサーバーシステム300の一例の略図である。アーカイビングサーバーシステム300はここに解説されるようなアーカイビング、バックアップ、そして復元機能を管理するアーカイビングサーバーアプリケーション302を含む。実際の実施例では、一つのアーカイビングサーバーシステムは、多くの目標システムをサポートするようにフレキシブルに構成されることができる。目標システム（例えば目標システム110）に関連したバックアップジョブ要求に応じて、アーカイビングサーバーシステム300は、要求をしている目標システムに、アーカイブ OS 304のコピーを提供することがある。目標システム200に関連して上述したように、アーカイブ OS 304はそれに適して構成されたアーカイブ OSファイルシステム306を含むこともある。バックアップジョブの要求に応じて、アーカイビングサーバーシステム300はまた、適切に構成されたオフラインアーカイブクライアントアプリケーション308を提供することもある（目標システム200の説明で上述したように）。このオフラインアーカイブクライアントアプリケーション308は、オフラインアーカイビングオペレーションを容易にするために、要求している目標システムへロードすることができる。実際には、アーカイブ OS 304は、アーカイビングサーバーシステム300のハードディスク上、アーカイビングサーバーシステム300によってアクセスできる可搬メディア（例えばCD-ROM、DVD-ROM、またはその種の他のもの）に、または目標システム200に付けられる可搬メディアに存在することがある。
【００２９】
アーカイビングサーバーシステム300は、ネットワークマネージャ310とメディアマネージャ312をも含む。アーカイビングサーバーシステム300は、一つ以上のネットワーク経路、コミュニケーションリンク、またはその種の他のものを通して、他のシステム、サブシステムやネットワークのコンポーネントとの通信を取り扱うことができる。たとえば、ネットワークマネージャ310は、アーカイビングサーバーシステム300と記憶媒体装置112、目標システム110、記憶媒体装置111、管理コンソール114などとの間の通信を取り扱う。ネットワークマネージャは当業者に知られており、その役割についての説明はここでは省く。メディアマネージャ312は、アーカイビングサーバーシステム300用の記憶媒体装置を取り扱う。たとえば、メディアマネージャ312は、記憶媒体装置の可用性、装置で利用される記憶媒体のタイプ、記憶装置の物理的なネットワーク位置、どの目標システムノードが特定の記憶装置にアクセスできるか、そして、目標システムデータをどのように記憶するのが最適か、などをモニターおよび／または取り扱う。ネットワークマネージャ310とメディアマネージャ312は、アーカイビングサーバーアプリケーション302および／またはアーカイビングサーバーシステム300のオペレーティングシステム（図示せず）によって管理される。
【００３０】
図4は、目標システムと関連する記憶媒体装置400に記憶されているデータの一例の略図である。図4は目標システムに組み込まれているか、つながれているかまたは通信しているハードディスク記憶装置のメモリアーキテクチャの一つの例を表わしている。記憶媒体装置400は、低レベルのアブストラクションで記憶されたデータを表わす多数のブロック402に、任意に分けられることができる。実際には、ハードディスクは通常一つ以上の金属製の円盤状記録媒体を含む。これらの円盤状記録媒体は、トラック、セクターとブロックに分けられる。トラックは円盤状記録媒体の表面上の同心の円またはリングを表わし、セクターは円盤状記録媒体（セクターは、円盤状記録媒体の「パイの一切れ」として考えられる）のある領域を表わし、そして、ブロックは特定のトラックのセクターに記憶された情報のことを示す。特に、ブロックレベルに保存されるデータはファイルまたはアプリケーションと対応していないので、そのようなデータは生データであると考えられる。言い換えると、ブロックレベルのデータは、単に「1」ビットと「0」ビットの集合である。ブロック402に記憶されているデータは、多数の論理パーティション404にグループ化されることが可能である。たとえば、1つのパーティションはLinux OSに対応し、また別のパーティションはWindows OSに対応することが可能である。記憶媒体装置400に記憶されるデータは、ファイルシステム層406でさらに区別が可能である。この層で、データは特定のファイル構造、ファイル名、アプリケーション、などに関して文脈上の意味を想定する。実際には、記憶媒体装置400に維持されている各々のOSは、ファイルシステム層406に存在する別個のファイルシステムを有する。記憶媒体装置400の上記説明は単に1つの実例に過ぎず、実際の記憶装置においては、多くの異なる方法で構成および分割されることができることを留意すべきである。
【００３１】
目標システムOS、ファイルとアプリケーションが閉じられている時など、目標システムがオフラインの間、本発明にかかるデータアーカイビングシステムは、ブロックレベルのデータバックアップを実行することができる。ファイルとアプリケーションを閉じることによって、復元する際に、ほとんどデータが破壊されずに済む。これは、データが静的な状態でデータアーカイビングシステムがバックアップを実行できるからである。さらに、データアーカイビングシステムはファイル構造、ファイルシステムまたは論理的データパーティションにかかわらず、効率よくブロック402をコピーし、そのデータを記憶することができる。パーティション情報が解読可能な（例えばSolarisやWindowsアプリケーション）とき、データアーカイビングシステムはまた、パーティションレベルでデータをアーカイブすることができる。ブロックレベルの技術は、従来の方法と比較して、大規模なデータ集約システムのバックアップとデータ回復を可能にする。たとえ目標システムが瞬時オフライン状態になっても、特に、サーバ稼働率が低い期間にスケジュールされれば、実際のダウンタイムは許容範囲内である。
【００３２】
図5は、本発明に従って構成されるアーカイビングシステムによって実行されるオフラインのデータバックアッププロセス500のフローチャートである。プロセス500と関連して実行される様々なタスクはソフトウェア、ハードウェア、ファームウェアまたはそのどんな組合せによっても実行可能である。説明の都合上、プロセス500の以下の説明において、図1〜4に関連した上述のエレメントを参照することもある。実施例において、プロセス500のある部分は、アーカイビングシステム（例えば目標システム110、目標OS 202、オンラインアーカイブクライアントアプリケーション210、オフラインアーカイブクライアントアプリケーション212、アーカイブ OS 208、アーカイビングサーバーシステム102、アーカイビングサーバーアプリケーション302、など）の異なる要素で実行されることがある。プロセス500が任意の数の追加のもしくは別のタスクを含むこともあり、図5で示されるタスクは必ずしも記述されている順序で実行される必要はなく、そして、プロセス500が、ここに詳述されていない付加的な機能性を持つもっと総合的なアーカイブプロセスやプログラムに組み込まれることも可能であることを留意すべきである。
【００３３】
オフラインのデータバックアッププロセス500は、適切に構成された自動データバックアッププログラムが目標システムにすでにインストールされ、そして、適切なバックアップジョブがすでに構成されている（例えば、スケジュール、復元内容、復元ロケーション、そして、その他のパラメータが設定されていること等）と仮定している。自動データバックアッププログラムは、たとえば、オンラインアーカイブクライアントアプリケーション210であるかもしれない。プロセス500も、目標システム110が再起動するために利用する特定の情報にアクセスが可能であると仮定する。この情報は、アーカイビングサーバーシステム102のためのネットワーク識別子（例えばネットワークアドレス）、アーカイビングサーバーシステム102にあるアーカイビングサーバーアプリケーションのためのネットワーク識別子（例えばネットワークアドレス）、または目標システム110が適切なブート情報を得るのにネットワークをポーリングするのを可能にするために適切に構成されたネットワークブートリクエスト（例えばBOOTPリクエスト）等を含むが、これに限定されるものではない。実施例では、この情報は目標システム110に記憶され、オンラインアーカイブクライアントアプリケーション210を通じて提供することが可能である。
【００３４】
オフラインデータバックアッププロセス500はタスク502で始まり、目標システム110のバックアップジョブを要求する。このバックアップ要求は、アーカイビングシステムによって維持される適切なスケジューラによって生成されるか（スケジューラは、目標システム110、アーカイビングサーバーシステム102、管理コンソール114またはどんなネットワーク位置にでも存在することが可能）、または管理コンソール114でのユーザー入力に応じて生成される可能性がある。実施例においては、アーカイビングサーバーアプリケーション302はバックアップジョブを要求し、そして、その要求は目標システム110を指定する。ジョブ要求に応じて、バックアップジョブの詳細は、適切な記憶位置から検索することができ、そのような情報は最終的にバックアップジョブを実行する際に使われる。
【００３５】
バックアップジョブに応じて、プロセス500は目標システム110の少なくとも1つのブートパラメータを変え、よって、アーカイブブートパラメータセット（タスク504）を作り出す。タスク504のある部分は、アーカイビングシステム（例えば目標システム110、目標OS 202、オンラインアーカイブクライアントアプリケーション210、アーカイビングサーバーシステム102、アーカイビングサーバーアプリケーション302、など）の異なる要素で実行される。これらの要素とそれらが対応するソフトウェア要素は、個々にまたは組合せで、目標システム110のデフォルトブートパラメータを変えるための手段のである。実施例においては、オンラインアーカイブクライアントアプリケーション210は、アーカイブブートパラメータセットを作るためにデフォルトまたは通常のブートパラメータセットを変えるか、またはデフォルトまたは通常のブートパラメータセットを置き換える。アーカイブブートパラメータセットは、目標OS 202の代わりにアーカイブ OS 208で目標システム100を再起動させるように構成されている。1つの実施例では、アーカイブブートパラメータセットは、アーカイビングサーバーシステム102にあるアーカイビングサーバーアプリケーションのようなネットワーク位置から目標システム110をブートできるように構成されている。このように、プロセス500は、異なる位置またソースから再起動するように、目標システム110に指示を出す。それによって、アーカイブOS 208の管理下の目標システム110によって維持されているデータのアーカイブを容易にするためにアーカイブOS 208を起動させる。
【００３６】
通常の目標OS 202が再起動の際にロードされないことを確実にするために、アーカイブブートパラメータセットは、目標システム110が異なるソースからブートするように仕向ける情報を含むこともある。上記のように、アーカイブブートパラメータセットは、アーカイビングサーバーシステム102のネットワークアドレス、アーカイビングサーバーアプリケーション302のネットワークアドレス及び/又は適切に構成されたネットワークブート要求を含むこともある。特定の実施例によっては、アーカイブブートパラメータセットに含まれるネットワークアドレスは、その従来の意味（すなわち、コンピュータまたはTCP/IPと互換性を持つネットワークの上の装置の識別番号）で使われる「IPアドレス」であるかもしれない。メッセージは、望ましい行き先のIPアドレスを使っているそのようなネットワークの中で経路制御される。現在の標準では、ピリオドによって４つに区切られた３２ビットの数値をIPアドレスのフォーマットとして使っており、その４つの数字は０から２５５までの数字で表現される。たとえば、1.234.56.78はIPアドレスの一例である。さらに、実用的なネットワークでは、各々のノードは、しばしば、Data Link Control（「DLC」）アドレスまたは媒体アクセス制御（「MAC」）アドレスと呼ばれる固有のネットワークアドレスを持つ。このように、アーカイブブートパラメータセットのネットワークアドレスは、DLCアドレス、MACアドレスまたはそれと同様のタイプの識別子であるかもしれない。実施例においては、アーカイビングシステムは、ネットワーク環境内で異なる「マシン名」をさまざまなノードに割り当てる命名規則を使用する。したがって、アーカイブブートパラメータセットは、アーカイビングサーバーシステム102のためのユニークなマシン名を含むこともある。ネットワークマネージャ及び/またはシステムの他の構成要素は、マシン名をネットワークまたはオペレーティングシステムと互換性を持つアドレス識別子（例えばIPアドレス）に変換する役割を果たす。
【００３７】
目標システム110を再起動する前に、オフラインデータバックアッププロセス500は、目標システム110（タスク506）によって維持されている全ての使用中ファイルとアプリケーションを閉じる。好ましい実施例においては、バックアップジョブ要求に応じて、タスク506は目標システム110（特に目標OS 202）によって自動的に実行される。あるいは、プロセス500は、単に開かれているファイルやアプリケーションの終了に関する指示または通知を提供するだけのこともある。目標システム110を再起動する前に、プロセス500は目標OS 202（タスク508）も閉じる。好ましい実施例においては, バックアップジョブの要求に応じて、タスク508は目標システム110 （特に目標OS 202）によって、自動的に実行される。通常、目標OS 202の終了は、オンラインアーカイブクライアントアプリケーション210、目標OS 202自体または目標システム110のどんな機能的な構成要素によっても実行され、コントロールされ、または決定されることができる。その意味では、目標システム110、オンラインアーカイブクライアントアプリケーション210、目標OS 202とそれらに対応するソフトウェア要素は、個々にまたは組合せで、目標OS 202を閉じるための方法の一例である。タスク506と508は、目標システム110のシャットダウン、リセット、そしてアーカイブ OS 208とのオフラインオペレーションが可能なように準備をする。
【００３８】
次に、オフラインデータバックアッププロセス500は、目標OS 202（タスク510）の代わりに、アーカイブOS 208で目標システム110を再起動する。アーカイブOSファイルシステム209は、また、この時に作成されることがある。目標システムの再起動プロセスの例については、図6と関連して下記に詳述されている。簡潔に言えば、タスク510はアーカイブブートパラメータセットにアクセスし、アーカイブ OS 208を使って再起動するよう目標システム110に指示する。一旦目標システム110が再起動されると、プロセス500は目標システム110（アーカイブ OS 208が目標システム110上でアクティブな状態で、アーカイビングは実行される）によって維持されているデータをアーカイブする。再び図1で示される例に言及して、アーカイビングプロシージャの実行より、ネットワーク環境100を通して、記憶媒体装置111に記憶されている目標データをバックアップして、目標データの回復コピーを記憶媒体装置112に保存する。アーカイブプロシージャのある部分は、アーカイビングシステム（例えば目標システム110、アーカイブ OS 208、アーカイブ OSファイルシステム209、オフラインアーカイブクライアントアプリケーション212、アーカイビングサーバーシステム102、アーカイビングサーバーアプリケーション302、記憶媒体装置111、記憶媒体装置112、など）の異なる要素によって実行されるかもしれない。これらの要素やそれに対応するソフトウェア要素は、個々にまたは組合せで、目標データをアーカイブする方法の一例である。実際のアーカイブプロシージャが実行される（例えばネットワーク環境100を使ってのデータのアクセス、転送、そして保存）特定の方法はここで記述される本発明にとっては重要ではなく、実際、プロセス500は、実際のデータ転送を実現するために、周知の技術を多く取り入れることができる。
【００３９】
実施例に従って、オフラインデータバックアッププロセス500は、記憶媒体装置111（タスク512）のブロックレベルのバックアップを実行することによって、目標データをアーカイブする。先に図4と関連して述べたように、プロセス500は目標データのハイレベルでのアーカイブを実行することができ（ファイルまたはアプリケーションは全て閉じているので）、ファイル構造、ファイルシステム情報または論理パーティション情報に関係なく、ブロックレベルの生データのバックアップも可能である。これは実際のバックアッププロセスを速め、結果的に目標システム110のダウンタイムを減らすことを可能にする。実際には、タスク512のアスペクトのいくつかは、アーカイビングサーバーシステム102の管理下で、記憶媒体装置111、記憶媒体装置112、および目標システム110によって実行されることができる。
【００４０】
目標システム110のデータがアーカイブされたあと、オフラインデータバックアッププロセス500はアーカイブブートパラメータセットの少なくとも1つのブートパラメータを変更し、これにより、リストアされたブートパラメータセットを作成する（タスク514）。実施例において、オフラインアーカイブクライアントアプリケーション212は、デフォルトか通常のブートパラメータをリストアするために、既存のブートパラメータセットを変えるか、既存のブートパラメータを置き換える。リストアされたブートパラメータセットは、アーカイブ OS 208の代わりに目標OS 202で目標システム110を再起動させるように構成されている。実施例においては、リストアされたブートパラメータセットは、従来の方法で目標OS 202で目標システム110を起動させるように構成されている。
【００４１】
目標システム110を再々起動する前に、オフラインデータバックアッププロセス500は、目標システム110に維持されている使用中のファイルやアプリケーションを全て閉じる（タスク516）。別のアーカイビングサーバーアプリケーションが同じ目標システムをバックアップしている最中でない限り、タスク516は実際的な配備において実行される必要はない。一つのアプリケーションが別のアプリケーションのオペレーション完了前にリスタートする時を除いては複数のアーカイビングアプリケーションのバックアップは同時に実行することができる。一つの実施形態においては、タスク516は目標システム110（特にアーカイブOS208によって）によって自動的に実行される。あるいは、プロセス500は単にオープンファイルとアプリケーションの終了に関連した指示または通知を提供するだけかもしれない。目標システム110の再々起動の前に、プロセス500はアーカイブ OS 208（タスク518）も閉じる。好ましい実施形態において、タスク518もまた、目標システム110（特にアーカイブ OS 208によって）によって自動的に実行される。タスク516と518は、目標システム110のシャットダウン、リセット、そして目標OS 202とのオンラインオペレーションを再開することが可能なように準備をする。実際には、タスク516はタスク518と関連して実現される。
【００４２】
次に、オフラインデータプロセス500は、アーカイブ OS 208の代わりに、目標OS 202で目標システム110を再度リブートさせる（タスク520）。簡潔に言えば、タスク520はリストアされたブートパラメータセットにアクセスし、それは目標システム110に目標OS 202を使ってリブートするように指示する。一旦目標システム110が再起動されたならば、プロセス500は終了し、目標システムは通常のオンライン状態で作動する。
【００４３】
図６は、本発明に従って構成されるアーカイビングシステムによって実行される目標システムリブーティングプロセス600のフローチャートである。プロセス600と関連して実行される様々なタスクはソフトウェア、ハードウェア、ファームウェアまたはそのどんな組合せによっても実行可能である。説明の都合上、プロセス600の以下の説明において、図1〜3に関連した上述のエレメントを参照することもある。実施形態において、プロセス600のある部分は、アーカイビングシステム（例えば目標システム110、アーカイビングサーバーシステム102、アーカイビングサーバーアプリケーション302、など）の異なる要素で実行されることがある。その意味では、これらの要素およびこれらに対応するソフトウェア要素は、個々にまたはその組み合わせにおいて、アーカイブOS 208で目標システム110をリブートする方法の一例である。プロセス600が多くの追加のもしくは別のタスクを含むこともあり、図6で示されるタスクは必ずしも記述されている順序で実行される必要はなく、そして、プロセス600が、ここに詳述されていない付加的な機能性をもつもっと総合的なアーカイブプロセスやプログラムに組み込まれることも可能であることを留意すべきである。
【００４４】
目標システムリブーティングプロセス600は、目標システム110（図5参照）のリセットで実行される。プロセス600は、オフラインデータバックアッププロセス500のタスク510と関係して実行される。プロセス 600は、目標システム110に維持されているアーカイブブートパラメータセットにアクセスすることから開始する（タスク602）。上記のように、アーカイブブートパラメータセットは、目標システム110によって利用されるデフォルトまたは通常のブートパラメータの変更されたバージョンを表している。この実施形態においては、アーカイブブートパラメータセットは、目標システム110をネットワークからブートさせるためのデータを含む。このように、プロセス600は、アーカイブ OSブート情報（タスク604）のためのネットワーク位置を取得し、これは、ブートプロセスを特定のネットワーク位置に導く。
【００４５】
実用的な実施例では、アーカイブブートパラメータセットはアーカイビングサーバーシステム102のネットワークアドレスまたはアーカイビングサーバーアプリケーション302のネットワークアドレスを含み、そのネットワークアドレスは、アーカイブOSブート情報のための位置を一意に指定する。あるいは、アーカイブブートパラメータセットは、目標システム110が必要なブート情報を得るためにネットワークに問い合わせもしくはポーリングすることを可能にするネットワークブート要求（例えばBOOTP要求）を含むかもしれない。Bootstrap Protocol（「BOOTP」）は、ネットワークユーザーが自動設定され（IPアドレスを受ける）、人力を介さず、OSを立ち上げられることを可能にするプロトコルである。BOOTPサーバー（ネットワークアドミニストレータによって管理される）は、特定の期間、アドレスのプールから、自動的にIPアドレスを割り当てる。Bootstrap Protocolに従って、ネットワーク構成要素はBOOTP要求を受け、必要な場合、適当なブート情報を提供する。BOOTP要求に応じて、アーカイビングサーバーシステム102または適切な任意のアプリケーションまたはサービスは、関連したブート情報を目標システム110に提供することによって応答する。実際には、ブート情報（実施例においては、アーカイブ OS、アーカイブ OSファイルシステム、およびオフラインアーカイブクライアントアプリケーションを含んでいるイメージを含む）は、簡易版ファイル転送プロトコル（Trivial File Transfer Protocol：TFTP）またはその他の適当なデータ通信テクニックによって提供されることができる。ブート情報は、それは限られた記憶容量（例えば1.44メガバイトのフロッピーディスク）をもつ可搬の媒体に保存されることができるよう、「薄い」ことが望ましい。TFTP、Boot ProtocolとBOOTP要求の従来の局面についてこの分野の専門家に説明する必要はなく、したがって、ここで詳述しない。
【００４６】
タスク604に応じて、目標システムリブーティングプロセス600は、適用できるネットワーク位置（タスク606）もしくは可搬の記憶媒体から再起動を実行する。1つの実用的な実施例では、アーカイビングサーバーシステム102は、アーカイブ OS 208とアーカイブ OSファイルシステム209を目標システム110が使えるようにする。タスク606は、また、オフラインアーカイブクライアントアプリケーション212を目標システム110が使えるようにする。それによって、アーカイビングサーバーシステム102は、アーカイブ OS 208を記憶媒体装置112上に、そのハードディスク上、またはCD-ROMのような可搬の記憶媒体上に保存しておくかもしれない。最終的には、目標システム110は指定されたネットワーク位置（タスク608）からアーカイブ OS 208を受け取り、そして、プロセス600は目標システム110にアーカイブ OS 208をロードする（タスク610）。アーカイブブートパラメータセットは、アーカイブ OS 208の立ち上げを決定する更なる指示または情報を提供することがある。
【００４７】
1つの実施例では、一旦アーカイブ OS 208が実行されると、アーカイブ OS 208は、ネットワーク上に（タスク612）MACアドレスをブロードキャストする。MACアドレスは受信され、適切に構成されたDHCP（Dynamic Host Configuration Protocol）サーバーで処理され、MACアドレスを解決し、そして、目標システム110にIPアドレスを渡す。簡潔に言えば、DHCPはネットワークにおいて自動的にIPアドレス割り当てる通信プロトコルである。DHCPを使って、ネットワーク管理者はIPアドレスを一元管理し、割り当てることができ、必要に応じて自動的にIPアドレスを提供することができる。目標システム110は最終的にDHCPサーバー（タスク614）からIPアドレスを受け取り、そして、そのIPアドレスは目標システム110とアーカイビングサーバーシステム102の間でメッセージングを容易にする。タスク612と614は従来のDHCPルーティングプロシージャを表わしているので、このプロシージャについての詳細はここで省く。
【００４８】
オフラインデータバックアッププロセス500の複数のインスタンスを同時実行あるいは時差実行することで、ネットワークに接続している不特定多数の目標システムのアーカイブが可能になることを留意しておくべきである。そのような複数の目標システムは、一つのアーカイビングサーバーシステム102もしくは不特定多数のアーカイビングサーバーシステムによってサポートされることができる。同時進行で複数の目標システムのオフラインアーカイビングを行うには、アーカイビングサーバーシステムは、各々の目標システム上にアーカイブ OSのコピーをロードする。
【００４９】
アーカイビングシステムは、また、自動的にオフラインのリストアプロシージャを上述の技術を使って実行できるように構成することも可能である。簡単には、リストアプロシージャは、目標システムの通常のブートパラメータをリストアすることによって、目標システムが代わりのOSによってネットワークから再起動できるようにする。上述のアーカイブプロシージャと同様に、リストアプロシージャは通常のブートパラメータを変更することによって、目標システムが前もって決められたアーカイビングサーバーシステムにより起動できるようにする。再起動したときに、目標システムは、一つ以上の記憶媒体装置にアーカイブデータが保存されている状態で、オフラインでリストアすることができる。その後で、目標システムのブートパラメータはリストアされ、目標システムはオンライン操作を再開するために通常のOSで再起動される。
【００５０】
少なくとも1つの典型的な実施例が前述の詳細な説明に示されているが、多数のバリエーションが存在することに留意すべきである。また、これらの実施例は単なる一例であって、本発明の範囲、適用性または構成を制限する意図はないことを留意すべきである。むしろ、前述の詳細な説明は、この分野の専門家が容易にこれらの実施例を実施できるように便利なロードマップを提供したに過ぎない。添付の請求範囲に述べられているような本発明の範囲から逸脱することなく、機能や要素の配置に追加の変更が加えられることが可能であることを理解しておく必要がある。
【図面の簡単な説明】
【００５１】
【図１】図１は本発明が応用可能なネットワークの一例の略図である。
【図２】図２は目標システムの一例の一部の略図である。
【図３】図３はアーカイビングサーバーの一例の一部の略図である。
【図４】図４は目標システムに付随している記憶媒体装置に記憶されている情報の一例の略図である。
【図５】図５は本発明に従って構成されたアーカイビングシステムによって行われるオフラインバックアッププロセスをフローチャートで表わしたものである。
【図６】図６は本発明に従って構成されたアーカイビングシステムによって実行可能な目標システムのリブートプロセスをフローチャートで表わしたものである。
【図１】
2006120132.tif 000003
【図２】
2006120132.tif 000004
【図３】
2006120132.tif 000005
【図４】
2006120132.tif 000006
【図５】
2006120132.tif 000007
【図６】
2006120132.tif 000008
【外国語明細書】
2006120132000001.pdf