(57)【要約】【課題】バックアップ容量を削減する。【解決手段】バックアップ制御装置が、第一の情報資源の格納場所を表す第一の格納場所情報と、第一の情報資源に重複する第二の情報資源の格納場所を表す第二の格納場所情報とを含んだ重複管理情報を参照し、バックアップ範囲に属する複数の情報資源の中から、上記第一の格納場所情報が表す場所に格納されている第一の情報資源と、該第一の格納場所情報に対応する第二の格納場所情報が表す場所に格納されている第二の情報資源とを特定する。そして、特定された第二の情報資源を、特定された第一の情報資源への関連付けを表す関連付け情報に置換し、その第二の情報資源が関連付け情報に置換されたバックアップ範囲をバックアップする。【選択図】図１
2008033519.tif 000002
【特許請求の範囲】
【請求項１】
第一の情報資源が格納されている場所を表す第一の格納場所情報と、該第一の情報資源に重複する第二の情報資源が格納されている場所を表す第二の格納場所情報とを含んだ重複管理情報を記憶する重複管理記憶域と、
バックアップ範囲に属する複数の情報資源の中から、前記第一の格納場所情報が表す場所に格納されている第一の情報資源と、該第一の格納場所情報に対応する第二の格納場所情報が表す場所に格納されている第二の情報資源とを特定する重複特定部と、
前記特定された第二の情報資源を、前記特定された第一の情報資源への関連付けを表す関連付け情報に置換する情報置換制御部と、
前記第二の情報資源が前記関連付け情報に置換された前記バックアップ範囲をバックアップするバックアップ部と
を備えるバックアップ制御装置。
【請求項２】
前記第一の情報資源は、複製元の情報資源であり、前記第二の情報資源は、前記複製元の情報資源を複製することにより生成された複製先の情報資源である、
請求項１記載のバックアップ制御装置。
【請求項３】
或る情報資源を複製することにより別の情報資源を格納する複製部と、
前記或る情報資源が格納されている場所を表す第一の格納場所情報と、前記別の情報資源が格納された場所を表す第二の格納場所情報とを、前記重複管理情報に追加する重複管理追加部と
を更に備える請求項２記載のバックアップ制御装置。
【請求項４】
情報資源を更新する情報資源更新部と、
更新された情報資源の格納場所を表す格納場所情報が前記重複管理情報に含まれている場合に、該格納場所情報とその格納場所に対応付けられている格納場所情報とを前記重複管理情報から削除する重複管理削除部と
を更に備える請求項１記載のバックアップ制御装置。
【請求項５】
情報資源の格納場所を別の格納場所に変更する情報資源移動部と、
変更前の格納場所を表す変更前場所情報が前記重複管理情報に含まれている場合に、その変更前場所情報を、前記別の格納場所を表す情報に変更する重複管理変更部と
を更に備える請求項１記載のバックアップ制御装置。
【請求項６】
情報資源の格納場所を別の格納場所に変更する情報資源移動部と、
前記別の格納場所を表す情報が前記重複管理情報に含まれている場合に、その情報と、その情報に対応付けられている格納場所情報とを、前記重複管理情報から削除する重複管理削除部と
を更に備える請求項１記載のバックアップ制御装置。
【請求項７】
前記情報資源が、ファイルシステムにて管理されるディレクトリ及び／又はファイルである、
請求項１記載のバックアップ制御装置。
【請求項８】
前記関連付け情報は、前記第二の情報資源を基点とした前記第一の情報資源への相対的なパス名で構成されるシンボリックリンク情報を含む、
請求項１記載のバックアップ制御装置。
【請求項９】
前記バックアップ対象に属する複数の情報資源は、多数の情報資源のうちの一部であり、
前記情報置換制御部は、前記第二の情報資源に重複する前記第一の情報資源が前記バックアップ対象に属するか否かを判断し、第一の情報資源が該バックアップ対象に属しない場合には、前記第二の情報資源を前記関連付け情報に置換せず、
前記バックアップ部は、前記関連付け情報に置換されていない前記第二の情報資源を含んだバックアップ範囲をバックアップする、
請求項１記載のバックアップ制御装置。
【請求項１０】
前記第一の情報資源は、複製元のファイルであり、前記第二の情報資源は、前記複製元のファイルを複製することにより生成された複製先のファイルであり、
前記関連付け情報は、前記第二のファイルを基点とした前記第一のファイルへの相対的なパス名で構成されるシンボリックリンクファイルであり、
前記バックアップ対象に属する複数の情報資源は、多数の情報資源のうちの一部であり、
前記バックアップ制御装置は、
或るファイルを複製することにより別のファイルを格納する複製部と、
前記或るファイルが格納されている場所を表す第一の格納場所情報と、前記別のファイルが格納された場所を表す第二の格納場所情報とを、前記重複管理情報に追加する重複管理追加部と、
ファイルを更新する情報資源更新部と、
更新されたファイルの格納場所を表す格納場所情報が前記重複管理情報に含まれている場合に、該格納場所情報とその格納場所に対応付けられている格納場所情報とを前記重複管理情報から削除する重複管理削除部と
を更に備え、
前記情報置換制御部は、前記第二のファイルに重複する前記第一のファイルが前記バックアップ対象に属するか否かを判断し、第一の情報資源が該バックアップ対象に属しない場合には、前記第二のファイルを前記シンボリックリンクファイルに置換せず、
前記バックアップ部は、前記シンボリックリンクファイルに置換されていない前記第二のファイルを含んだバックアップ範囲をバックアップする、
請求項１記載のバックアップ制御装置。
【請求項１１】
複数のバックアップ制御装置で構成された制御装置システムであって、
前記複数のバックアップ制御装置の各々が、それぞれ、複数の情報資源を管理する情報資源管理部と、自分及び／又は前記複数のバックアップ制御装置のうちの他のバックアップ制御装置が管理する複数の情報資源のうちのバックアップ範囲に属する二以上の情報資源をバックアップするバックアップ部とを備え、
前記複数のバックアップ制御装置のうちの少なくとも一つが、
自分が管理する第一の情報資源が格納されている場所を表す第一の格納場所情報と、該第一の情報資源に重複する第二の情報資源が格納されている場所を表す第二の格納場所情報とを含んだ重複管理情報を記憶する重複管理記憶域と、
バックアップ範囲に属する二以上の情報資源の中から、前記第一の格納場所情報が表す場所に格納されている第一の情報資源と、該第一の格納場所情報に対応する第二の格納場所情報が表す場所に格納されている第二の情報資源とを特定する重複特定部と、
前記特定された第二の情報資源を、前記特定された第一の情報資源への関連付けを表す関連付け情報に置換する情報置換制御部と
を備え、前記少なくとも一つのバックアップ制御装置のバックアップ部が、前記第二の情報資源が前記関連付け情報に置換された前記バックアップ範囲をバックアップする、
制御装置システム。
【請求項１２】
前記複数のバックアップ制御装置のうちの、前記少なくとも一つのバックアップ制御装置以外の他のバックアップ制御装置が、
自分が管理する複数の情報資源のうちのいずれかを複製、更新又は移動する所定処理を実行する所定処理実行部と、
前記所定処理を実行した場合に、該所定処理に関わる情報を、前記少なくとも一つのバックアップ制御装置に通知する通知部と
を備え、
前記少なくとも一つのバックアップ制御装置が、
前記所定処理に関わる情報を受信する受信部と、
前記受信した情報を用いて前記重複管理情報を更新する重複管理更新部と
を備える、
請求項１１記載の制御装置システム。
【請求項１３】
前記所定処理が複製の場合、前記所定処理に関わる情報は、複製元の情報資源が格納されている場所を表す第一の格納場所情報と、複製先の情報資源が格納された場所を表す第二の格納場所情報とを含み、
前記重複管理更新部が、前記受信した第一の格納場所情報と第二の格納場所情報とを前記重複管理情報に追加する、
請求項１１記載の制御装置システム。
【請求項１４】
前記所定処理が更新の場合、前記所定処理に関わる情報は、更新された情報資源が格納されている場所を表す格納場所情報を含み、
前記重複管理更新部が、前記受信した格納場所情報とそれに対応する格納場所情報とを前記重複管理情報から削除する、
請求項１１記載の制御装置システム。
【請求項１５】
前記所定処理が移動の場合、前記所定処理に関わる情報は、移動元の情報資源が格納されている場所を表す第一の格納場所情報と、移動先の情報資源が格納された場所を表す第二の格納場所情報とを含み、
前記重複管理更新部が、前記受信した第一の格納場所情報に一致する、前記重複管理情報中の格納場所情報を、前記受信した第二の格納場所情報に変更する、
請求項１１記載の制御装置システム。
【請求項１６】
前記少なくとも一つのバックアップ制御装置とは、前記複数のバックアップ制御装置の全てであり、
各バックアップ制御装置が、更に、
自分が管理する複数の情報資源のうちのいずれかを複製、更新又は移動する所定処理を実行する所定処理実行部と、
前記所定処理を実行した場合に、該所定処理に関わる情報を、前記複数のバックアップ制御装置の自分以外のバックアップ制御装置に通知する通知部と、
前記所定処理に関わる情報を受信する受信部と、
前記受信した情報を用いて前記重複管理情報を更新する重複管理更新部と
を備える、
請求項１１記載の制御装置システム。
【請求項１７】
第一の情報資源が格納されている場所を表す第一の格納場所情報と、該第一の情報資源に重複する第二の情報資源が格納されている場所を表す第二の格納場所情報とを含んだ重複管理情報を参照し、
バックアップ範囲に属する複数の情報資源の中から、前記第一の格納場所情報が表す場所に格納されている第一の情報資源と、該第一の格納場所情報に対応する第二の格納場所情報が表す場所に格納されている第二の情報資源とを特定し、
前記特定された第二の情報資源を、前記特定された第一の情報資源への関連付けを表す関連付け情報に置換し、
前記第二の情報資源が前記関連付け情報に置換された前記バックアップ範囲をバックアップする、
バックアップ制御方法。
【請求項１８】
前記第一の情報資源は、複製元の情報資源であり、前記第二の情報資源は、前記複製元の情報資源を複製することにより生成された複製先の情報資源である、
請求項１７記載のバックアップ制御方法。
【請求項１９】
前記情報資源が、ファイルシステムにて管理されるディレクトリ及び／又はファイルである、
請求項１７記載のバックアップ制御方法。
【請求項２０】
前記関連付け情報は、前記第二の情報資源を基点とした前記第一の情報資源への相対的なパス名で構成されるシンボリックリンク情報を含む、
請求項１７記載のバックアップ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステムに保存された情報資源のバックアップの制御に関する。
【背景技術】
【０００２】
近年、コンピュータシステムの高性能化ならびに低価格化により、様々な業種や用途においてコンピュータシステムの利用が広がっている。これに伴い、従来は紙媒体などで扱っていた情報資源についても電子化がなされ、コンピュータシステムにおいて電子的に保存されるようになってきている。さらに、コンピュータシステムの利用が急速に進むにつれて、コンピュータシステムに保存される情報資源量も増大している。このため、災害や誤操作などから大事な情報資源を守るためのバックアップ技術に対する重要性も増している。
【０００３】
従来、情報資源をバックアップする場合、実運用に対する影響を小さくするために、効率よくバックアップ処理を実行する技術が重要視されていた。例えば、バックアップ処理を制御するバックアップサーバと、バックアップ対象のデータを管理するデータサーバとの間でバックアップ処理を実行するためのプロトコルとして、NDMP（Network Data Management Protocol）が規定され、開示されている（非特許文献１）。
【０００４】
また、複数のコンピュータシステムをネットワークに接続することにより構築されるネットワークシステムの高速化ならびに低価格化に伴い、そうしたネットワークシステムが多数構築され、利用されるようになってきている。このような環境においても、情報資源をバックアップすることに対する重要性は変わらない。特に、複数のコンピュータシステムに格納されている情報資源を、効率よく一括にバックアップできるようにすることは、実運用に対する影響を小さくするためにも重要になる。例えば、複数のコンピュータシステムを一つの名前空間で統合し、利用者に対してコンピュータシステムの違いを意識させることなく透過的に情報資源にアクセス可能にしている環境において、当該名前空間を構成するコンピュータシステムにて格納されている情報資源を効率よくバックアップする技術が開示されている（特許文献１）。
【０００５】
【特許文献１】US Patent 6,026,414
【非特許文献１】NDMPプロトコルversion3(ftp://ftp.ndmp.org/pub/version.3/doc/ndmp_draft_v3_0.pdf)
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、非特許文献１記載の技術では、コンピュータシステムに保存されている情報資源の量については、一切関知せず、指定された分量をそのままバックアップする。このため、バックアップ元のコンピュータシステムに、情報資源の複製などで同じ内容を持つ情報資源が複数個存在する場合は、バックアップ先にて同じ内容の情報資源を複数個保管しておくことになる。これにより、バックアップ容量（バックアップ対象の一又は複数の情報資源のトータル情報サイズ）が増大してしまうという問題を引き起こす。
【０００７】
また、特許文献１記載の技術でも同様に、複数のコンピュータシステム間において、情報資源の複製などで同じ内容を持つ情報資源が複数個存在する場合は、バックアップ先にて同じ内容の情報資源を複数個保管しておくことになる。これにより、バックアップ容量が増大してしまうという問題を引き起こす。
【０００８】
従って、本発明の目的は、バックアップ容量を削減することにある。
【課題を解決するための手段】
【０００９】
本発明に従うバックアップ制御装置は、重複管理記憶域と、重複特定部と、情報置換制御部と、バックアップ部とを備える。重複管理記憶域は、第一の情報資源が格納されている場所を表す第一の格納場所情報と、該第一の情報資源に重複する第二の情報資源が格納されている場所を表す第二の格納場所情報とを含んだ重複管理情報を記憶する。重複特定部は、バックアップ範囲に属する複数の情報資源の中から、前記第一の格納場所情報が表す場所に格納されている第一の情報資源と、該第一の格納場所情報に対応する第二の格納場所情報が表す場所に格納されている第二の情報資源とを特定する。情報置換制御部は、前記特定された第二の情報資源を、前記特定された第一の情報資源への関連付けを表す関連付け情報に置換する。バックアップ部は、前記第二の情報資源が前記関連付け情報に置換された前記バックアップ範囲をバックアップする。
【００１０】
このバックアップ制御装置は、例えば、後述のファイルサーバ、或いはファイルサーバとバックアップサーバとの組み合わせで構築することができる。また、情報資源とは、情報が書かれる資源であり、例えば、ファイル及び／又はディレクトリである。
【００１１】
重複管理情報で管理される格納場所情報は、物理的な場所を表す情報であってもよいし、論理的な場所を表す情報でもよいし、両者を組み合わせた場所を表す情報であってもよい。また、重複管理情報で管理する格納場所情報の種類や単位は問わない。例えば、情報資源をファイル単位に管理するファイルシステムを対象にする場合は、ファイル単位とすることができる。また、例えば、複数ファイルを束ねたディレクトリ単位あるいは複数ディレクトリやファイルを束ねたファイルシステム単位に複製構成情報を管理してもよい。また、データベースなどのように、固定長単位で情報を扱うシステムを対象にする場合は、固定ブロック単位あるいは複数ブロックを束ねたボリューム単位に複製構成情報を管理してもよい。
【００１２】
第一の実施態様では、前記第一の情報資源は、複製元の情報資源であり、前記第二の情報資源は、前記複製元の情報資源を複製することにより生成された複製先の情報資源である。
【００１３】
第二の実施態様では、前記第一の実施態様において、バックアップ制御装置が、或る情報資源を複製することにより別の情報資源を格納する複製部と、前記或る情報資源が格納されている場所を表す第一の格納場所情報と、前記別の情報資源が格納された場所を表す第二の格納場所情報とを、前記重複管理情報に追加する重複管理追加部とを更に備える。
【００１４】
第三の実施態様では、バックアップ制御装置が、情報資源を更新する情報資源更新部と、更新された情報資源の格納場所を表す格納場所情報が前記重複管理情報に含まれている場合に、該格納場所情報とその格納場所に対応付けられている格納場所情報とを前記重複管理情報から削除する重複管理削除部とを更に備える。
【００１５】
第四の実施態様では、バックアップ制御装置が、情報資源の格納場所を別の格納場所に変更する情報資源移動部と、変更前の格納場所を表す変更前場所情報が前記重複管理情報に含まれている場合に、その変更前場所情報を、前記別の格納場所を表す情報に変更する重複管理変更部とを更に備える。
【００１６】
第五の実施態様では、バックアップ制御装置が、情報資源移動部と、重複管理削除部とを備える。情報資源移動部は、情報資源の格納場所を別の格納場所に変更する。重複管理削除部は、前記別の格納場所を表す情報が前記重複管理情報に含まれている場合に、その情報と、その情報に対応付けられている格納場所情報とを、前記重複管理情報から削除する。
【００１７】
第六の実施態様では、前記情報資源が、ファイルシステムにて管理されるディレクトリ及び／又はファイルである。
【００１８】
第七の実施態様では、前記関連付け情報は、前記第二の情報資源を基点とした前記第一の情報資源への相対的なパス名で構成されるシンボリックリンク情報を含む。
【００１９】
第八の実施態様では、前記バックアップ対象に属する複数の情報資源は、多数の情報資源のうちの一部である。前記情報置換制御部は、前記第二の情報資源に重複する前記第一の情報資源が前記バックアップ対象に属するか否かを判断し、第一の情報資源が該バックアップ対象に属しない場合には、前記第二の情報資源を前記関連付け情報に置換しない。前記バックアップ部は、前記関連付け情報に置換されていない前記第二の情報資源を含んだバックアップ範囲をバックアップする。
【００２０】
第九の実施態様では、前記第一の情報資源は、複製元のファイルであり、前記第二の情報資源は、前記複製元のファイルを複製することにより生成された複製先のファイルである。前記関連付け情報は、前記第二のファイルを基点とした前記第一のファイルへの相対的なパス名で構成されるシンボリックリンクファイルである。前記バックアップ対象に属する複数の情報資源は、多数の情報資源のうちの一部である。前記バックアップ制御装置は、或るファイルを複製することにより別のファイルを格納する複製部と、前記或るファイルが格納されている場所を表す第一の格納場所情報と、前記別のファイルが格納された場所を表す第二の格納場所情報とを、前記重複管理情報に追加する重複管理追加部と、ファイルを更新する情報資源更新部と、更新されたファイルの格納場所を表す格納場所情報が前記重複管理情報に含まれている場合に、該格納場所情報とその格納場所に対応付けられている格納場所情報とを前記重複管理情報から削除する重複管理削除部とを更に備える。前記情報置換制御部は、前記第二のファイルに重複する前記第一のファイルが前記バックアップ対象に属するか否かを判断し、第一の情報資源が該バックアップ対象に属しない場合には、前記第二のファイルを前記シンボリックリンクファイルに置換しない。前記バックアップ部は、前記シンボリックリンクファイルに置換されていない前記第二のファイルを含んだバックアップ範囲をバックアップする。
【００２１】
本発明に従う制御装置システムでは、複数のバックアップ制御装置の各々が、それぞれ、複数の情報資源を管理する情報資源管理部と、自分及び／又は前記複数のバックアップ制御装置のうちの他のバックアップ制御装置が管理する複数の情報資源のうちのバックアップ範囲に属する二以上の情報資源をバックアップするバックアップ部とを備える。そして、前記複数のバックアップ制御装置のうちの少なくとも一つが、自分が管理する第一の情報資源が格納されている場所を表す第一の格納場所情報と、該第一の情報資源に重複する第二の情報資源が格納されている場所を表す第二の格納場所情報とを含んだ重複管理情報を記憶する重複管理記憶域と、バックアップ範囲に属する二以上の情報資源の中から、前記第一の格納場所情報が表す場所に格納されている第一の情報資源と、該第一の格納場所情報に対応する第二の格納場所情報が表す場所に格納されている第二の情報資源とを特定する重複特定部と、前記特定された第二の情報資源を、前記特定された第一の情報資源への関連付けを表す関連付け情報に置換する情報置換制御部とを備える。前記少なくとも一つのバックアップ制御装置のバックアップ部が、前記第二の情報資源が前記関連付け情報に置換された前記バックアップ範囲をバックアップする。
【００２２】
第一の実施態様では、前記複数のバックアップ制御装置のうちの、前記少なくとも一つのバックアップ制御装置以外の他のバックアップ制御装置が、自分が管理する複数の情報資源のうちのいずれかを複製、更新又は移動する所定処理を実行する所定処理実行部と、前記所定処理を実行した場合に、該所定処理に関わる情報を、前記少なくとも一つのバックアップ制御装置に通知する通知部とを備える。この場合、前記少なくとも一つのバックアップ制御装置が、前記所定処理に関わる情報を受信する受信部と、前記受信した情報を用いて前記重複管理情報を更新する重複管理更新部とを備える。
【００２３】
第二の実施態様では、前記第一の実施態様において、前記所定処理が複製の場合、前記所定処理に関わる情報は、複製元の情報資源が格納されている場所を表す第一の格納場所情報と、複製先の情報資源が格納された場所を表す第二の格納場所情報とを含む。前記重複管理更新部が、前記受信した第一の格納場所情報と第二の格納場所情報とを前記重複管理情報に追加する。
【００２４】
第三の実施態様では、前記第一の実施態様において、前記所定処理が更新の場合、前記所定処理に関わる情報は、更新された情報資源が格納されている場所を表す格納場所情報を含む。前記重複管理更新部が、前記受信した格納場所情報とそれに対応する格納場所情報とを前記重複管理情報から削除する。
【００２５】
第四の実施態様では、前記第一の実施態様において、前記所定処理が移動の場合、前記所定処理に関わる情報は、移動元の情報資源が格納されている場所を表す第一の格納場所情報と、移動先の情報資源が格納された場所を表す第二の格納場所情報とを含む。前記重複管理更新部が、前記受信した第一の格納場所情報に一致する、前記重複管理情報中の格納場所情報を、前記受信した第二の格納場所情報に変更する。
【００２６】
第五の実施態様では、前記少なくとも一つのバックアップ制御装置とは、前記複数のバックアップ制御装置の全てである。各バックアップ制御装置が、更に、自分が管理する複数の情報資源のうちのいずれかを複製、更新又は移動する所定処理を実行する所定処理実行部と、前記所定処理を実行した場合に、該所定処理に関わる情報を、前記複数のバックアップ制御装置の自分以外のバックアップ制御装置に通知する通知部と、前記所定処理に関わる情報を受信する受信部と、前記受信した情報を用いて前記重複管理情報を更新する重複管理更新部とを備える。
【００２７】
上述した各部は、ハードウェア（例えば回路）、コンピュータプログラム、或いはそれらの組み合わせ（例えば、一部をハードウェアで実行し、他を、コンピュータプログラムを読み込んで実行する一又は複数のＣＰＵで実行する）によって実現することができる。各コンピュータプログラムは、コンピュータマシンに備えられる記憶資源（例えばメモリ）から読み込むことができる。その記憶資源には、ＣＤ−ＲＯＭやＤＶＤ（Digital Versatile Disk）等の記録媒体を介してインストールすることもできるし、インターネットやＬＡＮ等の通信ネットワークを介してダウンロードすることもできる。また、上述の制御装置を実現するコンピュータプログラム、およびそのプログラムを記録した記録媒体、そのプログラムを含み搬送波内に具現化されたデータ信号など種々の態様で実現することが可能である。また、記録媒体としては、フレキシブルディスクやＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置および外部記憶装置などコンピュータが読み取り可能な種々の揮発性記憶媒体や不揮発性記憶媒体を利用できる。
【発明の効果】
【００２８】
本発明によれば、バックアップ範囲のサイズであるバックアップ容量を削減することができる。
【発明を実施するための最良の形態】
【００２９】
以下、図面を参照して、本発明の幾つかの実施例を説明する。
【実施例１】
【００３０】
図1は、本発明の実施例１におけるシステム構成を例示する説明図である。
【００３１】
ファイルサービスを提供するファイルサーバ100は、ファイルシステム200を持つ。ファイルシステム200は、その中でファイル201を管理する機能ならびにアクセスするためのインタフェースを持つ。一つのファイルシステム２００は、一つの論理ボリュームの一部又は全部を管理するためのものであっても良いし、複数の論理ボリュームを管理するためのものであっても良い。
【００３２】
ファイルサーバ100は、ネットワーク1を介して、クライアントマシン300と接続することができる。クライアントマシン300は、ファイルサーバ100と通信し、ファイルサーバ100が持つファイルシステム200にアクセスできる。
【００３３】
また、当該ネットワーク1には、バックアップサーバ400を接続することができる。バックアップサーバ400は、ファイルサーバ100と通信し、ファイルシステム200のファイル群のバックアップ作成を要求し、ファイルサーバ１００を通じてバックアップデータ一式（バックアップ対象のファイル群）を取得できる。バックアップサーバ400は、取得したバックアップデータを、バックアップサーバ400に接続されているバックアップ媒体500に保管する。また、バックアップサーバ400は、ファイルサーバ100に対して、バックアップデータをもとに、ファイルシステム200のファイル群をリストアするよう要求することができる。バックアップ媒体５００は、例えば、テープ媒体とすることができる。それに代えて、他種の記憶媒体、たとえば、フレキシブルディスクやＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置および外部記憶装置などコンピュータが読み取り可能な種々の揮発性記憶媒体や不揮発性記憶媒体を利用できる。
【００３４】
図2は、ファイルサーバ100のハードウェア構成を例示する説明図である。
【００３５】
ファイルサーバ100は、プログラムを実行するプロセッサ110と、プログラムならびにデータを一時的に格納するメモリ120と、外部記憶装置160にアクセスするための外部記憶装置I/F130と、ネットワーク１に接続された他の装置にアクセスするためのネットワークI/F140と、それらを接続するバス150とから構成されている。
【００３６】
メモリ120には、外部記憶装置I/F130を制御するプログラムである外部記憶装置I/F制御121と、ネットワークI/F140を制御するプログラムであるネットワークI/F制御122と、ファイルシステムを制御するプログラムであるファイルシステム制御123とが記憶される。また、メモリ１２０には、ファイルシステム制御123の機能をユーザが利用するためのサービスを制御するプログラムであるファイルサービス制御124と、ファイルシステム制御123の機能をネットワーク経由でユーザが利用するためのサービスを制御するプログラムであるネットワークファイルサービス制御125とが記憶される。さらに、メモリ１２０には、データの複製構成情報を制御するプログラムである複製構成制御126と、データのバックアップとリストアを制御するプログラムであるバックアップリストア制御129とが記憶される。複製構成制御126は、複製構成情報を管理するための複製構成情報管理表127と、複製構成情報管理表にアクセスするための複製構成情報管理表制御128とを備えたプログラムである。以上の複数のコンピュータプログラムのうちの少なくとも一つを、ファイルサーバ１００の図示しないオペレーティングシステム（ＯＳ）に搭載することができる。
【００３７】
図3は、クライアントマシン300のハードウェア構成を例示する説明図である。
【００３８】
クライアントマシン300は、プログラムを実行するプロセッサ310と、プログラムならびにデータを一時的に格納するメモリ320と、外部記憶装置360にアクセスするための外部記憶装置I/F330と、ネットワークで接続された他装置にアクセスするためのネットワークI/F340と、それらを接続するバス350とから構成されている。
【００３９】
メモリ320には、外部記憶装置I/F330を制御するプログラムである外部記憶装置I/F制御321と、ネットワークI/F340を制御するプログラムであるネットワークI/F制御322と、クライアントマシンのファイルシステムを制御するプログラムであるファイルシステム制御323とが記憶される。また、メモリ３２０には、クライアントマシンのファイルシステム制御323の機能をユーザが利用するためのサービスを制御するプログラムであるファイルサービス制御324と、ファイルサーバ200提供のネットワークファイルサービス制御125の機能をネットワーク経由でユーザが利用するためのクライアント側サービスを制御するプログラムであるネットワークファイルサービスクライアント制御325と、データの複製構成情報を制御するプログラムである複製構成制御326とが記憶される。複製構成制御326は、ファイルサーバ100上の複製構成情報管理表127にアクセスするための複製構成情報管理表制御328で構成されるプログラムである。以上の複数のコンピュータプログラムのうちの少なくとも一つを、クライアントマシン３００の図示しないオペレーティングシステム（ＯＳ）に搭載することができる。
【００４０】
図4は、ファイルサーバ100がファイルシステム200を利用してファイルサービスを提供する時のシステム構成図である。
【００４１】
ファイルシステム200では、例えば、ファイルシステムのルートディレクトリ("/")202を頂点とした階層構造でデータが管理される。図4の例によれば、ルートディレクトリ202の配下には、dirAならびにdirBの二つのディレクトリが存在する。dirAディレクトリの配下には、f1、f3およびf4の三つのファイルが存在する。また、dirBディレクトリの配下には、f2、f5およびf6の三つのファイルが存在する。
【００４２】
また、図4中の矢印203、204および205は、ファイルサーバ100が提供するファイルサービス制御124の機能を利用して、ファイルシステム200においてファイルを複製したことを示している。ここでは、複製元のファイルのことを「オリジナルファイル」と呼び、複製して作成したファイルのことを「クローンファイル」と呼ぶことにする。矢印203は、オリジナルファイルf2を複製してクローンファイルf3を作成したことを示す。同様に、矢印204は、オリジナルファイルf4を複製してクローンファイルf5を作成したことを示す。矢印205は、そのファイルf5をさらに複製してクローンファイルf6を作成したことを示す（この複製では、f5はオリジナルファイルである）。
【００４３】
ファイルサーバ100は、ファイルシステム200を管理すると共に、ファイルシステム200に格納されているファイルの複製構成（どのファイルをオリジナルファイルとしてどのファイルがクローンファイルとして複製されたかの構成）を管理するための前述した複製構成情報管理表127を有する。
【００４４】
図5は、複製構成情報管理表127の構成を例示する図である。
【００４５】
複製構成情報管理表127には、ファイルサーバ100が管理するファイルシステム200におけるオリジナルファイルとクローンファイルの対応関係を一つのエントリとして管理する。ここでは、対応関係として、双方のファイルのファイルシステム200における格納場所を管理する。図5では、格納場所としてファイルシステム200のファイルのパス名を管理している。ファイルのパス名には、ファイルシステムのルートディレクトリからの絶対パス名を利用している。例えば、図5のオリジナルファイルf2とクローンファイルf3の対応関係において、オリジナルファイルの格納場所として"/dirB/fs2"を、クローンファイルの格納場所として、"/dirA/fs3"を一つのエントリとして管理している。なお、複製構成情報管理表127にて管理するファイルの格納場所の形式はこの例に限らない。対象ファイルを一意に識別できる方式であればどのような方式でもよい。
【００４６】
この複製構成情報管理表127を更新する契機として、種々の契機が考えられるが、本実施例１では、３つの契機、具体的には、ファイルの複製作成、ファイルの更新、およびファイルの移動（マイグレーション）の三つがある。以降で、それぞれの契機における複製構成情報管理表127の更新処理フローについて説明する。
【００４７】
図6は、ファイルの複製時における複製構成情報管理表127のエントリ追加処理フローを示す。処理フローF10は、ファイルサーバ100のファイルサービス制御124におけるファイル複製処理フローを示す。
【００４８】
はじめに、対象ファイル（例えばユーザから指定されたファイル）の複製が行われる（ステップS11）。具体的には、例えば、ファイルサービス制御124は、ファイルシステム制御123に対して、オリジナルファイルの内容取得、ならびに当該内容をもとにクローンファイルの作成を要求する。その要求では、例えば、クローンファイルの複製先の絶対パス名が指定される。ファイルシステム制御123が、対象ファイルを読み、その対象ファイルを指定された絶対パス名を有する場所に書くことで、クローンファイルを生成することができる。
【００４９】
次に、ファイルサービス制御124は、複製構成情報管理表制御128に対し、当該ファイル対の登録を依頼する（ステップS12）。この処理では、オリジナルファイルとクローンファイルのパス名の情報を複製構成情報管理表制御128に対して提供する。この具体的な処理フローは、図6の処理フローF13に示す。
【００５０】
処理フローF13は、複製構成情報管理表制御128において、複製構成情報管理表にエントリを追加する処理フローを示す。ここでは、複製構成情報管理表制御128が、複製構成情報管理表127に新たなエントリを一つ確保し、提供されたオリジナルファイルとクローンファイルのパス名の情報を、当該エントリに登録する（ステップS14）。
【００５１】
なお、処理フローF10を実行する制御は、ファイルサービス制御124に限らない。ファイルサーバ100のネットワークファイルサービス制御125や、クライアントマシン300のネットワークファイルサービスクライアント制御325が行うようにしてもよい。
【００５２】
図7は、ファイルの更新時における複製構成情報管理表127のエントリ削除処理フローを示す。
【００５３】
ファイル更新時に複製構成情報管理表127のエントリを削除する理由は、オリジナルファイルあるいはクローンファイルの一方を更新した場合、お互いのファイル内容が異なってしまうためである。処理フローF20は、ファイルサーバ100のファイルサービス制御124におけるファイル更新処理フローを示す。
【００５４】
はじめに、対象ファイルの更新が行われる（ステップS21）。具体的には、例えば、ファイルサービス制御124は、ファイルシステム制御123に対して、対象ファイルの更新を要求する。これにより、ファイルシステム制御１２３によって、対象ファイルが更新される。
【００５５】
次に、ファイルサービス制御124は、複製構成情報管理表制御128に対し、更新された対象ファイル（以下、更新ファイル）が複製構成情報管理表127にパス名が登録されているファイルなら、当該エントリ（そのパス名を含むエントリ）を削除するよう依頼する（ステップS22）。この処理では、ファイルサービス制御１２４が、更新ファイルのパス名を複製構成情報管理表制御128に対して提供する。この具体的な処理フローは、図７の処理フローF23に示す。
【００５６】
処理フローF23は、複製構成情報管理表制御128において、複製構成情報管理表１２７のエントリを削除する処理フローを示す。
【００５７】
はじめに、複製構成情報管理表制御128が、ファイルサービス制御１２４から受けた、更新ファイルのパス名が、複製構成情報管理表127にオリジナルファイルあるいはクローンファイルのパス名として登録されているか否かを確認する（ステップS24）。もし、更新ファイルのパス名が登録されていれば、複製構成情報管理表制御128は、当該エントリを複製構成情報管理表127から削除する（ステップS25）。一方、更新ファイルのパス名が登録されていなければ、複製構成情報管理表制御128は、そのまま処理を終了する。
【００５８】
なお、処理フローF20を実行する制御は、ファイルサービス制御124に限らない。ファイルサーバ100のネットワークファイルサービス制御125や、クライアントマシン300のネットワークファイルサービスクライアント制御325が行うようにしてもよい。
【００５９】
図8は、ファイルの移動時における複製構成情報管理表127のエントリ更新処理フローを示す。
【００６０】
ファイル移動時に複製構成情報管理表127のエントリを更新する理由は、オリジナルファイルあるいはクローンファイルの一方の格納場所をファイル移動によって変更した場合、複製構成情報管理表127に登録されているパス名と、実際のパス名との間に不整合が生じてしまうためである。
【００６１】
処理フローF30は、ファイルサーバ100のファイルサービス制御124におけるファイル移動処理フローを示す。以下の説明では、移動元の対象ファイルのパス名を、「変更前パス名」と言い、移動先の対象ファイルのパス名を、「変更後パス名」と言う。
【００６２】
はじめに、ファイル移動のために、対象ファイルの変更前パス名が変更先パス名に変更される（ステップS31）。具体的には、例えば、ファイルサービス制御124は、ファイルシステム制御123に対して、対象ファイルのパス名変更を要求する。これにより、ファイルシステム制御１２３によって、対象ファイルのパス名が変更される。つまり、対象ファイルの移動が行われる。
【００６３】
次に、ファイルサービス制御124が、複製構成情報管理表制御128に対し、変更前パス名が複製構成情報管理表127に登録されているなら、その変更前パス名を変更先パス名に更新するよう依頼する（ステップS32）。この処理では、対象ファイルの変更前パス名ならびに変更後パス名を複製構成情報管理表制御128に対して提供する。この具体的な処理フローは、図８の処理フローF33に示す。
【００６４】
処理フローF33は、複製構成情報管理表制御128において、複製構成情報管理表１２７のエントリを更新する処理フローを示す。
【００６５】
はじめに、複製構成情報管理表制御128が、対象ファイルの変更後パス名が、複製構成情報管理表127にオリジナルファイルあるいはクローンファイルのパス名として登録されているか否かを確認する（ステップS34）。もし、対象ファイルの変更後パス名が登録されていれば、複製構成情報管理表制御128は、その変更後パス名を含んだエントリを複製構成情報管理表127から削除する（ステップS35）。元々登録されていたファイルが更新されたとみなせるためである。
【００６６】
一方、対象ファイルの変更後パス名が登録されていなければ、ステップS35がスキップされる。
【００６７】
次に、複製構成情報管理表制御128は、対象ファイルの変更前パス名が、複製構成情報管理表127にオリジナルファイルあるいはクローンファイルのパス名として登録されているか否かを確認する（ステップS36）。もし、対象ファイルの変更前パス名が登録されていれば、複製構成情報管理表制御128は、その変更前パス名を変更後パス名に更新する（ステップS37）。一方、対象ファイルの変更前パス名が登録されていなければ、そのまま処理を終了する。
【００６８】
なお、処理フローF30を実行する制御は、ファイルサービス制御124に限らない。ファイルサーバ100のネットワークファイルサービス制御125や、クライアントマシン300のネットワークファイルサービスクライアント制御325が行うようにしてもよい。
【００６９】
図9は、複製構成情報管理表127を利用して、ファイルサーバ100がファイルシステム200のバックアップイメージ160を作成した場合を例示した概念図である。図9では、図4で構成を説明したファイルシステム200のルートディレクトリ202を基点に、ファイルシステム200全体をバックアップ対象と指定した場合のバックアップイメージ作成の様子を示す。
【００７０】
本実施例１では、対象のバックアップ範囲のバックアップイメージを生成する際に、そのバックアップ範囲に属するファイル群のうち、複製構成情報管理表127にクローンファイルとしてパス名が登録されているファイルが、それのオリジナルファイルへの相対パス名スタブファイルに置き換えられる。そのスタブファイルの置き換えでは、本実施例１では、一般のファイルシステムでサポートされている"シンボリックリンク"と呼ばれる技術が利用される。
【００７１】
具体的には、例えば、図9において、クローンファイルf3は、オリジナルファイルf2へのシンボリックリンク情報（"../dirB/f2"）161を持つスタブファイルに置き換えられる。同様に、クローンファイルf5は、オリジナルファイルf4へのシンボリックリンク情報("../dirA/f4")162を持つスタブファイルに、クローンファイルf6は、オリジナルファイルf5へのシンボリックリンク情報("./f5")163を持つスタブファイルにそれぞれ置き換えられる。以上のスタブファイルへの置き換えにより、バックアップイメージに含まれるクローンファイルのサイズを小さくすることができ、以って、バックアップイメージのサイズ（つまりバックアップ容量）を小さくすることができる。以上の処理は、バックアップリストア制御１２９が行うことができる。
【００７２】
ここで、スタブファイル中のシンボリックリンク情報に出てくる".."は、自分（そのスタブファイル）のディレクトリ階層より一階層上位のディレクトリのことを意味する。また、シンボリックリンク情報に出てくる"."は、自分と同じディレクトリのことを意味する。例えば、スタブファイルf3からシンボリックリンク情報161を解釈する場合、最初の".."は、ファイルf3が存在するディレクトリ"/dirA"の一階層上位のディレクトリであるルートディレクトリ("/")202が該当する。また、ファイルf6からシンボリックリンク情報163を解釈する場合、最初の"."は、ファイルf6が存在するディレクトリである"/dirB"が該当する。
【００７３】
図10の処理フローF40は、ファイルサーバ100のバックアップリストア制御129において、ファイルシステム200のバックアップイメージ160を作成する処理フローを示す。
【００７４】
例えば、バックアップリストア制御129が、バックアップの基点となるディレクトリの指定を受ける（例えばその指定をバックアップサーバ４００から受ける）。バックアップリストア制御129は、指定されたディレクトリ以下のファイルシステム階層構造に格納されているファイルやディレクトリなどを含むバックアップイメージ160を記憶域（例えばメモリ１２０に設けられた図示しないワーク領域）に作成する。
【００７５】
処理フローF40では、はじめに、バックアップリストア制御129は、バックアップ対象ファイルを全てアーカイブイメージ（バックアップイメージ１６０）に追加したか否かを調べる（ステップS41）。追加し終わっていなければ、次に説明するステップS42に進む。全て追加し終わっていれば、以降で説明するステップS45に進む。
【００７６】
次のステップでは、バックアップリストア制御129が、バックアップ対象ファイルのパス名をファイルシステム制御123から取得する（ステップS42）。ここで、バックアップ対象ファイルは、バックアップの基点となるディレクトリから対象範囲を網羅的に順次探索していくことで選定する。例えば、対象ディレクトリの階層を調べ、ファイルがあった場合は、当該ファイルを順次選定していく。また、ディレクトリがあった場合は、当該ディレクトリを基点として同様の探索処理を再帰的に行う。これにより、バックアップ対象範囲を網羅的に探索する。もちろん、網羅的に探索できれば、例示した以外の方式によってもよい。
【００７７】
次に、バックアップリストア制御129は、取得したバックアップ対象のファイルに関して、複製構成情報管理表制御128に対し、対象ファイルのスタブ化を依頼する（ステップS43）。本処理により、スタブファイルに置き換え可能なファイルは、スタブファイルが作成される。依頼先の処理フローは、処理フローF50として以降で説明する。なお、本処理により、ファイルシステム200にもともと保管されていたファイルそのものをスタブファイルに置き換えることはしない。つまり、置き換えられるのはバックアップイメージに追加される場合であって、ファイルシステム２００で保管されているファイルそれ自体を置き換えることはしない。だが、もちろん、置き換えるようにしてもよい。
【００７８】
次に、バックアップリストア制御129は、対象ファイルをバックアップイメージに含める（ステップS44）。前のステップS43における処理で、スタブファイルが作成された場合は、当該スタブファイルをバックアップイメージに含める。スタブファイルが作成されなかった場合は、指定された通常のファイルをバックアップイメージに含める。
【００７９】
ステップS44による処理が終了したら、バックアップリストア制御129は、再びステップS41に戻り、以上の処理をバックアップ対象ファイルが全てバックアップイメージに含まれるまで繰り返し行う。全てのバックアップ対象ファイルをバックアップイメージに含め終わったら、当該バックアップイメージを要求元に送る（ステップS45）。図4のシステム構成の場合、バックアップイメージ作成要求は、バックアップサーバ400からファイルサーバ100のバックアップリストア制御129に対して要求される。したがって、この場合、ステップS45において作成したバックアップイメージは、要求元のバックアップサーバ400に対して送ることになる。
【００８０】
図11の処理フローF50は、複製構成情報管理表制御128において、指定ファイルのスタブファイルを作成する処理フローを示す。本処理は、前述した図10におけるステップS43から呼び出される。
【００８１】
ここでは、はじめに、複製構成情報管理表制御128は、指定された対象ファイルが複製構成情報管理表127にクローンファイルとして登録されているか否かを確認する（ステップS51）。もし、クローンファイルとして登録されていない場合は、スタブファイルは作成せずに処理を終了する。もし、クローンファイルとして登録されている場合は、複製構成情報管理表制御128は、対象ファイルのスタブファイルを作成する（ステップS52）。ここでは、複製構成情報管理表127のエントリにオリジナルファイルとして登録されているファイルのパス情報をもとに、オリジナルファイルへの相対パス名をシンボリックリンク情報として持ったシンボリックリンクファイルを作成する。作成したシンボリックリンクファイルをスタブファイルとして呼び出し元に渡して、本処理を終了する。
【００８２】
図12の処理フローF60は、ファイルサーバ100のバックアップリストア制御129において、指定されたバックアップイメージ160を、ファイルシステム200における任意に指定されたディレクトリにリストアする処理フローを示す。
【００８３】
例えば、リストア時には、バックアップサーバ４００が、バックアップリストア制御129に対して、リストアするバックアップイメージ160ならびにリストア先となるディレクトリを指定する。バックアップリストア制御129は、指定されたディレクトリ以下に、指定されたバックアップイメージを展開しリストアする（ステップS61）。本処理によってリストアされた後、ユーザは、リストアされたファイルにアクセスできる。アクセスしたファイルがスタブファイルであった場合は、シンボリックリンクファイルとして解釈することで、当該ファイルと同じ内容を持つオリジナルファイルにアクセスできる。
【００８４】
以上、本発明の実施例1について説明したが、本発明はこの実施例1に限定されることなくその趣旨を逸脱しない範囲内で種々の構成を取ることができることは言うまでもない。例えば、以下のような実施例2、実施例3および実施例4が可能である。
【実施例２】
【００８５】
上述した実施例1は、図4のシステム構成図で示したように、ファイルサーバ100が一つのファイルシステム200を持つ構成で説明したが、これに限らない。ファイルサーバ100は、複数のファイルシステムを持つようにしてもよい。
【００８６】
図13は、ファイルサーバ100が複数のファイルシステムを持つ場合のシステム構成を例示する説明図である。
【００８７】
ファイルサービスを提供するファイルサーバ100は、二つのファイルシステム210、220を持つ。
【００８８】
一方のファイルシステム210には、ファイルシステムのルートディレクトリ("/")211を頂点とした階層構造でデータを管理する。図13において、ルートディレクトリ211の配下には、dirAならびにdirBの二つのディレクトリが存在する。dirAディレクトリの配下には、f1ならびにf2の二つのファイルが存在する。また、dirBディレクトリの配下には、f5の一つのファイルが存在する。
【００８９】
他方のファイルシステム220には、ファイルシステムのルートディレクトリ("/")221を頂点とした階層構造でデータを管理する。図13において、ルートディレクトリ221の配下には、dirAならびにdirBの二つのディレクトリが存在する。dirAディレクトリの配下には、f4の一つのファイルが存在する。また、dirBディレクトリの配下には、f3ならびにf5の二つのファイルが存在する。
【００９０】
また、図13中の矢印206、207および208は、ファイルサーバ100が提供するファイルサービス制御124の機能を利用して、ファイルシステム210ならびに220においてファイルを複製したことを示している。矢印206は、ファイルシステム210のファイルf2を複製してファイルシステム220上にファイルf3を作成したことを示す。同様に、矢印207は、ファイルf4を複製してファイルf5を作成したことを示し、矢印205は、ファイルf4を複製してファイルf6を作成したことを示す。その他の構成は、図4のものと同じである。
【００９１】
図14は、実施例2における複製構成情報管理表127の構成を例示する図である。
【００９２】
複製構成情報管理表127には、ファイルサーバ100が管理するファイルシステム210ならびに220におけるオリジナルファイルとクローンファイルの対応関係を一つのエントリとして管理する。ここでは、対応関係として、双方のファイルのファイルシステム210ならびに220における格納場所を管理する。図14では、格納場所として、ファイルシステムの識別情報ならびに当該ファイルシステムのファイルのパス名を管理している。このようにすることで、複数のファイルシステムに対応することが可能になる。ファイルのパス名は図5のものと同じである。例えば、図14のオリジナルファイルf2とクローンファイルf3の対応関係において、オリジナルファイルの格納場所として"FS210:/dirA/fs2"を、クローンファイルの格納場所として、"FS220:/dirB/f3"を一つのエントリとして管理している。ここで、ファイルシステムの識別番号とパス名の間には、区切り文字を追加している。図14では、":"を利用している。もちろん、区切り文字はこれ以外のものでもよい。なお、上記以外の事項については、図5に示したものと同じである。
【００９３】
図15は、複製構成情報管理表127を利用して、ファイルサーバ100がファイルシステム210ならびに220を管理している時に、ファイルシステム220のバックアップイメージ170を作成した場合を例示した概念図である。図15では、図13で構成を説明したファイルシステム220のルートディレクトリ221を基点に、ファイルシステム220全体をバックアップ対象と指定した場合のバックアップイメージ作成の様子を示す。
【００９４】
本実施例２では、実施例1で説明した通り、複製構成情報管理表127にクローンファイルとして登録されているファイルを、それのオリジナルファイルへの相対パス名を有したシンボリックリンクファイルであるスタブファイルに置き換える。しかし、そのオリジナルファイルがバックアップ対象に含まれない場合は、このようなスタブファイルへの置き換えは行わない。この理由は、バックアップイメージを利用してリストアする場合、そのバックアップイメージにオリジナルファイルが含まれていなければ、クローンファイルをスタブファイルに置き換えても、そのスタブファイルからのシンボリックリンク先にオリジナルファイルが存在するとは限らないためである。例えば、図15において、クローンファイルf3は、本来であれば、オリジナルファイルf2へのシンボリックリンク情報を持つスタブファイルに置き換える。しかし、ファイルf2は、バックアップ対象に含まれないファイルシステム210にて管理されていることがわかる。そこで、このファイルf3については、前述した理由によりスタブファイル化しないようにする。一方で、クローンファイルf6の内容は、オリジナルファイルf4へのシンボリックリンク情報("../dirA/f4")171に置き換える。これにより、バックアップイメージをリストアした場合に、シンボリックリンクファイルのみがリストアされそれに対応するオリジナルファイルが存在しないといったことが生じてしまうことを未然に防ぐことができる。
【００９５】
図16の処理フローF50-2は、図11で示した処理フローF50において、前述のようにスタブファイルを作成しない場合にも対応できるように拡張した処理フローである。
【００９６】
処理フローF50-2では、処理フローF50と比べて、処理ステップS53を処理ステップS51と処理ステップS52の間に追加している。追加した処理ステップS53では、対象ファイル（すなわち、バックアップ対象のクローンファイル）のオリジナルファイルが、当該バックアップ範囲に含まれているのか否かを確認する。オリジナルファイルの格納場所は、複製構成情報管理表127から、対象ファイルのパス名に対応付けられているパス名を取得し、そのパス名を解析することにより確認する。オリジナルファイルがバックアップ対象に含まれるかどうかを確認するために、当該処理では、呼び出し元から、当該バックアップ範囲の情報がわかるように、バックアップイメージを作成する時の基点となるディレクトリの情報を渡してもらう必要がある。本処理フローの中では、渡してもらったバックアップ基点となるディレクトリ情報（例えば、ディレクトリ名とファイルシステム識別番号）をもとに、対象ファイルのオリジナルファイルがバックアップ対象に含まれているのか否かを確認する。もし、含まれていたら、スタブファイル作成を行う処理ステップS52に進む。もし、含まれていなかったら、そのまま処理を終了する。
【００９７】
実施例2において、バックアップイメージからリストアする場合は、実施例1で示した方法と同じ方法でリストアすればよい。
【００９８】
上述した実施例2では、複数のファイルシステムでファイルが管理されている場合の例として、ファイルサーバ100が二つのファイルシステム210ならびに220を管理している場合について説明したが、対象ファイルシステム数は二つに限らない。それ以上のファイルシステムを管理する場合においても、本方式は適用可能である。また、実施例2で説明した方式は、一つのファイルシステムの一部のみをバックアップする場合においても適用可能である。
【実施例３】
【００９９】
上述した実施例1は、図4のシステム構成図で示したように、ファイルサーバ100が一つの構成で説明したが、これに限らない。複数のファイルサーバが存在する構成でもよい。
【０１００】
図17は、複数のファイルサーバが存在する場合のシステム構成を例示する説明図である。
【０１０１】
図17では、ファイルサービスを提供するファイルサーバ100、600および700の三つのファイルサーバが存在し、それぞれファイルシステムを持ち、ファイルサービスを提供している。さらに、これらのファイルサーバは、統合ファイルサービスを提供するためにグローバルネームスペース1000（統合ファイルサーバシステム）を提供していてもよい。グローバルネームスペース1000を構成するファイルサーバは、クライアントマシン300からの当該グローバルネームスペース1000を構成する他のファイルサーバへのアクセス要求を仲介するようにしてもよい。
【０１０２】
図17において、ファイルサーバ100はファイルシステム210ならびに220を持ち、ファイルサーバ600はファイルシステム230ならびに240を持ち、ファイルサーバ700はファイルシステム250ならびに260を持つ。さらに、ファイルサーバ100が、代表サーバとして複製構成情報管理表127を持つ。それ以外のファイルサーバ600ならびに700は、複製構成情報管理表127を持たないということ以外は、ファイルサーバ100の構成と同じである。なお、上記以外の事項については、図4ならびに図13に示したものと同じである。
【０１０３】
図17に示す環境において、実施例1ならびに2で示した方式を実現するためには、ファイルサーバ600ならびに700にてファイルの複製、更新および移動があった時に、その旨を、複製構成情報管理表127を持つ代表ファイルサーバ100に通知し、複製構成情報管理表127の更新を行うようにする必要がある。
【０１０４】
図18に、複製構成情報管理表127の更新通信処理フローである処理フローF70を示す。
【０１０５】
この処理フローF70は、複製構成情報管理表127が存在しないファイルサーバにて、図6、図7および図8に示したようなファイルの複製、更新および移動といった操作が行われた時に実行される。その実行契機は、ファイルサービス制御124から、複製構成情報管理表制御128に対して、複製構成情報管理表127へのアクセスが要求された時である。具体的に、ファイルサーバ600ならびに700では、図6における処理フローF13、図7における処理フローF23および図8における処理フローF33を実行するかわりに、処理フローF70を実行する。
【０１０６】
処理フローF70では、要求元から受け取った処理内容を、代表サーバたるファイルサーバの複製構成情報管理表制御128に対して、エントリの登録、削除あるいは更新を依頼する(ステップS71)。当該依頼を受けた代表サーバたるファイルサーバの複製構成情報管理表制御128では、次に説明する処理フローF72を実行する。処理フローF72では、要求元から受け取った処理内容をもとに、複製構成情報管理表127に対し、要求されたエントリの登録、削除あるいは更新を行う(ステップS73)。具体的なエントリ登録処理フローは、図6の処理フローF13と同じであり、エントリ削除処理フローは、図7の処理フローF23と同じであり、エントリ更新処理フローは、図8の処理フローF33と同じである。
【０１０７】
実施例3のような複数のファイルサーバが存在する環境において、バックアップならびにリストアは、実施例2で説明した方式と同じ方式で実行する。ただし、代表サーバたるファイルサーバ100でバックアップイメージの作成を行った場合のみ、クローンファイルのスタブファイル化を行うことができる。バックアップイメージに含められるファイルは、代表サーバ１００で管理しているファイルシステム２１０、２２０内のファイルに代えて又は加えて、他のファイルサーバ６００、７００で管理されているファイルシステム２３０、２４０、２５０又は２６０内のファイルであっても良い。この場合でも、複製構成情報管理表１２７を用いて、クローンファイルのスタブファイル化を行うことができる。一方、他のファイルサーバ600ならびに700でバックアップイメージ作成を行った場合は、複製構成情報管理表127の情報がないため、クローンファイルのスタブファイル化を行うことはできず、通常のバックアップイメージ作成のみとなる。
【０１０８】
上述した実施例3では、複数ファイルサーバ対応として、ファイルサーバ100、600および700の三つからなる場合について説明したが、対象ファイルサーバ数はこれに限らない。二つのファイルサーバや、それ以上のファイルサーバが存在する場合においても、本方式は適用可能である。
【実施例４】
【０１０９】
上述した実施例3は、図17のシステム構成図で示したように、ファイルサーバが複数存在し、かつ複製構成情報管理表127を持つファイルサーバを代表サーバとする構成で説明したが、これに限らない。それぞれのファイルサーバに複製構成情報管理表が存在する構成でもよい。
【０１１０】
図19は、複数のファイルサーバが存在し、それぞれのファイルサーバに複製構成情報管理表が存在する場合のシステム構成を例示する説明図である。
【０１１１】
図19では、図17と同様に、ファイルサービスを提供するファイルサーバ100、600および700の三つのファイルサーバが存在し、それぞれファイルシステムを持ち、ファイルサービスを提供している。さらに、これらのファイルサーバは、統合ファイルサービスを提供するためにグローバルネームスペース1000を提供していてもよい。グローバルネームスペース1000を構成するファイルサーバは、クライアントマシン300からの当該グローバルネームスペース1000を構成する他のファイルサーバへのアクセス要求を仲介するようにしてもよい。その上、図17とは異なる点として、ファイルサーバ600ならびに700において、それぞれ複製構成情報管理表627ならびに628を管理する。これら複製構成情報管理表127、627および727は、その内容がグローバルネームスペース1000の範囲でお互い同期しているものとする。なお、上記以外の事項については、図4ならびに図13に示したものと同じである。
【０１１２】
図19に示す環境において、実施例1ならびに実施例2で示した方式を実現するためには、ファイルサーバにてファイルの複製、更新および移動があった時に、その旨を自身が持つ複製構成情報管理表に反映させた上で、グローバルネームスペース1000を構成する他のファイルサーバが持つ複製構成情報管理表に当該の情報を同期させる必要がある。
【０１１３】
図20に、複製構成情報管理表の同期通信処理フローである処理フローF80を示す。
【０１１４】
この処理フローF80は、ファイルサーバにて、図6、図7および図8に示したようなファイルの複製、更新および移動といった操作が行われた時に実行される。その実行契機は、ファイルサービス制御124から、複製構成情報管理表制御128に対して、複製構成情報管理表127へのアクセスが要求された時である。具体的に、ファイルサーバでは、図6における処理フローF13、図7における処理フローF23および図8における処理フローF33を実行するかわりに、処理フローF80を実行する。
【０１１５】
処理フローF80では、要求元から受け取った処理内容をもとに、自身のファイルサーバにある複製構成情報管理表に対し、対象エントリの登録、削除あるいは更新を行う(ステップS81)。具体的なエントリ登録処理フローは、図6の処理フローF13と同じであり、エントリ削除処理フローは、図7の処理フローF23と同じであり、エントリ更新処理フローは、図8の処理フローF33と同じである。次に、グローバルネームスペース1000を構成する他のファイルサーバに対して、対象エントリの同期を依頼する(ステップS82)。当該依頼をファイルサーバの複製構成情報管理表制御では、次に説明する処理フローF83を実行する。
【０１１６】
処理フローF83では、要求元から受け取った処理内容をもとに、複製構成情報管理表127に対し、要求されたエントリの同期を行う(ステップS84)。この同期処理では、対象エントリの登録、削除あるいは更新を行う。具体的なエントリ登録処理フローは、図6の処理フローF13と同じであり、エントリ削除処理フローは、図7の処理フローF23と同じであり、エントリ更新処理フローは、図8の処理フローF33と同じである。
【０１１７】
実施例4のような複数のファイルサーバが存在し、かつそれぞれのファイルサーバに複製構成情報管理表を持つ環境において、バックアップならびにリストアは、実施例2で説明した方式と同じ方式で実行する。実施例4では、実施例3とは異なり、グローバルネームスペース1000を構成するどのファイルサーバがバックアップイメージを作成する場合においても、クローンファイルのスタブファイル化を行うことができるようになる。
【０１１８】
上述した実施例4では、複数ファイルサーバ対応として、ファイルサーバ100、600および700の三つからなる場合について説明したが、対象ファイルサーバ数はこれに限らない。二つのファイルサーバや、それ以上のファイルサーバが存在する場合においても、本方式は適用可能である。
【０１１９】
以上、本発明の幾つかの実施例を説明したが、これらの実施例は本発明の説明のための例示にすぎず、本発明の範囲をそれらの実施例にのみ限定する趣旨ではない。本発明は、その要旨を逸脱することなく、その他の様々な態様でも実施することができる。例えば、上述した各実施例では、クローンファイルがシンボリックリンクを利用してスタブファイル化されるが、他種のファイル共有技術が利用されても良い。具体的には、ＵＮＩＸ（登録商標）において単に"リンク"と呼ばれる技術が利用されてもよい。具体的には、例えば、第一のファイル名と第二のファイル名とを一つのファイルに関連付けることで、二つのファイルを実質的に一つのファイルに節約されても良い。
【図面の簡単な説明】
【０１２０】
【図１】実施例1におけるシステム構成図である。
【図２】実施例1におけるファイルサーバのハードウェア構成図である。
【図３】実施例1におけるクライアントマシンのハードウェア構成図である。
【図４】実施例1におけるファイルシステム運用時のシステム構成図である。
【図５】実施例1における複製構成情報管理表を例示する説明図である。
【図６】実施例1におけるファイル複製時の複製構成情報管理表への登録処理を説明するフローチャートである。
【図７】実施例1におけるファイル更新時の複製構成情報管理表からの削除の処理を説明するフローチャートである。
【図８】実施例1におけるファイル移動時の複製構成情報管理表への更新処理を説明するフローチャートである。
【図９】実施例1におけるバックアップイメージを例示する説明図である。
【図１０】実施例1におけるバックアップイメージ作成処理を説明するフローチャートである。
【図１１】実施例1におけるバックアップイメージ作成処理の中で、クローンファイルのスタブファイルの作成処理を説明するフローチャートである。
【図１２】実施例1におけるリストア処理を説明するフローチャートである。
【図１３】実施例2における複数のファイルシステム運用時のシステム構成図である。
【図１４】実施例2における複製構成情報管理表を例示する説明図である。
【図１５】実施例2におけるバックアップイメージを例示する説明図である。
【図１６】実施例2におけるバックアップイメージ作成処理の中で、クローンファイルのスタブファイルの作成処理を説明するフローチャートである。
【図１７】実施例3における複数のファイルサーバ運用時のシステム構成図である。
【図１８】実施例3における複製構成情報管理表の更新処理を説明するフローチャートである。
【図１９】実施例4における複数のファイルサーバ運用時のシステム構成図である。
【図２０】実施例4における複製構成情報管理表の同期処理を説明するフローチャートである。
【符号の説明】
【０１２１】
１...ネットワーク  １００，６００，７００...ファイルサーバ  ２００，２１０，２２０，２３０，２４０，２５０，２６０...ファイルシステム  ２０１...ファイル  ３００...クライアントマシン  ４００...バックアップサーバ  ５００...バックアップ媒体  １１０，３１０...プロセッサ  １２０，３２０...メモリ  １２１，３２１...外部記憶装置I/F制御  １２２，３２２...ネットワークI/F制御  １２３，３２３...ファイルシステム制御  １２４，３２４...ファイルサービス制御  １２５...ネットワークファイルサービス制御  ３２５...ネットワークファイルサービスクライアント制御  １２６，３２６...複製構成制御  １２７，６２７，７２７...複製構成情報管理表  １２８...複製構成情報管理表制御  １２９...バックアップリストア制御  １３０，３３０...外部記憶装置I/F  １４０，３４０...ネットワークI/F  １５０，３５０...バス  １６０，３６０...外部記憶装置  ２０２，２１１，２２１...ルートディレクトリ  １６０，１７０...バックアップイメージ  １６１，１６２，１６３，１７１...スタブファイルの中身  １０００...グローバルネームスペース
【図１】
2008033519.tif 000003
【図２】
2008033519.tif 000004
【図３】
2008033519.tif 000005
【図４】
2008033519.tif 000006
【図５】
2008033519.tif 000007
【図６】
2008033519.tif 000008
【図７】
2008033519.tif 000009
【図８】
2008033519.tif 000010
【図９】
2008033519.tif 000011
【図１０】
2008033519.tif 000012
【図１１】
2008033519.tif 000013
【図１２】
2008033519.tif 000014
【図１３】
2008033519.tif 000015
【図１４】
2008033519.tif 000016
【図１５】
2008033519.tif 000017
【図１６】
2008033519.tif 000018
【図１７】
2008033519.tif 000019
【図１８】
2008033519.tif 000020
【図１９】
2008033519.tif 000021
【図２０】
2008033519.tif 000022