説明

情報処理装置及びプログラム

【課題】バックアップの利便性を向上できる情報処理装置を提供する。
【解決手段】バックアップ対象のデータを保持し、電源断操作が検知された際に、予め定められた上書きバックアップ禁止条件を満足する場合には、前回のバックアップ時に生成したバックアップデータとは別に、上記保持されたデータ全体を含む新たなバックアップデータを生成し、そうでない場合は前回のバックアップ時に生成したバックアップデータに上書きして新たなバックアップデータを生成する情報処理装置である。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データのバックアップを行う情報処理装置及びプログラムに関する。
【背景技術】
【0002】
近年では、家庭内でも情報機器が数多く利用されるようになっている。こうした情報機器内に格納されたデータには、各家庭において貴重なデータも含まれており、バックアップ等の消失対策が要望されている。例えば電源断の際にバックアップを行う従来一般的な技術としては、特許文献1に開示されているものがある。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平5−143248号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、データのバックアップにおいては、バックアップの対象となる記憶領域全体のバックアップを毎回作成できればよいが、これではバックアップのデータ量が大きくなりすぎてしまう。一方、常に、バックアップの対象となる記憶領域の最新の状態をバックアップすることとしている場合、例えば誤って当該記憶領域のフォーマットを行ってしまったときに、この状態でバックアップが作成されてしまうと、データが失われる結果となりかねない。このように、従来一般的なバックアップの方法では、利便性を十分に向上できない。
【0005】
本発明は上記従来例の問題点に鑑みてなされたもので、バックアップの利便性を向上できる情報処理装置及びプログラムを提供することを、その目的の一つとする。
【課題を解決するための手段】
【0006】
上記従来例の問題点を解決するための本発明は、情報処理装置であって、バックアップ対象のデータを保持する保持手段と、バックアップするタイミングであるか否かを判断する手段と、バックアップするタイミングであると判断された際に、予め定められた上書きバックアップ禁止条件を満足する場合には、前回のバックアップ時に生成したバックアップデータとは別に、前記保持手段に保持されたバックアップ対象のデータを複写して新たなバックアップデータを生成し、そうでない場合は前回のバックアップ時に生成したバックアップデータに上書きして新たなバックアップデータを生成するバックアップ作成手段と、を含むこととしたものである。
またここで、上書きバックアップ禁止条件は、前回バックアップを行った後に、フォーマットを行ったこと、保持手段に異常を検出したこと、新規のバックアップ先へのバックアップであること、前回バックアップを行った後に復元作業を行ったこと、のうち、少なくともいずれかを含んでもよい。
さらに、バックアップするタイミングであるか否かを判断する手段は、電源がオフとなるときに、バックアップするタイミングであると判断してもよい。
【0007】
また本発明の一態様に係るプログラムは、バックアップ対象のデータを保持する保持手段に接続されたコンピュータを、バックアップするタイミングであるか否かを判断する手段と、バックアップするタイミングであると判断された際に、予め定められた上書きバックアップ禁止条件を満足する場合には、前回のバックアップ時に生成したバックアップデータとは別に、前記保持手段に保持されたバックアップ対象のデータを複写して新たなバックアップデータを生成し、そうでない場合は前回のバックアップ時に生成したバックアップデータに上書きして新たなバックアップデータを生成するバックアップ作成手段と、として機能させるものである。
【発明の効果】
【0008】
本発明によると、バックアップの利便性を向上できる。
【図面の簡単な説明】
【0009】
【図1】本発明の実施の形態に係る情報処理装置の例を表す構成ブロック図である。
【図2】本発明の実施の形態に係る情報処理装置の例を表す機能ブロック図である。
【図3】本発明の実施の形態に係る情報処理装置が生成するデータベースの内容例を表す説明図である。
【図4】本発明の実施の形態に係る情報処理装置によるバックアップ処理の例を表すフローチャート図である。
【図5】本発明の実施の形態に係る情報処理装置に接続されたバックアップ先のハードディスク等の内容を概括的に表す説明図である。
【図6】本発明の実施の形態に係る情報処理装置による復元処理の例を表すフローチャート図である。
【発明を実施するための形態】
【0010】
本発明の実施の形態に係る情報処理装置1は、図1に例示するように、制御部11、記憶部12、ストレージ部13、操作部14、表示部15、及びインタフェース部16を含んで構成される。なお、本実施の形態の情報処理装置1は、これらのほか、ネットワークインタフェース等を含んでもよい。
【0011】
ここで制御部11は、CPU等のプログラム制御デバイスであり、記憶部12に格納されたプログラムに従って動作する。本実施の形態において、この制御部11は、バックアップするタイミングであるか否かを判断する手段、及びバックアップするタイミングであると判断された際に、予め定められた上書きバックアップ禁止条件を満足する場合には、前回のバックアップ時に生成したバックアップデータとは別に、ストレージ部13に格納されたデータ全体を含む新たなバックアップデータを生成し、そうでない場合は前回のバックアップ時に生成したバックアップデータに上書きして新たなバックアップデータを生成するバックアップ作成手段として機能する。この制御部11の詳しい動作については、後に述べる。
【0012】
記憶部12は、メモリデバイス等であり、制御部11によって実行されるプログラムを保持する。このプログラムは、例えばDVD−ROM等のコンピュータ可読な記録媒体に格納されて提供され、この記憶部12に複写されて格納される。あるいは、このプログラムはネットワーク等の通信手段を介して受信され、この記憶部12に格納されたものであってもよい。また記憶部12は、制御部11のワークメモリとしても動作する。なお、記憶部12には不揮発性のメモリが含まれてもよい。この不揮発性メモリには電源断があったとしても保持しておくべきデータ(例えば起動時に必要なパラメータのデータ等)が保持される。
【0013】
ストレージ部13は、例えばハードディスク、あるいはSSD(Solid State Drive)であり、バックアップ対象のデータを保持する保持手段として動作する。一例としてこのバックアップ対象のデータは、静止画像や動画像を含んだ画像データである。このストレージ部13は、少なくとも利用開始時にフォーマットされ、予め定められたファイルシステムが形成されている。そしてストレージ部13に格納される各データは、このファイルシステム内において管理される。
【0014】
操作部14は、情報処理装置1の筐体に設けられたスイッチであってもよいし、赤外線等によるリモートコントローラを含んでもよい。また、キーボードやマウス等であってもよい。この操作部14は、利用者の指示操作を受け入れて、当該指示操作の内容を制御部11に出力する。
【0015】
表示部15は、家庭用テレビやディスプレイ装置への出力ポートであり、制御部11から入力される指示に従って、画面の情報をテレビやディスプレイ装置へ出力する。
【0016】
インタフェース部16は、USB(Universal Serial Bus)等のシリアルインタフェースや、メモリカードリーダ等を含んで構成される。このインタフェース部16には、バックアップ先となるディスクドライブ等が接続される。またインタフェース部16は、メモリカードを受け入れてもよく、この場合、インタフェース部16は制御部11に対してメモリカードが挿入されたことを表す信号を送出する。そしてインタフェース部16は、制御部11から入力される指示に従い、メモリカードからデータを読み出して制御部11に出力する。
【0017】
次に、制御部11の動作について説明する。本実施の形態の制御部11は、データの受入処理と、表示処理、バックアップ処理、並びに、復元処理を実行する。ここでデータの受入処理は例えば次のようなものとなる。制御部11は、インタフェース部16のメモリカードリーダにメモリカードが挿入されたことを表す信号を受け入れると、インタフェース部16に対して、挿入されたメモリカード内に格納されているデータを読み出すよう指示する。制御部11は、この指示に応答してインタフェース部16が出力するデータを受け入れて、ストレージ部13に蓄積して格納する。なお、本発明の一態様では、インタフェース部16がネットワークインタフェースを有し、制御部11は、このネットワークインタフェースを介してデータを受信して、ストレージ部13に蓄積して格納することとしてもよい。
【0018】
具体的にここでのデータは写真等の画像データであってもよい。また、制御部11は、ストレージ部13に既に格納されているデータと同じデータがインタフェース部16から入力された場合は、当該データを格納することなく破棄してもよい。ここで既に格納されているデータと入力されたデータとが同じであるか否かは、例えばファイル名やそのハッシュ値、あるいはデータサイズ等を比較して行うこととしてもよいし、各データのハッシュ値を比較して行うこととしても構わない。この処理により、ストレージ部13には、データが格納された状態となる。なお、この処理は一例であり、例えば制御部11は、利用者からキーボードやマウスによる操作を受け入れて文書を作成する処理を実行し、当該作成した文書のデータをストレージ部13に格納するようにしてもよい。
【0019】
また制御部11の表示処理は、次のようなものである。すなわち制御部11は、利用者からストレージ部13に格納したデータの指定と、当該指定されたデータを表示するべき旨の指示とを受け入れると、当該指示に従ってストレージ部13に格納されているデータのうち、指定されたデータを読み出して、当該データに係る画像を生成して表示部15を介して出力する。
【0020】
次に制御部11のバックアップ処理について説明する。このバックアップ処理を実行する制御部11は、機能的には、図2に例示するように、バックアップ要否判定部21と、バックアップ条件判断部22と、上書きバックアップ生成部23と、新規バックアップ生成部24とを含んで構成される。
【0021】
バックアップ要否判定部21は、まずバックアップを行うべきタイミングであるか否かを判断する。ここでバックアップを行うべきタイミングか否かの判断は例えば次のように行う。すなわちバックアップ要否判定部21は、本実施の形態の情報処理装置1の電源がオフ(電源断)となろうとしている場合にバックアップを行うべきタイミングと判断してもよい。また、バックアップ要否判定部21は、利用者がバックアップを指示したときに、バックアップを行うべきタイミングであると判断してもよい。バックアップ要否判定部21は、バックアップを行うべきタイミングであると判断すると、前回バックアップデータを生成してから、ストレージ部13内のバックアップ対象のデータに変化があったか否かを調べ、変化があった場合にバックアップが必要と判断し、変化がなかったときにはバックアップ不要と判断する。
【0022】
前回バックアップデータを生成してから、ストレージ部13内のバックアップ対象のデータに変化があったか否かは、ストレージ部13への最終書き込み日時の情報と、前回バックアップデータを生成した日時の情報とを記録しておき、これらを比較することによって行うなど、種々の方法があり、どのような方法を採用しても構わない。
【0023】
また、このバックアップ要否判定部21は、さらに、インタフェース部16にバックアップ先となるデバイス(ハードディスクやSSD等)が接続されているか否かを判断し、接続されていなければ、ストレージ部13内のバックアップ対象のデータに変化があったとしてもバックアップ不要と判断することとしてもよい。
【0024】
バックアップ条件判断部22は、上書きバックアップを行うか新規バックアップを行うかを、予め定められた上書きバックアップ禁止条件が満足されるか否かを判断することによって行う。この上書きバックアップ禁止条件は例えば、ストレージ部13に対して、前回バックアップデータを生成した後にフォーマットを行ったこと、保持手段であるストレージ部13に異常を検出したこと、新規のバックアップ先へのバックアップであること、前回バックアップデータを生成した後に、バックアップからの復元作業を行ったこと等である。
【0025】
バックアップ条件判断部22は、これらの条件のいずれかを満足すると判断したときには、新規バックアップ生成部24に対してバックアップデータの生成を指示する。また、これらの条件をいずれも満足しないと判断したときには、上書きバックアップ生成部23に対してバックアップデータの生成を指示する。なお、本実施の形態の上書きバックアップ生成部23または新規バックアップ生成部24は、情報処理装置1に固有の識別情報を名称としたディレクトリを、バックアップ先のハードディスク等に作成し、当該ディレクトリ内にバックアップ対象のデータを複写する。このデータが複写されたディレクトリがバックアップデータに相当する。そこでバックアップ条件判断部22は、インタフェース部16に接続されたバックアップ先に、当該情報処理装置1に固有の識別情報を名称としたディレクトリがなければ、新規のバックアップ先であると判断する。この固有の識別情報は、時間が経過しても変わらないものとする。例えば情報処理装置1がネットワークインタフェースを備える場合は、当該ネットワークインタフェースのMACアドレスを用いることができる。
【0026】
上書きバックアップ生成部23は、インタフェース部16に接続されたバックアップ先にある情報処理装置1に固有の識別情報を名称としたディレクトリに、ストレージ部13に格納されたバックアップの対象となるデータを複写する。この際、同じ内容のデータがある場合は、複写せず、現在インタフェース部16に接続されたバックアップ先にあるデータに上書きしないこととしてもよい。また、上書きバックアップ生成部23は、ストレージ部13に格納されていないデータであって、インタフェース部16に接続されたバックアップ先に格納されているデータがあれば、当該データをバックアップ先から削除してもよい。
【0027】
新規バックアップ生成部24は、インタフェース部16に接続されたバックアップ先に、情報処理装置1に固有の識別情報を名称としたディレクトリがあるか否かを調べ、当該ディレクトリがあれば、そのディレクトリの名称を変更する。そして新規バックアップ生成部24は、新たに、情報処理装置1に固有の識別情報を名称としたディレクトリを、バックアップ先に作成し、当該ディレクトリ内に、ストレージ部13に格納されたバックアップの対象となるデータを複写する。
【0028】
さらに本実施の形態の制御部11は、バックアップされたデータからストレージ部13の内容を復元する復元処理として次のような処理を行う。復元処理では制御部11は、インタフェース部16に接続されたバックアップ先に格納されているディレクトリ名の一覧を取得して表示部15を介してディスプレイ等に表示する。制御部11は、この一覧のうちから、復元元を一つ選択する利用者の操作を受け入れると、ストレージ部13に現在格納されているデータを削除し、当該選択された復元元のディレクトリ名に対応する、バックアップ先のディレクトリに格納されたデータを読み出して、ストレージ部13に複写する。
【0029】
なお、ここまでの説明において、データが画像データである場合は、制御部11は、データの受入時にそのサムネイル画像(縮小画像)を生成し、元の画像データに関連付けてストレージ部13に格納してもよい。また、ストレージ部13には、バックアップ対象のデータごとに、当該データのファイル名と、当該データに関連する情報(例えばサムネイル画像のデータを特定する情報として、サムネイル画像データのファイル名などを含む)とを関連付けたエントリー(E)を含んだデータベースが格納されていてもよい(図3)。
【0030】
本実施の形態の情報処理装置1は、以上の構成を備えており、次に例示するように動作する。なお、ここでの動作例の説明では、データは画像データであるものとする。例えば、このデータは、デジタルカメラ等で撮影された、JPEG(Joint Picture Experts Group)形式の画像データ本体と、メタデータ部とを含んだExif(Exchangeable image file format)フォーマットのデータであってもよい。また、このデータは、動画像データであってもよい。またここでは、データには撮影日の情報や撮影場所を表す緯度経度標高の情報(いわゆるジオタグ)等の付加情報が含まれるものとする。また付加情報には、利用者が本実施の形態の情報処理装置1を操作して付加する情報(例えば「お気に入り」であることを表す情報等)を含んでもよい。
【0031】
制御部11は、電源投入後、利用者からデータの取り込み指示を受けると、インタフェース部16に含まれるメモリカードリーダに挿入されたメモリカードから、メモリカードに格納された画像データを読み出す。そして、読み出した画像データのファイル名が既にストレージ部13に格納されている画像データのファイル名のうちに含まれていなければ、当該画像データをストレージ部13に複写して格納する。
【0032】
また制御部11は、この複写した画像データについてサムネイル画像のデータを生成してストレージ部13に格納し、画像データのファイル名と、このサムネイル画像のデータのファイル名とを関連付けてデータベースに格納する。
【0033】
制御部11は、また利用者から画像データを表示する指示を受け入れる。例えば利用者は、付加情報を特定して、当該特定した付加情報を含む画像データの画像を選択的に表示させてもよい。一例として付加情報の一例である撮影日の情報を入力して、特定の撮影日に撮影された画像データを表示するよう求める操作を利用者が行うと、制御部11は、ストレージ部13に格納されている画像データのうち、付加情報に当該入力された情報で特定される撮影日の情報を含む画像データを選択的に読み出す。そして制御部11は、読み出した画像データの画像を表示部15に出力して表示を行わせる。なお、読み出した画像データが複数ある場合は、制御部11は、当該画像データの一覧の画像を生成し、当該一覧の画像を表示させるようにしてもよい。そして利用者から当該一覧のうちから画像データの一つを選択する操作が行われると、制御部11は、当該選択された画像データの画像を表示する処理を行う。
【0034】
さらに制御部11は、利用者から表示している画像データに対して、「お気に入り」の付加情報を付加するべき指示を受け入れると、表示している画像データに「お気に入り」であることを表す付加情報を含める。
【0035】
また制御部11は、利用者から、画像データの指定と、指定した画像データを削除するべき旨の指示を受けると、例えば、ストレージ部13から当該指定された画像データを削除し、またデータベースから当該画像データのファイル名を含むエントリーを削除する。
【0036】
本実施の形態のある例では、この情報処理装置1の電源断の時にバックアップの処理が開始される。すなわち利用者により電源断の操作が行われたか、または図示しないタイマー等により、利用者が操作をしなくなってから一定時間が経過したことを検出した場合など、何らかの原因で電源がオフとなろうとするタイミングで、バックアップの処理を開始する。
すなわち制御部11は、電源がオフとなろうとしていることを検知し、バックアップの処理を開始する(図4)。なお、以下の例では、バックアップ処理中に異常が発生した場合に、後にその旨を検出できるよう、バックアップフラグと呼ばれる情報をストレージ部13に保持しておくものとする。この情報は例えば予め定めたファイル名の空のファイルとすることができる。なお、ここではインタフェース部16にはバックアップ先となるハードディスクが接続されているものとする。
【0037】
制御部11は、バックアップの処理を開始すると、まず、前回バックアップデータを生成してから、データベースに更新があったか否かを判断する(S1)。具体的に制御部11は、バックアップデータを生成するごとにデータベースのハッシュ値を作成し、バックアップ先に格納しておく。制御部11は、処理S1においてこの処理の実行時点でのデータベースのハッシュ値を演算し、バックアップ先に格納されているハッシュ値があれば、当該バックアップ先に格納されていたハッシュ値と、演算したハッシュ値とを比較する。そしてこれらが異なっていれば、前回バックアップデータを生成してから、データベースに更新があったと判断する。
【0038】
処理S1において制御部11が前回バックアップデータを生成してから、データベースに更新があったと判断すると(Yesであると)、制御部11は、上書きバックアップを行うか新規バックアップを行うかを判断する(S2)。具体的にここでは制御部11は、ストレージ部13に対して、前回バックアップデータを生成した後にフォーマットが行われている場合、保持手段であるストレージ部13に異常を検出した場合、新規のバックアップ先へのバックアップである場合、前回バックアップデータを生成した後にバックアップデータからの復元作業を行った場合のいずれかの場合に該当するときに、新規バックアップを行うべきと判断する。
【0039】
すなわち制御部11は、前回バックアップデータを生成した後にフォーマットが行われているか否かを判断する。この判断は、例えば次のようにして行う。制御部11は、ストレージ部13のフォーマットを指示により行うが、フォーマット後に、フォーマットしたことを表す情報をストレージ部13または記憶部12に保持しておく。そして制御部11は、この情報がストレージ部13または記憶部12に保持されているときに、前回電源投入したときからの間にフォーマットが行われたものと判断する。また制御部11は、この判断終了後には、当該フォーマットしたことを表す情報を削除しておく。
【0040】
また制御部11は、保持手段であるストレージ部13を予め定めたタイミングごとに検査する。この検査は、ファイルシステムごとに種々の方法があるが、例えばUNIX(登録商標)互換のオペレーティングシステム標準のファイルシステムであれば、fsck(ファイルシステムチェック)等のコマンドが行うものと同じ処理により検査を行うことができる。この検査において異常が検出された場合は、制御部11は、ストレージ部13に異常が検出されたと判断する。
【0041】
また制御部11は、前回バックアップデータを生成した後に、バックアップデータ(当該前回生成したバックアップデータであると、他のバックアップデータであるとを問わない)からの復元作業を行ったか否かを、次のように判断する。制御部11は、復元処理を行う際に、復元処理を行ったことを表す情報をストレージ部13または記憶部12に保持しておく。そして制御部11は、この情報がストレージ部13または記憶部12に保持されているときに、前回バックアップデータを生成した後にバックアップデータからの復元が行われたものと判断する。また制御部11は、この判断終了後には、当該復元処理を行ったことを表す情報を削除しておく。
【0042】
なお、新規のバックアップ先へのバックアップであるか否かの判断の例は既に述べたので、繰り返しての説明を省略する。
【0043】
制御部11は、処理S2において、新規バックアップを行うべきと判断すると(図4において「新規」)、新規バックアップ処理を実行する(S3)。すなわち制御部11は、インタフェース部16に接続されたバックアップ先に、情報処理装置1に固有の識別情報(情報処理装置1のネットワークインタフェースのMACアドレスとする)を名称としたディレクトリがあるか否かを調べ、当該ディレクトリがあれば、そのディレクトリの名称を異なるものに変更する。そして制御部11は、新たに、情報処理装置1に固有の識別情報を名称としたディレクトリを、バックアップ先に作成する。
【0044】
制御部11は、バックアップフラグを立てる(S4)。ここではバックアップフラグとしてのファイルを生成することとする。そして制御部11は、バックアップ先に作成されている、情報処理装置1に固有の識別情報を名称としたディレクトリ(以下、バックアップ先ディレクトリと呼ぶ)内に、ストレージ部13に格納されているデータベースを複写する(S5)。この際、バックアップ先に当該データベースが既に格納されていれば、当該データベースに上書きする。なお、処理S2において、新規バックアップを行うべきと判断しないときには(図4において「上書き」)、処理S4に移行して処理を続ける。
【0045】
制御部11は、データベースの複写を行うと、次に、画像データの複写処理を開始する。以下の説明では、バックアップ先の容量を勘案した処理が行われる場合を例として述べる。
【0046】
制御部11は、データベースを参照して、当該データベースに格納されているファイル名のうち、未だ読み出していないものを一つ読み出して、当該データベースから読み出したファイル名に対応する画像データを、ストレージ部13から読み出す(S6)。そして制御部11は、当該読み出した画像データを注目画像データとして、注目画像データの複写処理を行う(S7)。この複写処理では、制御部11は、注目画像データと同じ内容のデータが、既にバックアップ先ディレクトリ内に格納されているか否かを調べる。そして制御部11は、注目画像データと同じ内容のデータが、既にバックアップ先ディレクトリ内に格納されている場合は、注目画像データを複写しない。また制御部11は、注目画像データと同じ内容のデータが、既にバックアップ先ディレクトリ内に格納されていないならば、注目画像データを、バックアップ先ディレクトリ内に複写する。
【0047】
制御部11は、データベースに保持されている、すべてのファイル名に係る画像データについて、複写処理の対象としたか否かを調べる(S8)。そしてすべての画像データについて複写処理が行われていなければ、つまり、未だ複写処理の対象となっていない画像データがあれば(Noならば)、Aに移行して、バックアップ先となっているハードディスク等の空き容量が予め定めたしきい値を下回るか否かを調べる(S9)。ここで空き容量が予め定めたしきい値を下回る場合は(Yesならば)、バックアップ先ディレクトリから、現在格納されているサムネイル画像のデータをすべて削除し(S10)、再度バックアップ先となっているハードディスク等の空き容量が予め定めたしきい値を下回るか否かを調べる(S11)。ここでもさらに空き容量が予め定めたしきい値を下回る場合は(Yesならば)、エラーを報知してバックアップフラグのファイルを削除し、処理を終了してもよい。なお、これらの処理におけるしきい値は、例えば予め定めたn枚の平均的なサイズの画像データを格納可能な容量に相当する値などとして定める。
【0048】
また処理S11において、空き容量が予め定めたしきい値を下回る場合は(Yesならば)、さらに、付加情報に基づいてバックアップする画像データを選択し、選択した画像データ以外の画像データをバックアップ先ディレクトリから削除するようにしてもよい。例えば制御部11は、処理S11において、空き容量が予め定めたしきい値を下回ると判断すると、図4に例示するように、「お気に入り」であることを表す付加情報が付加されている画像データ以外の画像データを、バックアップ先ディレクトリから削除する(S12)。そしてさらにバックアップ先となっているハードディスク等の空き容量が予め定めたしきい値を下回るか否かを調べ(S13)、空き容量が予め定めたしきい値を下回る場合は(Yesならば)、エラーを報知して(S14)、バックアップフラグを消去して(S15)、処理を終了してもよい。ここでの例ではバックアップフラグの消去は、バックアップフラグのファイルを削除する処理に相当する。
【0049】
また、処理S9、S11、S13において、空き容量が予め定めたしきい値を下回らないならば(Noならば)、制御部11は、処理S6に戻って処理を続ける。制御部11は、処理S8において、データベースに格納されているファイル名のすべてについて以上の処理を行ったと判断すると(処理S8でYesであると)、今回のバックアップ処理においてサムネイル画像を削除する処理を行ったか否かを調べる(S16)。ここでサムネイル画像を削除する処理を行っていれば(Yesならば)、制御部11は、処理S15に移行して処理を終了する。
【0050】
一方処理S16において、サムネイル画像を削除する処理を行っていなければ(Yesならば)、制御部11は、データベースを参照して、データベースの各エントリーに含まれるサムネイル画像のファイル名を読み出し、当該ファイル名のサムネイル画像をストレージ部13からバックアップ先ディレクトリに複写する(S17)。そして制御部11は、処理S15に移行して処理を終了する。
【0051】
さらに、図4の処理S1において、制御部11がデータベースに更新がなかったと判断すると(Noであると)、制御部11は、バックアップフラグが立っているかを調べる(S18)。ここでの例ではバックアップフラグのファイルがあるか否かを調べることになる。そして、バックアップフラグのファイルがあれば(Yesならば)、制御部11は、処理S2に移行して処理を続ける。またバックアップフラグのファイルがなければ(Noならば)、制御部11は、処理を終了する。
【0052】
このような本実施の形態の情報処理装置1によると、例えば利用者が誤ってストレージ部13をフォーマットしてしまった場合を想定すると、次のような動作が行われる。すなわち、情報処理装置1は、図5に例示するように、フォーマット後に電源断操作が行われたとき、バックアップの処理を開始するが、このバックアップ処理では、以前のバックアップのデータは別名に変更して(図では名称「aaaa」から「aaaa-bak1」に変更して)そのまま維持し(A)、新規のバックアップデータ(B)を生成することになる。この新規のバックアップデータには、変更前の(A)の名称(ここでは「aaaa」)が付される。図5は、バックアップ先のハードディスク等の内容を概括的に表す説明図である。このとき新規のバックアップデータ(B)は、フォーマット後のストレージ部13の内容を反映したものとなるが、フォーマットにより削除される前のデータは、以前のバックアップのデータとしてそのまま維持されている(A)。従って、利用者は、誤ってフォーマットした場合にも以前のバックアップデータから、元のデータを復元できる。
【0053】
また、ストレージ部13に異常が生じ、内部のデータが破損した場合を想定すると、この場合本実施の形態の情報処理装置1は、以前のバックアップデータは別名に変更してそのまま維持し、新規のバックアップを作成することになる。従って、利用者はデータが破損していた場合にも、以前のバックアップデータから元のデータを復元することができるようになる。
【0054】
またバックアップフラグの情報を用いることで、バックアップ処理中に強制的に電源が断たれた(コンセントが引き抜かれるなどした)場合や、バックアップ処理中にインタフェース部16とバックアップ先となったハードディスク等との接続が断たれた場合にバックアップフラグが削除されずに残存することとなり、前回のバックアップ時に処理が正常に終了したか否かを調べることが可能となる。そして前回のバックアップ処理が正常に終了していなければ、データベースに更新がなかったとしても、バックアップの処理を行うこととしている。これにより、バックアップの処理をより確実なものにできる。
【0055】
また本実施の形態の情報処理装置1は、利用者から復元処理を行うべき旨の指示を受けて、次の図6に例示するように動作する。すなわち情報処理装置1は、インタフェース部16に接続されたバックアップ先のハードディスク等に格納されているバックアップ先ディレクトリの一覧を表示する(S21)。図5に示した例であれば、ディレクトリ(A),(B)がリストとして表示される。
【0056】
ここで利用者がいずれかのディレクトリを選択する操作を行うと、情報処理装置1は当該操作を受け入れて、選択されたディレクトリを復元元ディレクトリ(復元対象のバックアップデータ)とし(S22)、復元元ディレクトリからストレージ部13に対して、データベースと、データとを複写する(S23)。またこの処理S23において情報処理装置1は、サムネイル画像のデータが復元元ディレクトリにあれば、復元元ディレクトリからストレージ部13に対して、当該サムネイル画像のデータも複写してもよい。
【0057】
そして情報処理装置1は、ストレージ部13に複写した画像データについて、改めてサムネイル画像のデータを生成する(S24)。なお既にサムネイル画像のデータが生成されている画像データについては、当該画像データについては、サムネイル画像を新たに作り直さなくてもよい。ここでサムネイル画像のデータのファイル名は、サムネイル画像の元となった画像データのファイル名に、例えば「S」なる文字列を付加したものとしておく。このようにすると、ある画像データに対応するサムネイル画像は常に同じファイル名となる。そこで情報処理装置1は、処理S24においては、生成したサムネイル画像のファイル名と同じファイル名のサムネイル画像が既にストレージ部13に格納されている場合は、そのサムネイル画像を生成しないよう制御する。
【0058】
このように、復元元のディレクトリを利用者が選択することで、例えば、別の情報処理装置1で生成したバックアップデータのリストも、この処理S21におけるリストに提示されることとなり、別の情報処理装置1で生成したバックアップデータから復元することも可能となる。
【0059】
なお、制御部11は、ストレージ部13に格納するデータベースについては、その更新を行うごとに、更新の日時を表す情報を、図示しないカレンダーIC等から取得して、データベースに関連付けて保持することとしてもよい。そして制御部11は、このデータベースの更新の日時を表す情報を、利用者の求めに応じて表示出力するようにしてもよい。
【0060】
なお、ここまでの説明では、サムネイル画像のデータが一種類であるものとして説明したが、互いに異なるサイズの複数のサムネイル画像のデータ、あるいは、縮小ではなく予め定めた方法で画像データの一部を切り出すことによって作成したサムネイル画像のデータなど、一つの画像データについて、複数種類のサムネイル画像のデータを生成してもよい。この場合、処理S10では複数種類のサムネイル画像のうち、作成の処理負荷の低いものから順に削除して空き容量を調べるといった処理を繰り返してもよい。そして一部種類のサムネイル画像が削除された時点で、空き容量がしきい値を下回らないこととなったときには処理S6に戻って処理を続けることとすればよい。
【0061】
また、ここまでの説明では、バックアップ先はディレクトリであるものとしたが、これに限られず、例えばzip等で圧縮されるアーカイブであってもよい。この場合は当該アーカイブがバックアップデータとなる。
【0062】
さらに、ここではバックアップ先は、インタフェース部16に接続されたハードディスク等であるものとしたが、インタフェース16がネットワークインタフェースを備える場合は、バックアップ先として、例えばURL(Uniform Resource Locator)で指定されるネットワーク上のサーバ等であってもよい。
【符号の説明】
【0063】
1 情報処理装置、11 制御部、12 記憶部、13 ストレージ部、14 操作部、15 表示部、16 インタフェース部、21 バックアップ要否判定部、22 バックアップ条件判断部、23 上書きバックアップ生成部、24 新規バックアップ生成部。

【特許請求の範囲】
【請求項1】
バックアップ対象のデータを保持する保持手段と、
バックアップするタイミングであるか否かを判断する手段と、
バックアップするタイミングであると判断された際に、予め定められた上書きバックアップ禁止条件を満足する場合には、前回のバックアップ時に生成したバックアップデータとは別に、前記保持手段に保持されたバックアップ対象のデータを複写して新たなバックアップデータを生成し、そうでない場合は前回のバックアップ時に生成したバックアップデータに上書きして新たなバックアップデータを生成するバックアップ作成手段と、
を含む情報処理装置。
【請求項2】
請求項1記載の情報処理装置であって、
前記上書きバックアップ禁止条件が、
前回バックアップを行った後に、フォーマットを行ったこと、
保持手段に異常を検出したこと、
新規のバックアップ先へのバックアップであること、
前回バックアップを行った後に復元作業を行ったこと、
のうち、少なくともいずれかを含む情報処理装置。
【請求項3】
請求項1または2記載の情報処理装置であって、
前記バックアップするタイミングであるか否かを判断する手段は、電源がオフとなるときに、バックアップするタイミングであると判断する情報処理装置。
【請求項4】
バックアップ対象のデータを保持する保持手段に接続されたコンピュータを、
バックアップするタイミングであるか否かを判断する手段と、
バックアップするタイミングであると判断された際に、予め定められた上書きバックアップ禁止条件を満足する場合には、前回のバックアップ時に生成したバックアップデータとは別に、前記保持手段に保持されたバックアップ対象のデータを複写して新たなバックアップデータを生成し、そうでない場合は前回のバックアップ時に生成したバックアップデータに上書きして新たなバックアップデータを生成するバックアップ作成手段と、
として機能させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−97680(P2013−97680A)
【公開日】平成25年5月20日(2013.5.20)
【国際特許分類】
【出願番号】特願2011−241532(P2011−241532)
【出願日】平成23年11月2日(2011.11.2)
【出願人】(390040187)株式会社バッファロー (378)