(57)【特許請求の範囲】
【請求項１】
ユーザのファイルを管理するファイル管理システムであって、
ユーザ端末によるファイル操作がファイルの作成または更新であるか否かを判断する更新検出手段と、
前記ファイル操作がファイルの作成または更新であった場合には、作成または更新の対象のファイルを実体ファイルとするリンクを作成して記憶するリンク作成手段と、
前記リンクにもとづくファイルを更新ファイルとしてバックアップ装置に記憶させるバックアップ処理手段とを備え、
前記リンク作成手段は、前記更新検出手段から作成または更新の対象の前記ファイルのパス情報を取得し、前記パス情報をディレクトリ情報を含まない文字列に変換し、前記文字列を前記リンクのファイル名とする
ことを特徴とするファイル管理システム。
【請求項２】
リンク作成手段は、ファイル操作がファイルの削除であった場合には、管理情報ファイルに前記ファイル操作の内容を記録し、
バックアップ処理手段は、前記管理情報ファイルをバックアップ装置に記憶させる
請求項１に記載のファイル管理システム。
【請求項３】
リンク作成手段は、ファイル操作がディレクトリの作成または削除であった場合には、管理情報ファイルに前記ファイル操作の内容を記録する
請求項１に記載のファイル管理システム。
【請求項４】
リストア操作手段を備え、
前記リストア操作手段は、バックアップ装置から管理情報ファイルおよび更新ファイルを取得し、前記管理情報ファイルの内容にもとづいてディレクトリの復元およびファイルの削除を行い、前記更新ファイルのファイル名からパス情報を復元して、前記パス情報で示されるリストア先に前記更新ファイルを復元する
請求項３に記載のファイル管理システム。
【請求項５】
ユーザのファイルを管理するファイル管理システムにおけるバックアップ方法であって、
ユーザ端末によるファイル操作がファイルの作成または更新であるか否かを判断し、前記ファイル操作がファイルの作成または更新であった場合には、作成または更新の対象のファイルのパス情報をディレクトリ情報を含まない文字列に変換し、前記文字列をファイル名とし、作成または更新の対象の前記ファイルを実体ファイルとするリンクを作成して記憶し、前記リンクにもとづくファイルを更新ファイルとしてバックアップ装置に記憶させる
ことを特徴とするバックアップ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルのバックアップを効率よく実行できるファイル管理システムおよびバックアップ方法に関する。
【背景技術】
【０００２】
データのバックアップにおいて、データの数が増加した場合、バックアップ時間が長くなる。バックアップ時間を短くする方法として、データの全てをバックアップしないで、前回のバックアップ時から内容が変更されたファイル（以下、差分ファイルという。）のみをバックアップする方法がある。以下、内容が変更されたファイルのみをバックアップすることを、差分バックアップという。
【０００３】
差分バックアップを実行するときに差分ファイルを検出する必要がある。差分ファイルの検出時間を短くするために、実ファイルデータの要約データおよびパスデータを含む仮想ファイルデータを生成して、仮想ファイルデータをもとに実ファイルデータに差分が有ったか否かを判断することによって、実ファイルデータ自体をスキャンする必要を無くし、効率的に差分の有無を判定できる方法が提案されている（例えば、特許文献１参照。）。また、ファイルの変更が行われる度に対象ファイルのバックアップファイルを生成する方法がある（例えば、特許文献２参照。）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２３４２６９号公報
【特許文献２】特開２０１０−２３１６５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載された方法では、実ファイルデータの数に対して、同じ数の仮想ファイルデータが必要になるので、実ファイルデータの数が多い場合は、差分の検出に時間がかかる。特許文献２に記載された方法では、バックアップ時に差分の検出をする必要がないが、ファイルの変更が行われる度に対象ファイルをバックアップ記憶部にバックアップしているため、ファイルの変更処理に時間を要する。
【０００６】
そこで、本発明は、差分バックアップに要する処理時間およびデータ領域を低減することができるファイル管理システムおよびバックアップ方法を提供することを特徴とする。
【課題を解決するための手段】
【０００７】
本発明によるファイル管理システムは、ユーザのファイルを管理するファイル管理システムであって、ユーザ端末によるファイル操作がファイルの作成または更新であるか否かを判断する更新検出手段と、ファイル操作がファイルの作成または更新であった場合には、作成または更新の対象のファイルを実体ファイルとするリンクを作成して記憶するリンク作成手段と、リンクにもとづくファイルを更新ファイルとしてバックアップ装置に記憶させるバックアップ処理手段とを備え、リンク作成手段は、更新検出手段から作成または更新の対象の前記ファイルのパス情報を取得し、パス情報をディレクトリ情報を含まない文字列に変換し、文字列を前記リンクのファイル名とすることを特徴とする。
【０００８】
本発明によるバックアップ方法は、ユーザのファイルを管理するファイル管理システムにおけるバックアップ方法であって、ユーザ端末によるファイル操作がファイルの作成または更新であるか否かを判断し、ファイル操作がファイルの作成または更新であった場合には、作成または更新の対象のファイルのパス情報をディレクトリ情報を含まない文字列に変換し、前記文字列をファイル名とし、作成または更新の対象の前記ファイルを実体ファイルとするリンクを作成して記憶し、リンクにもとづくファイルを更新ファイルとしてバックアップ装置に記憶させることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、差分バックアップに要する処理時間およびデータ領域を低減することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明によるファイル管理システムの構成を示すブロック図である。
【図２】第１の実施形態におけるファイルシステム部の構成を示す説明図である。
【図３】第１の実施形態におけるバックアップ用ディレクトリ操作部の構成を示す説明図である。
【図４】第１の実施形態におけるリストア操作部の構成を示す説明図である。
【図５】本発明によるファイル管理システムの差分ファイルを蓄積する処理の一例を示すフローチャートである。
【図６】本発明によるファイル管理システムの差分バックアップ処理の一例を示すフローチャートである。
【図７】本発明によるファイル管理システムの差分リストア処理の一例を示すフローチャートである。
【図８】本発明によるファイル管理システムの主要部を示すブロック図である。
【発明を実施するための形態】
【００１１】
実施形態１．
以下、本発明の第１の実施形態を図面を参照して説明する。
【００１２】
図１は、本発明によるファイル管理システムの構成を示すブロック図である。
【００１３】
図１に示すように、ファイル管理システムは、ファイルサーバ２００を含む。ファイルサーバ２００は、バックアップ装置３００をアクセス可能である。ユーザ端末４００は、ファイルサーバ２００と通信可能に接続され、ＣＩＦＳ（Ｃｏｍｍｏｎ  Ｉｎｔｅｒｎｅｔ  Ｆｉｌｅ  Ｓｙｓｔｅｍ）クライアントやＮＦＳ（Ｎｅｔｗｏｒｋ  Ｆｉｌｅ  Ｓｙｓｔｅｍ）クライントの機能を利用して、ファイルサーバ２００にアクセスする。なお、図１には、１つのユーザ端末４００が示されているが、一般に、多数のユーザ端末がファイルサーバ２００をアクセス可能である。
【００１４】
ファイルサーバ２００は、ファイルサーバ機能部２１０と、ファイルシステム部２２０と、バックアップ用ディレクトリ操作部２４０と、リストア操作部２５０と、記憶部２６０とを備える。
【００１５】
ファイルサーバ機能部２１０は、ＣＩＦＳサーバやＮＦＳサーバなどのファイルサーバ機能を備える。ファイルサーバ機能部２１０は、記憶部２６０のクライアント用記憶領域２６１に対するアクセス要求を受け付ける。
【００１６】
ファイルサーバ機能部２１０は、クライアント用記憶領域２６１に対するアクセスがあった場合に、ファイルへのアクセス情報およびパス検出情報を受け取り、ファイルシステム部２２０にアクセス情報およびパス検出情報を渡す。アクセス情報は、ファイルまたはディレクトリの更新や削除などのファイル操作を示す情報である。パス検出情報は、アクセスの対象となるファイルのパス情報を検出するための情報である。
【００１７】
ファイルシステム部２２０は、ファイルサーバ機能部２１０から受け取ったアクセス情報にもとづいて、記憶部２６０へのファイルの読み出しや書き込みの処理を行う。記憶部２６０には、クライアント用記憶領域２６１の他に、バックアップ用ディレクトリ管理領域２６２がある。クライアント用記憶領域２６１は、ユーザ端末４００に公開されるディレクトリ構造に対応するファイルが格納される領域である。バックアップ用ディレクトリ管理領域２６２に設けられるバックアップ用ディレクトリ構造は、ユーザ端末４００からアクセスできないものであるが、バックアップ装置３００は、バックアップ用ディレクトリ構造を読み出せる。
【００１８】
ファイルシステム部２２０は、更新ファイル検出部２３０を備える。更新ファイル検出部２３０は、クライアント用記憶領域２６１に対するファイルの更新操作の検出を行う。
【００１９】
バックアップ用ディレクトリ操作部２４０は、バックアップ用ディレクトリ管理領域２６２を操作する。
【００２０】
リストア操作部２５０は、バックアップ装置３００に格納されているデータをリストアする機能を有する。
【００２１】
記憶部２６０は、ハードディスクなどの記憶媒体である。
【００２２】
バックアップ装置３００は、例えば、バックアップサーバやテープ装置などのデータ記憶部３１０を備える。データ記憶部３１０は、ファイルサーバ２００の記憶部２６０に保存されているデータを記憶する。
【００２３】
図２は、第１の実施形態におけるファイルシステム部の構成を示す説明図である。
【００２４】
図２に示すように、ファイルシステム部２２０の更新ファイル検出部２３０は、更新系操作フック部２３１および、パス情報取得部２３２を備える。
【００２５】
更新ファイル検出部２３０は、ファイルシステム部２２０がファイルサーバ機能部２１０からアクセス情報およびパス検出情報を受け取ったときに、更新系操作フック部２３１を呼び出す。
【００２６】
更新系操作フック部２３１は、アクセス情報を解析して、アクセスがクライアント用記憶領域２６１に対する更新操作であった場合は、処理をフックして、パス情報取得部２３２を呼び出す。
【００２７】
パス情報取得部２３２は、パス検出情報からアクセスの対象となるファイルのパス情報を生成して、バックアップ用ディレクトリ操作部２４０に渡す。
【００２８】
図３は、第１の実施形態におけるバックアップ用ディレクトリ操作部の構成を示す説明図である。
【００２９】
図３に示すように、バックアップ用ディレクトリ操作部２４０は、ディレクトリ作成／削除部２４１と、パス情報変換部２４２と、リンク作成部２４３と、管理情報記録部２４４とを備える。
【００３０】
ディレクトリ作成／削除部２４１は、バックアップ用ディレクトリ管理領域２６２に作業ディレクトリを作成して、管理情報ファイル６０１を作成する。
【００３１】
パス情報変換部２４２は、バックアップ用ディレクトリ操作部２４０に入力されたパス情報の中の‘／’をパス情報が含んでいない他の文字に置換したパス変換情報を生成する。例えば、パス情報が“／ＡＢＣ／ＤＥ／ＦＧＨ．ｔｘｔ”であった場合は、パス変換情報は“ＸＡＢＣＸＤＥＸＦＧＨ．ｔｘｔ”となり、ディレクトリ情報を含まない文字列となる。
【００３２】
リンク作成部２４３は、パス情報変換部２４２によって生成されたパス変換情報をファイル名とし、パス情報で参照されるファイルを実体ファイルとするリンクをバックアップ用ディレクトリ管理領域２６２内の作業ディレクトリに作成する。リンクは、１つの実体ファイルを別の名前やパス名で参照できるようにする概念である。リンクとして、例えば、ＵＮＩＸ（登録商標）やＬｉｎｕｘ（登録商標）におけるハードリンクやシンボリックリンクなどがある。
【００３３】
管理情報記録部２４４は、バックアップ用ディレクトリ操作部２４０が受け取ったアクセス情報が、ファイルの削除、ディレクトリの作成または削除であった場合には、管理情報ファイル６０１にアクセス情報を記録する。
【００３４】
図４は、第１の実施形態におけるリストア操作部の構成を示す説明図である。
【００３５】
図４に示すように、リストア操作部２５０は、パス情報復元部２５１およびディレクトリ復元部２５２を備える。
【００３６】
パス情報復元部２５１は、バックアップ装置３００から読み出したファイルのファイル名の変換を行う。具体的には、ファイル名の先頭の文字およびファイル名に含まれる先頭の文字と同じ文字を“／”に置換する。この置換によって、パス情報が復元され、パス情報で示されるクライアント用記憶領域２６１内のリストア先にファイルがリストアされる。
【００３７】
ディレクトリ復元部２５２は、バックアップ装置３００から読み出した管理情報ファイルをもとに、不要なディレクトリを削除して、必要なディレクトリを作成する。
【００３８】
次に、本実施形態の動作を説明する。
【００３９】
図５は、本発明によるファイル管理システムの差分ファイルを蓄積する処理の一例を示すフローチャートである。
【００４０】
図５に示すように、ユーザ端末４００からファイルサーバ２００に対するアクセスが、任意のタイミングで発生する（ステップＳ５０１）。更新系操作フック部２３１は、ステップＳ５０１におけるアクセスのアクセス情報をもとに、アクセスがファイルの作成または更新処理であるか否かを判断する（ステップＳ５０２）。
【００４１】
ファイルアクセスがファイルの作成または更新処理であった場合は（ステップＳ５０２におけるＹｅｓ）、更新系操作フック部２３１は、処理をフックして、パス情報取得部２３２を呼び出す。パス情報取得部２３２は、ファイルシステム部２２０の他の処理と並行して、作成または更新処理の対象となるファイルのパス情報を生成する処理を行う。パス情報取得部２３２は、パス情報をバックアップ用ディレクトリ操作部２４０に渡す。バックアップ用ディレクトリ操作部２４０のパス情報変換部２４２は、パス情報を変換してパス変換情報を生成する（ステップＳ５０３）。
【００４２】
リンク作成部２４３は、ステップＳ５０３において生成されたパス変換情報をファイル名とし、作成または更新処理の対象となるファイルを参照するリンクをバックアップ用ディレクトリ管理領域２６２の作業ディレクトリに作成する（ステップＳ５０４）。また、すでに同じファイル名を有するリンクが存在する場合には、上書きする。
【００４３】
ファイルアクセスがファイルの作成または更新処理以外であった場合は（ステップＳ５０２におけるＮｏ）、更新系操作フック部２３１は、ファイルアクセスがファイルの削除処理であるか否かを判断する（ステップＳ５０５）。
【００４４】
ファイルアクセスがファイルの削除処理であった場合は（ステップＳ５０５におけるＹｅｓ）、リンク作成部２４３は、バックアップ用ディレクトリ管理領域２６２の作業ディレクトリに削除対象となるファイルのリンクが存在するか確認し、リンクが存在するときはそのリンクを削除する（ステップＳ５０６）。管理情報記録部２４４は、管理情報ファイル６０１にファイル削除の処理内容を記録する（ステップＳ５０７）。処理内容とは、削除されたファイルのパス情報などである。ファイルアクセスがファイルの削除処理以外であった場合は（ステップＳ５０５におけるＮｏ）、更新系操作フック部２３１は、ファイルアクセスがディレクトリの作成または削除処理であるか否かを判断する（ステップＳ５０８）。
【００４５】
ファイルアクセスがディレクトリの作成または削除処理であった場合は（ステップＳ５０８におけるＹｅｓ）、管理情報記録部２４４は、管理情報ファイル６０１にディレクトリ作成また削除の処理内容を記録する（ステップＳ５０９）。
【００４６】
なお、ステップＳ５０３からステップＳ５０９におけるバックアップ用ディレクトリ操作部２４０の処理は、ファイルシステム部２２０の処理と並行して行われる。
【００４７】
以上のようにして、作成または更新が発生したファイルに関するリンクがバックアップ用ディレクトリ管理領域２６２に作成される。すなわち、ファイルに対する操作が行われたときに、差分バックアップされるべきファイルを特定可能なリンクが作成される。
【００４８】
図６は、本発明によるファイル管理システムの差分バックアップ処理の一例を示すフローチャートである。
【００４９】
ファイルサーバ２００は、バックアップ装置３００がバックアップを実行する時に、ファイルの静止点確保のために、ユーザ端末４００に公開されるディレクトリ構造およびバックアップ用ディレクトリ管理領域２６２の内容のスナップショットを作成する（ステップＳ６０１）。バックアップ装置３００は、スナップショット内のバックアップ用ディレクトリ管理領域の作業ディレクトリを利用してデータをバックアップする（ステップＳ６０２）。このとき、バックアップ用ディレクトリ管理領域２６２の作業ディレクトリの内容はファイルサーバ２００によって削除される。
【００５０】
ステップＳ６０２において、バックアップ用ディレクトリ管理領域の作業ディレクトリにリンクが存在する場合は、リンクの実体ファイルに差分があったと判断して、リンクの実体ファイルがクライアント用記憶領域から取得され、バックアップ装置３００にバックアップされる。実体ファイルのファイル名には、リンクと同じファイル名、つまりパス変換情報が設定される。ステップＳ６０２の後、ファイルサーバ２００は、ステップＳ６０１において作成したスナップショットを削除する。
【００５１】
なお、差分バックアップ実行中に、ユーザ端末４００の記憶部２６０に対するアクセスを受け付けないようにすることができる場合は、スナップショットを作成しなくてもよい。その場合には、バックアップ用ディレクトリ管理領域２６２の内容をそのまま利用してバックアップが実行される。
【００５２】
また、差分バックアップが続けて実行された場合には、バックアップ装置３００は、各差分バックアップごとに領域を分けて管理するようにすればよい。
【００５３】
図７は、本発明によるファイル管理システムの差分リストア処理の一例を示すフローチャートである。
【００５４】
図７を参照して、ファイルサーバ２００の差分リストア処理について説明する。差分リストアとは、差分対象期間（前回の差分バックアップが実行されたときから次回の差分バックアップが実行されるまでの期間）に行われた更新を再現する処理である。また、図７は、ファイルサーバ２００のクライアント用記憶領域２６１が差分対象期間の開始時点の状態にリストアされている状態から差分リストアを行う場合の処理を示す。
【００５５】
ファイルサーバ２００が差分リストアを実行する場合、ディレクトリ復元部２５２は、バックアップ装置３００から管理情報ファイルを読み出し、読み出した管理情報ファイルの記録内容に従って、リストア先のディレクトリ内の不要なディレクトリを削除して、必要なディレクトリを作成する。また、管理情報ファイルにファイル削除が記録されている場合には、削除されたファイルをリストア先のディレクトリ内から削除する（ステップＳ７０１）。
【００５６】
リストア操作部２５０のパス情報復元部２５１は、バックアップ装置３００から更新ファイルを読み出す。更新ファイルは、ステップＳ６０２においてバックアップされたリンクの実体ファイルである。パス情報復元部２５１は、更新ファイルのファイル名の変換を行い、更新ファイルのパス情報を復元する（ステップＳ７０２）。
【００５７】
リストア操作部２５０は、復元されたパス情報に従って、更新ファイルをクライアント用記憶領域２６１に復元（更新または作成）する（ステップＳ７０３）。同じファイルがリストア先に存在する場合にはファイルは更新される。
【００５８】
ステップＳ７０２、Ｓ７０３の処理は、バックアップ装置３００に格納されている全ての更新ファイルに対して実行される（ステップＳ７０４）。
【００５９】
以上に説明したように、本実施形態では、ファイル更新時にリンクを作成することによって実質的に差分ファイルの検出が行われ、リンクが作成されているファイルをバックアップすることによって、差分バックアップが実行されるので、バックアップ実行時に差分ファイルの検出を行う必要がない。
【００６０】
また、リンクのファイル名をディレクトリ情報を含まない文字列で設定しているので、差分ファイルに対応するリンクを１つのディレクトリに集約することができ、バックアップ時にディレクトリを検索せずにリンクを取得することができる。また、差分があったファイル自体ではなく、差分があったファイルのリンクをバックアップ用ディレクトリ管理領域に保存しているので、処理時間を短くできるとともに、差分バックアップに必要なデータ領域を低減させることができる。
【００６１】
図８は、本発明によるファイル管理システムの主要部を示すブロック図である。図８に示すように、本発明によるファイル管理システムは、ユーザのファイルを管理するファイル管理システムであって、ユーザ端末（図１に示すユーザ端末４００に相当。）によるファイル操作がファイルの作成または更新であるか否かを判断する更新検出手段２１（図１に示すファイルサーバ２００における更新ファイル検出部２３０に相当。）と、ファイル操作がファイルの作成または更新であった場合には、作成または更新の対象のファイルを実体ファイルとするリンクを作成して記憶するリンク作成手段２２（図１に示すファイルサーバ２００におけるバックアップ用ディレクトリ操作部２４０に相当。）と、リンクにもとづくファイルを更新ファイルとしてバックアップ装置３０（図１に示すバックアップ装置３００に相当。）に記憶させるバックアップ処理手段２３（図１に示すファイルサーバ２００におけるファイルシステム部２２０に相当。）とを備える。
【００６２】
上記の実施形態には、以下のようなファイル管理システムも開示されている。
【００６３】
（１）リンク作成手段２２は、更新検出手段２１から更新対象のファイルのパス情報を取得し、パス情報をディレクトリ情報を含まない文字列に変換し、文字列をパス名とするファイル管理システム。
【００６４】
（２）リンク作成手段２２は、ファイル操作がファイルの削除であった場合には、管理情報ファイルにファイル操作の内容を記録し、バックアップ処理手段２３は、管理情報ファイルをバックアップ装置３０に記憶させるファイル管理システム。
【００６５】
（３）リンク作成手段２２は、ファイル操作がディレクトリの作成または削除であった場合には、管理情報ファイルにファイル操作の内容を記録するファイル管理システム。
【００６６】
（４）リストア操作手段（図１に示すファイルサーバ２００におけるリストア操作部２５０に相当。）は、バックアップ装置３０から管理情報ファイルおよび更新ファイルを取得し、管理情報ファイルの内容にもとづいてディレクトリの復元およびファイルの削除を行い、更新ファイルのファイル名からパス情報を復元して、パス情報で示されるリストア先に更新ファイルを復元するファイル管理システム。
【符号の説明】
【００６７】
２１  更新検出手段
２２  リンク作成手段
２３  バックアップ処理手段
３０、３００  バックアップ装置
２００  ファイルサーバ
２１０  ファイルサーバ機能部
２２０  ファイルシステム部
２３０  更新ファイル検出部
２３１  更新系操作フック部
２３２  パス情報取得部
２４０  バックアップ用ディレクトリ操作部
２４１  ディレクトリ作成／削除部
２４２  パス情報変換部
２４３  リンク作成部
２４４  管理情報記録部
２５０  リストア操作部
２５１  パス情報復元部
２５２  ディレクトリ復元部
２６０  記憶部
２６１  クライアント用記憶領域
２６２  バックアップ用ディレクトリ管理領域
３１０  データ記憶部
４００  ユーザ端末
６０１  管理情報ファイル
【図１】
0005720366.tif 000002
【図２】
0005720366.tif 000003
【図３】
0005720366.tif 000004
【図４】
0005720366.tif 000005
【図５】
0005720366.tif 000006
【図６】
0005720366.tif 000007
【図７】
0005720366.tif 000008
【図８】
0005720366.tif 000009