説明

データ処理装置、アクセス制御方法及びプログラム

【課題】 外部記憶装置へのデータのバックアップの失敗を軽減する。
【解決手段】 外部記憶装置にデータをバックアップするデータ処理装置であって、外部記憶装置にアクセス可能な状態を設定するアクセス制御手段と、外部記憶装置を、データのバックアップ先に設定する設定手段と、前記アクセス可能な状態になっていてかつバックアップ先になっている外部記憶装置にデータをバックアップするバックアップ手段を有し、前記アクセス制御手段は、前記アクセス可能な状態を解除するよう指示された外部記憶装置がアクセス中ではなくかつバックアップ先になっていない場合、当該外部記憶装置の前記アクセス可能な状態を解除し、前記アクセス可能な状態を解除するよう指示された外部記憶装置がアクセス中ではない場合であっても、バックアップ先として設定されている場合、当該外部記憶装置の前記アクセス可能な状態を解除しないことを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、外部記憶装置にデータをバックアップするデータ処理装置に関するものである。
【背景技術】
【0002】
外部記憶装置にデータをバックアップするデータ処理装置が存在する。例えば外部記憶装置の一例であるUSBストレージデバイスにデータをバックアップする場合、データ処理装置はUSBストレージデバイスを操作可能な状態にするための処理(例えば、マウント処理)を行い、USBストレージデバイスにデータを格納する。ユーザがUSBストレージデバイスをデータ処理装置から外す場合には、データ処理装置は、USBストレージデバイスを取り外し可能な状態するための処理(例えば、アンマウント処理)を行う。
【0003】
外部記憶装置にデータを格納している最中に、その外部記憶装置が不用意に外されると、外部記憶装置へのデータの格納ができなくなる。
【0004】
そこで、外部記憶装置へデータを格納している場合には、その外部記憶装置の取り外しを禁止するデータ処理装置が提案されている(特許文献1)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2007−110700
【発明の概要】
【発明が解決しようとする課題】
【0006】
従来、外部記憶装置へのアクセス中に、その外部記憶装置の取り外しを禁止するものはあった。
【0007】
しかしながら、その外部記憶装置をデータのバックアップ先に設定している場合には、その外部記憶装置へのアクセス中ではなくても、外部記憶装置を取り外し可能な状態することが望ましくない場合がある。
【0008】
例えば、外部記憶装置へのデータのバックアップが指定時刻に行われる場合、その時刻に外部記憶装置が取り外し可能な状態になっていると、その外部記憶装置へのデータの格納ができない。
【0009】
そこで、本発明では、外部記憶装置へのデータのバックアップの失敗を軽減することを目的とする。
【課題を解決するための手段】
【0010】
本発明に係るデータ処理装置は、外部記憶装置にデータをバックアップするデータ処理装置であって、外部記憶装置にアクセス可能な状態を設定するアクセス制御手段と、外部記憶装置を、データのバックアップ先に設定する設定手段と、前記アクセス可能な状態になっていてかつバックアップ先になっている外部記憶装置にデータをバックアップするバックアップ手段を有し、前記アクセス制御手段は、前記アクセス可能な状態を解除するよう指示された外部記憶装置がアクセス中ではなくかつバックアップ先になっていない場合、当該外部記憶装置の前記アクセス可能な状態を解除し、前記アクセス可能な状態を解除するよう指示された外部記憶装置がアクセス中ではない場合であっても、バックアップ先として設定されている場合、当該外部記憶装置の前記アクセス可能な状態を解除しないことを特徴とする。
【0011】
または、本発明に係るデータ処理装置は、外部記憶装置にデータをバックアップするデータ処理装置であって、外部記憶装置にアクセス可能な状態を設定するアクセス制御手段と、外部記憶装置を、データのバックアップ先に設定する設定手段と、前記アクセス可能な状態になっていてかつバックアップ先になっている外部記憶装置にデータをバックアップするバックアップ手段と、バックアップ先になっている外部記憶装置が外された場合と、バックアップ先になっていない外部記憶装置が外された場合とで、外部記憶装置が外されたことを異なる方法で通知する通知手段を有することを特徴とする。
【発明の効果】
【0012】
本発明によれば、外部記憶装置がデータのバックアップ先になっている場合には、その外部記憶装置にアクセス可能な状態が解除されないようになる。
【0013】
または、本発明によれば、外部記憶装置がデータのバックアップ先になっている場合には、その外部記憶装置が外されたとしても、その外部記憶装置がデータのバックアップ先になっていることが認識できるようになる。
【0014】
これにより、データのバックアップの失敗が軽減される。
【図面の簡単な説明】
【0015】
【図1】データ処理装置の構成を示すブロック図である。
【図2】データ処理装置100のシステムソフトウェアの機能構成を示すブロック図である。
【図3】接続状態情報を格納するテーブルの一例を示す図である。
【図4】USBストレージデバイスの接続処理を示すフローチャートである。
【図5】USBストレージデバイスの接続状態を表示する操作部107の画面の一例を示す図である。
【図6】外部装置または操作部107で表示されるバックアップ設定画面の一例を示す図である。
【図7】バックアップ先の設定処理を示すフローチャートである。
【図8】バックアップ先判定処理を示すフローチャートである。
【図9】バックアップを実行するための操作画面の一例を示す図である。
【図10】バックアップ開始処理を示すフローチャートである。
【図11】バックアップ処理を示すフローチャートである。
【図12】バックアップのスケジュールを設定するための設定画面の一例を示す図である。
【図13】バックアップ処理をスケジューリングするスケジューリング処理を示すフローチャートである。
【図14】アンマウントを実行するための操作画面の一例を示す図である。
【図15】USBストレージデバイスのアンマウント処理を示すフローチャートである。
【図16】アンマウント処理を示すフローチャートである。
【図17】バックアップの設定が解除されたときに表示されるバックアップ設定画面の一例を示す図である。
【図18】バックアップの設定を解除する解除処理を示すフローチャートである。
【発明を実施するための形態】
【0016】
図面を参照して、本発明に係わる実施形態を説明する。ただし、この実施形態はあくまでも例示であり、本発明の範囲がそれらのみに限定されるという趣旨ではない。
【0017】
図1は、本発明に係るデータ処理装置の構成を示すブロック図である。データ処理装置100はコントローラ部101と操作部107とを有する。コントローラ部101は、CPU102、RAM103、ROM104、HDD105、操作部I/F106、USBホストI/F108、ネットワークI/F110、システムバス112を有する。
【0018】
CPU102は、データ処理装置全体を制御するコントローラであり、コントローラ部101の中心である。RAM103は、CPU102の動作に必要なシステムワークメモリであり、CPU102によって処理されるべきデータ、CPU102によって処理されたデータ、CPU102によって実行されるべきプログラムを格納する。ROM104はブートROMであり、ブートプログラムを格納している。HDD(ハードディスクドライブ)105は、データ処理装置100を制御するための制御プログラムや文書データなどを格納する。CPU102は、ROM104に格納されているブートプログラムを実行したり、HDD105からRAM103に転送された制御プログラムを実行したりして、データ処理装置100を制御する。
【0019】
操作部I/F106は、操作部107と通信するインターフェース部である。操作部I/F106は、操作部107に表示すべき情報を操作部107に出力したり、操作部107で入力された情報を操作部107から受け取ったりする。操作部107は、様々な情報を表示したり、ユーザからの指示を受け取ったりする。操作部107は、ディスプレイ、タッチパネル、操作キーなどから構成される。
【0020】
USBホストI/F108は、USBストレージデバイス109と通信するインターフェース部である。USBホストI/F108は、操作部107で入力された情報やHDD105に格納されている文書データをUSBストレージデバイス109に出力する。また、USBホストI/F108は、USBストレージデバイス109に格納されているデータを入力し、CPU102にそれを伝える。USBストレージデバイス109は、データを格納する外部記憶装置であり、USBホストI/F108に対して着脱可能である。USBホストI/F108には、USBストレージデバイス109を含む複数のUSBデバイスが接続可能である。
【0021】
ネットワークI/F110は、LAN111に接続し、LAN111に接続されている外部装置と通信する。LAN111は、LAN以外のネットワークに置き換わってもよい。外部装置とは、PC、データ処理装置100と同様なデータ処理装置、ファイルサーバなどである。
【0022】
システムバス112はデータの伝送路として、上記で説明した各部とつながっている。
【0023】
このほか、データ処理装置100はスキャナやプリンタなどの画像入出力デバイスを有していてもよい。その場合、コントローラ部101は、画像入出力デバイスと接続していて、画像入出力デバイスを制御する。
【0024】
図2は、データ処理装置100のシステムソフトウェアの機能構成を示すブロック図である。CPU102が各機能に対応するプログラムを実行することにより、各機能は実現される。
【0025】
アプリケーション部200は、操作部107を介して、USBストレージデバイス109の接続状況の参照指示やUSBストレージデバイス109のアンマウント指示をユーザに実行させるためのユーザインターフェースをユーザに提供する。また、アプリケーション部200は、ユーザからの指示に従って、USBストレージデバイス109の接続状態をUSBストレージ状態通知部202に問い合わせ、USBストレージデバイス109の接続状態を受け取る。
【0026】
USBストレージ状態通知部202は、USBストレージデバイス109の接続状態をUSBストレージ状態管理部203から受け取り、それをアプリケーション部200に通知する。
【0027】
USBストレージ状態管理部203は、USBストレージ検知部204により検知されるUSBストレージデバイス109の接続状態を管理する。
【0028】
USBストレージ検知部204は、USBストレージデバイス109の接続状態をオペレーティングシステム201に問い合わせ、USBストレージデバイス109の接続状態を受け取り、それをUSBストレージ状態管理部203に通知する。また、USBストレージ検知部204は、USBストレージデバイスに対するアクセス制御の一環として、USBストレージデバイスのマウント及びアンマウントをオペレーティングシステム201に指示する。
【0029】
文書管理部205は、HDD105に格納されている画像データを文書データとして管理する。文書管理部205は、スキャナから取得した文書データやLAN111を介して外部装置から取得した文書データを、オペレーティングシステム201を経由して、HDD105に格納する。また、文書管理部205は、操作部107やLAN111に接続された外部装置から要求された文書データを、オペレーティングシステム201を経由して、HDD105から取得する。
【0030】
バックアップ処理部206は、文書データのバックアップ指示をアプリケーション部200から受け付けて、HDD105に格納された文書データのバックアップデータを作成する。そして、バックアップ処理部206は、オペレーティングシステム201を経由してバックアップデータをUSBストレージデバイス109に格納したり、LAN111を介してバックアップデータを外部装置に送信したりする。また、バックアップ処理部206は、オペレーティングシステム201を経由してバックアップデータをUSBストレージデバイス109から取得したり、LAN111を経由して外部装置からバックアップデータを取得したりする。そして、バックアップ処理部206は、取得したバックアップデータに基づいて、HDD105に文書データを復元する。
【0031】
暗号化部207は、バックアップ処理部206からの指示に従って、バックアップデータを暗号化したり、暗号化されたバックアップデータを復号化したりする。
【0032】
この実施形態では、バックアップデータはUSBストレージデバイス109に格納されるものとする。
【0033】
オペレーティングシステム201は、USBデバイスがUSBホストI/F108に接続されたことを認識すると、そのUSBデバイスを使用するのに必要なドライバの読み込みを行う。さらに、オペレーティングシステム201はUSBデバイスからデバイス情報を取得し、そのデバイス情報を接続状態情報としてRAM103に格納する。そして、オペレーティングシステム201は、USBデバイスにアクセスするためのデバイスファイルをそのUSBデバイスに割り当てる。
【0034】
このように、オペレーティングシステム201は、USBストレージデバイスを含むUSBデバイス全般を管理している。しかしながら、以下では、USBデバイスをUSBストレージデバイスに絞って、実施形態を説明する。
【0035】
図3は、接続状態情報を格納するテーブルの一例を示す図である。オペレーティングシステム201はこのテーブルをRAM103上で管理している。デバイスファイル名301は、USBストレージデバイスに割り当てられたデバイスファイルの名前である。ベンダID302は、USBストレージデバイスの製造ベンダを識別するIDである。プロダクトID303は、USBストレージデバイスの製品IDである。シリアル番号304は、USBストレージデバイスのシリアル番号である。状態305は、USBストレージデバイスの接続状態であり、接続中などを示す。名称306は、USBストレージデバイスに付けられた名称である。全体容量307は、USBストレージデバイスで格納可能な最大データサイズである。残り容量308は、USBストレージデバイスでこれ以降に格納可能なデータサイズである。
【0036】
USBストレージ状態管理部203も、図3に示すようなテーブルをRAM103上で管理していて、オペレーティングシステム201から取得する接続状態情報に基づいてテーブルを更新する。
【0037】
図4は、USBストレージデバイスの接続処理を示すフローチャートである。この接続処理は、CPU102がプログラムを実行することにより、実現される。
【0038】
USBストレージ検知部204は、オペレーティングシステム201から、USBストレージデバイスの接続状態情報を定期的に取得する(S401)。そして、USBストレージ検知部204は、取得した接続状態情報とUSBストレージ状態管理部203で管理されている接続状態情報とを比較する(S402)。USBストレージ検知部204は、比較の結果に基づいて、USBストレージ状態管理部203で管理されている接続状態情報には存在しないUSBストレージデバイスが、取得した接続状態情報には存在するかを判断する。すなわち新規のUSBストレージデバイスが接続されたかを判断する(S403)。
【0039】
新規のUSBストレージデバイスがある場合には、USBストレージ検知部204は、新規のUSBストレージデバイスのマウントをオペレーティングシステムに指示する(S404)。
【0040】
オペレーティングシステム201は、新規のUSBストレージデバイスをデバイスファイルとして扱い、ファイルシステムの任意の階層にそのデバイスファイルを割り当てる。デバイスファイルが割り当てられた階層がマウントポイントとなる。マウントポイントから下の階層には、USBストレージデバイスのファイルシステムが展開される。これにより、USBストレージデバイスへのファイルアクセスが可能になる。
【0041】
このようにUSBストレージデバイスにアクセス可能な状態を設定することをマウントと呼ぶ。一方、USBストレージデバイスにアクセス可能な状態を解除することをアンマウントと呼ぶ。このように、オペレーティングシステム201は、USBストレージデバイスに対するアクセス制御の一環として、USBストレージデバイスのマウント及びアンマウントを実行する。
【0042】
USBストレージ検知部204は、マウントが成功したかどうかを判断する(S405)。マウントが成功した場合には、USBストレージ検知部204はその旨をUSBストレージ状態管理部203に通知し、USBストレージ状態管理部203は、新規のUSBストレージデバイスについての接状態情報をテーブルに登録する(S406)。そして、USBストレージ状態管理部203は、新規のUSBストレージデバイスがマウントされたことをアプリケーション部200に通知する(S407)。
【0043】
新規のUSBストレージデバイスがない場合には、USBストレージ検知部204は、USBストレージ状態管理部203で管理している接続状態情報には存在していて、取得した接続状態情報には存在しないUSBストレージデバイスがあるかを判断する。すなわち、切断されたUSBストレージデバイスがあるかどうかを判断する(S408)。
【0044】
切断されたUSBストレージデバイスがある場合には、USBストレージ状態管理部203は、そのUSBストレージデバイスに関する接続状態情報をテーブルから削除する(S409)。
【0045】
さらに、USBストレージ状態管理部203は、切断されたUSBストレージデバイスがバックアップ先(バックアップデータの格納先)として設定されたUSBストレージデバイスであるかを判断する(S410)。バックアップ先の設定方法は後述する。
【0046】
バックアップ先として設定されたUSBストレージデバイスでない場合には、USBストレージ状態管理部203は、USBストレージデバイスが引き抜かれたことをアプリケーション部200に通知する。アプリケーション部200は、USBストレージデバイスが引き抜かれたこと、すなわちUSBストレージデバイスが外されたことを通常通りにユーザに通知する(S411)。
【0047】
バックアップ先として設定されたUSBストレージデバイスである場合には、USBストレージ状態管理部203は、バックアップ先であるUSBストレージデバイスが引き抜かれたことをアプリケーション部200に通知する。アプリケーション部200は、バックアップ先であるUSBストレージデバイスが引き抜かれたこと、すなわちバックアップ先であるUSBストレージデバイスが外されたことをユーザに通知する(S412)。
【0048】
ユーザへの通知方法は、USBストレージデバイスの引き抜きを示すメッセージを操作部107へ表示してもよいし、USBストレージデバイスの引き抜きを示すメールを特定のアドレスへ送信してもよい。
【0049】
これにより、ユーザが、USBストレージデバイスがバックアップ先になっていることを知らずにそのUSBストレージデバイスを外してしまったとしても、バックアップ先になっているUSBストレージデバイスが外されたことを認識できる。
【0050】
図5は、USBストレージデバイスの接続状態を表示する操作部107の画面の一例を示す図である。画面501は、USBストレージデバイスが一つも接続されていない場合に表示される画面である。画面502は、新規のUSBストレージデバイスが接続された場合に表示される画面である。「メモリーメディア」という名称の新規のUSBストレージがリスト上に追加されている。
【0051】
つぎに、バックアップ先の設定について説明をする。バックアップ先の設定は、LAN111を介して送られてくる外部装置からの指示に従って行われる。または、操作部107を介して入力される指示に従って行われる。
【0052】
図6は、外部装置または操作部107で表示されるバックアップ設定画面の一例を示す図である。プルダウンボタン601は、バックアップデータの格納先を選択するためのボタンである。ユーザは、プルダウンボタン601を使って、「USB HDD」または「SMBサーバ」を選択可能である。「USB HDD」はUSBストレージデバイスの一例である。「SMBサーバ」は、SMBというプロトコルを使ってLAN111を介してデータをやりとりするサーバである。
【0053】
入力エリア602は、バックアップ先のフォルダへのパスを入力するためのエリアである。ユーザは、「USB HDD」を選択した場合には、そのUSB HDDのどのフォルダへバックアップデータを保存するかを決めて、そのフォルダを示すパスを入力エリア602にて指定する。
【0054】
入力エリア603は、SMBサーバを利用するために必要な情報を入力するためのエリアである。ユーザは「SMBサーバ」を選択した場合には、バックアップデータの格納先となるSMBサーバに関する情報を入力エリア603にて入力する。「ホストIPアドレス」は、SMBサーバのIPアドレスである。「ユーザ名」は、SMBサーバを利用するユーザの名前である。「パスワード」は、SMBサーバを利用するためのパスワードであって、ユーザ名と対になっているパスワードである。「確認入力」は、パスワードの確認のためにパスワードを再入力するためのエリアである。「フォルダへのパス」は、バックアップ先のフォルダへのパスである。ユーザは、SMBサーバのどのフォルダへバックアップデータを保存するかを決めて、そのフォルダを示すパスを「フォルダへのパス」として指定する。
【0055】
チェックボックス604は、バックアップデータを暗号化するか否かを指定するためのチェックボックスである。ユーザは、バックアップデータを暗号介してバックアップ先に保存したい場合には、チェックボックス604にてチェックを入れる。チェックボックス604の下にある「パスワード」は、データを暗号化するために必要なパスワードである。ユーザは、チェックボックス604にチェックを入れた場合、データを暗号化するために必要なパスワードを「パスワード」として指定する。「確認入力」は、パスワードの確認のためにパスワードを再入力するためのエリアである。
【0056】
ユーザが、外部装置に表示されている設定画面でOKボタン605を押下すると、設定画面で設定されたデータ(これを、バックアップ設定データと呼ぶ)が外部装置からデータ処理装置100に送信され、RAM103に記憶される。ユーザが、操作部107に表示されている設定画面でOKボタン605を押下すると、設定画面で設定されたデータ(これを、バックアップ設定データと呼ぶ)がRAM103に記憶される。
【0057】
図7は、バックアップ先の設定処理を示すフローチャートである。この設定処理は、CPU102がプログラムを実行することにより、実現される。図7では、USBストレージデバイスをバックアップ先とする場合のみを説明する。
【0058】
アプリケーション部200は、設定画面で設定されたデータに基づいて、バックアップ先としてUSB HDDが指定されたかどうかを判定する(S701)。USB HDDがバックアップ先として指定されていない場合には、設定処理は終了する。
【0059】
USB HDDがバックアップ先として指定された場合、アプリケーション部200は、データ処理装置100に接続されているUSBストレージデバイスについての接続状態情報をUSBストレージ状態管理部203から取得する(S702)。つぎに、アプリケーション部200は、USBストレージデバイスがデータ処理装置100に接続されているかどうかを判定する(S703)。USBストレージデバイスが接続されていない場合には、設定処理を終了する。
【0060】
USBストレージデバイスが接続されている場合には、アプリケーション部200はバックアップ先判定処理を実行する(S704)。バックアップ先判定処理の詳細は後述する。バックアップ先判定処理を実行した後、アプリケーション部200は、バックアップ先判定処理で選ばれたUSBストレージデバイスが1つであるかどうかを判定する(S705)。0個または複数個である場合には、設定処理を終了する。1つである場合には、アプリケーション部200は、そのUSBストレージデバイスの接続状態情報を、バックアップ用のUSBストレージデバイスを識別する情報(これをバックアップ先識別情報と呼ぶ)としてRAM103に記憶する(S706)。S410では、切断されたUSBストレージデバイスがこのバックアップ先識別情報の示すUSBストレージデバイスであるかを判断する。
【0061】
図8は、S704のバックアップ先判定処理を示すフローチャートである。このバックアップ先判定処理は、CPU102がプログラムを実行することにより、実現される。
【0062】
アプリケーション部200は、S702で取得した1または複数のUSBストレージデバイスの接続状態情報のうち、1つのUSBストレージデバイスの接続状態情報を取得する(S801)。つぎに、アプリケーション部200は、その接続状態情報によって示される全体容量が閾値以上であるかどうかを判定する(S802)。閾値以上でない場合には、S804に移行する。閾値以上である場合、アプリケーション部200は、そのUSBストレージデバイスをバックアップ用のUSBストレージデバイスの候補として記憶する(S803)。
【0063】
アプリケーション部200は、他にも接続状態情報があるかどうかを判定し(ステップS804)、ある場合には、ステップS801に進み、ない場合には、バックアップ先判定処理を終了する。
【0064】
閾値は、バックアップ用のUSBストレージデバイスを選択する基準として任意に決めることができる。一例として、HDD105のパーティションサイズやバックアップすべきデータのデータサイズを閾値としてもよい。
【0065】
S802では、USBストレージデバイスの全体容量と閾値とを比較したが、USBストレージデバイスの空き容量と閾値とを比較してもよい。
【0066】
図7の設定処理では、バックアップ先判定処理で選ばれたUSBストレージデバイスが複数ある場合には、バックアップ用のUSBストレージデバイスを決定しない。これは、バックアップ以外の目的で接続されたUSBストレージデバイスをバックアップ用のUSBストレージデバイスとして選ばないようにするためである。
【0067】
つぎに、データのバックアップについて説明をする。バックアップの実行は、LAN111を介して送られてくる外部装置からの指示に従って行われる。または、操作部107を介して入力される指示に従って行われる。
【0068】
図9は、外部装置または操作部107で表示される、バックアップを実行するための操作画面の一例を示す図である。エリア901は、データ処理装置100で保持されている全文書データをバックアップするか、前回からの差分だけをバックアップするかを選択するためのエリアである。エリア902は、バックアップデータの格納先を表示する。エリア903は、バックアップ先のフォルダへのパスを表示する。エリア904は、バックアップを実行可能な状態であるかを表示する。実行ボタン905は、バックアップの実行を指示するためのボタンである。
【0069】
図10は、バックアップ開始処理を示すフローチャートである。このバックアップ開始処理は、CPU102がプログラムを実行することにより、実現される。
【0070】
バックアップの実行が指示されると、アプリケーション部200は、RAM103に保存されているバックアップ設定データとバックアップ先識別情報に従って、バックアップ先の接続確認を行う(S1001)。そして、アプリケーション部200は、バックアップ先に接続可能であるかを判定する(S1002)。バックアップ先に接続できない場合には、アプリケーション部200はエラーを通知して(S1003)、バックアップ開始処理を終了する。
【0071】
バックアップ先に接続可能である場合には、アプリケーション部200は、バックアップ先の残り容量を取得する(S1004)。さらに、アプリケーション部200は、バックアップデータがどれくらいのサイズになりそうかを計算する(S1005)。そして、アプリケーション部200は、S1004で取得した残り容量とS1005で計算したデータサイズとを比較して、バックアップデータをバックアップ先に格納可能であるかを判定する(S1006)。
【0072】
格納可能であれば、アプリケーション部200は、バックアップ処理部206にバックアップ処理を実行させる(S1007)。バックアップ処理の詳細は後述する。格納可能でなければ、アプリケーション部200は、エラーを通知する(S1003)。
【0073】
図11は、S1007のバックアップ処理を示すフローチャートである。このバックアップ処理は、CPU102がプログラムを実行することにより、実現される。
【0074】
まず、バックアップ処理部206は、バックアップすべきデータを所定サイズ分取得し(S1101)、それからバックアップデータを作成する(S1102)。
【0075】
バックアップ処理部206は、バックアップデータの暗号化が指定されているかどうかを判定する(S1103)。バックアップデータの暗号化が指定されている場合には、暗号化部207がバックアップデータを暗号化する(S1104)。
【0076】
つぎに、バックアップ処理部206は、バックアップデータをバックアップ先に格納する(S1105)。そのあと、バックアップ処理部206は、バックアップ先の残り容量が不足しているかどうかを判定する(S1106)。不足していなければ、バックアップ処理部206は、次にバックアップすべきデータがまだ残っているかどうかを判定する(S1007)。残っている場合には、S1101に進み、残っていない場合には、バックアップ処理を終了する。
【0077】
バックアップ処理の途中でバックアップ先の残り容量が不足したら、バックアップ処理部206は、アンマウントフラグを設定して(S1008)、バックアップ処理を終了する。アンマウントフラグとは、システム管理者のみがバックアップ用のUSBストレージデバイスをアンマウントすることができることを示すフラグである。ここでは、システム管理者のみがアンマウントをすることができるとしたが、アンマウントすることができる者は、システム管理者以外であってもよい。
【0078】
バックアップ処理は、実行ボタン905の押下に従って実行されるとは限らない。バックアップ処理はスケジュールに従って実行されることもある。つぎに、スケジュールに従って実行されるバックアップ処理について説明をする。
【0079】
図12は、外部装置または操作部107で表示される、バックアップのスケジュールを設定するための設定画面の一例を示す図である。チェックボックス1201は、データ処理装置100で保持されている全文書データをバックアップするか否かを指定するためのチェックボックスである。以下では、全文書データをバックアップすることを「全体バックアップ」と呼ぶ。ユーザは、全体バックアップを希望する場合、チェックボックス1201にチェックを入れる。入力エリア1202は、毎日全体バックアップを実行する場合に毎日何時に全体バックアップを実行するかを指定するためのエリアである。ユーザは、全体バックアップを実行すべき時刻を入力する。入力エリア1203は、指定された曜日に全体バックアップを実行する場合に、何曜日の何時に全体バックアップを実行するかを指定するためのエリアである。ユーザは、全体バックアップを実行したい曜日の欄に、全体バックアップを実行すべき時刻を入力する。
【0080】
チェックボックス1204は、前回からの差分だけをバックアップするか否かを指定するためのチェックボックスである。以下では、前回からの差分だけをバックアップすることを「差分バックアップ」と呼ぶ。ユーザは、差分バックアップすることを希望する場合、チェックボックス1204にチェックを入れる。入力エリア1205は、毎日差分バックアップを実行する場合に毎日何時に差分バックアップを実行するかを指定するためのエリアである。ユーザは、差分バックアップを実行すべき時刻を入力する。入力エリア1206は、指定された曜日に差分バックアップを実行する場合に、何曜日の何時に差分バックアップを実行するかを指定するためのエリアである。ユーザは、差分バックアップを実行したい曜日の欄に、差分バックアップを実行すべき時刻を入力する。
【0081】
ユーザが、外部装置に表示されている設定画面でOKボタン1207を押下すると、設定画面で設定されたデータ(これを、スケジュール設定データと呼ぶ)が外部装置からデータ処理装置100に送信され、RAM103に記憶される。ユーザが、操作部107に表示されている設定画面でOKボタン1207を押下すると、設定画面で設定されたデータ(これを、スケジュール設定データと呼ぶ)がRAM103に記憶される。
【0082】
図13は、バックアップ処理をスケジューリングするスケジューリング処理を示すフローチャートである。このスケジューリング処理は、CPU102がプログラムを実行することにより、実現される。
【0083】
アプリケーション部200は、スケジュール設定データをRAM103から取得する(S1301)。つぎに、アプリケーション部200は、時計から現在時刻を取得する(S1302)。時計はデータ処理装置100に内蔵されていてもよいし、LAN111に接続されていてもよい。時計がLAN111に接続されている場合には、データ処理装置100はLAN111を介して時計から現在時刻を取得する。
【0084】
アプリケーション部200は、S1301で取得したスケジュール設定データとS1302で取得した現在時刻とを比較し、全体バックアップまたは差分バックアップを実行するよう指定された時刻と現在時刻とが一致するかどうかを判定する(S1303)。一致しなければ、S1301に戻る。
【0085】
指定時刻と現在時刻とが一致している場合には、アプリケーション部200は、図10のバックアップ開始処理を実行する(S1304)。
【0086】
つぎに、USBストレージデバイスのアンマウントについて説明をする。アンマウントの実行は、操作部107を介して入力される指示に従って行われる。
【0087】
図14は、アンマウントを実行するための操作画面の一例を示す図である。操作画面1401は、データ処理装置100に接続されていてかつマウントされているUSBストレージデバイスのリストを表示する。このリストには、バックアップ用のUSBストレージデバイス以外のUSBストレージデバイスもリストアップされる可能性がある。
【0088】
ユーザが、操作画面1401にて、アンマウントすべきUSBストレージデバイスを選択して、「取り外し」ボタンを押下すると、選択されたUSBストレージデバイスのアンマウント処理が実行される。操作画面1402は、アンマウントが成功した場合に表示される。操作画面1402では、アンマウントするよう指定されたUSBストレージデバイスがリストから削除されている。
【0089】
図15は、USBストレージデバイスのアンマウント処理を示すフローチャートである。このアンマウント処理は、CPU102がプログラムを実行することにより、実現される。
【0090】
アンマウントの実行が指示されると、USBストレージ検知部204は、アンマウントするよう指定されたUSBストレージデバイスへのアクセスが実行中であるかを判定する(S1501)。アクセス中の場合には、アプリケーション部200は操作部107を介して、アンマウントの失敗を示すエラーを通知する(S1506)。
【0091】
アクセス中でない場合には、アプリケーション部200は、アンマウントするよう指定されたUSBストレージデバイスの接続状態情報をUSBストレージ状態管理部203から取得する(S1502)。つぎに、アプリケーション部200は、RAM103に記憶されているバックアップ先識別情報を取得する(S1503)。
【0092】
そして、アプリケーション部200は、S1502で取得した接続状態情報とS1503で取得したバックアップ先識別情報とを比較し、それらが一致するかどうかを判定する(S1504)。
【0093】
一致しないということは、アンマウントをするよう指定されたUSBストレージデバイスがバックアップ用のUSBストレージデバイスではないことを示す。従って、一致しない場合には、アプリケーション部200は、ユーザにより選択されたUSBストレージデバイスのアンマウントを実行する(S1507)。S1507の詳細は後述する。
【0094】
一致する場合には、アプリケーション部200は、アンマウントフラグが設定されているかどうかを判定する(S1505)。アンマウントフラグが設定されているということは、データのバックアップ中にUSBストレージデバイスの残り容量が不足したことを示すので、そのUSBストレージデバイスを交換可能にする必要がある。従って、アンマウントフラグが設定されている場合には、アプリケーション部200は、ユーザにより選択されたUSBストレージデバイスのアンマウントを実行する(S1507)。
【0095】
S1502で取得した接続状態情報とS1503で取得したバックアップ先識別情報とが一致し、かつアンマウントフラグが設定されていないということは、バックアップ先に指定されているUSBストレージデバイスのアンマウントが指示されたことを示す。従って、アプリケーション部200は操作部107を介して、アンマウントの失敗を示すエラーを通知する(S1506)。バックアップ先になっているUSBストレージデバイスがアンマウントされると、バックアップ処理が適切に実行されなくなるからである。
【0096】
図16は、S1507のアンマウント処理を示すフローチャートである。このアンマウント処理は、CPU102がプログラムを実行することにより、実現される。
【0097】
USBストレージ検知部204は、ユーザにより選択されたUSBストレージデバイスのアンマウントをオペレーティングシステム201に指示する(S1601)。オペレーティングシステム201は、アンマウントの指示を受け付けると、USBストレージデバイスに割り当てられているデバイスファイルを、ファイルシステムのマウントポイントから切り離す。マウントポイントから下の階層に展開されていた、USBストレージデバイスのファイルシステムがなくなるので、USBストレージデバイスに格納されているファイルへのアクセスができなくなる。このアンマウント処理により、USBストレージデバイスに格納されているデータを破損させることなくUSBストレージデバイスをデータ処理装置100から物理的に切断することが可能な状態になる。
【0098】
USBストレージ検知部204は、アンマウントが成功したかどうかを判定する(S1602)。成功した場合には、アンマウントされたUSBストレージ状態管理部203は、USBストレージデバイスの接続状態情報をテーブルから削除する(S1603)。さらに、USBストレージ状態通知部202は、ユーザにより選択されたUSBストレージデバイスがアンマウントされたことをアプリケーション部200に通知する。アプリケーション部200は操作部107を介して、USBストレージデバイスがアンマウントされたことを通知する(S1604)。例えば、図14の操作画面1402を操作部107に表示させる。
【0099】
アンマウントが成功しなかったとUSBストレージ検知部204が判定した場合、USBストレージ状態通知部202は、アンマウントが失敗したことをアプリケーション部200に通知する。アプリケーション部200は操作部107を介して、アンマウントの失敗を示すエラーを通知する(S1605)。
【0100】
図17は、バックアップの設定が解除されたときに表示されるバックアップ設定画面の一例を示す図である。ユーザは、バックアップデータの格納先を「設定しない」に設定することにより、バックアップの設定は解除される。
【0101】
図18は、バックアップの設定を解除する解除処理を示すフローチャートである。この解除処理は、CPU102がプログラムを実行することにより、実現される。
【0102】
図17の示す状態でOKボタンが押下されると、アプリケーション部200は、バックアップ先識別情報がRAM103に記憶されているかどうかを判定する(S1801)。記憶されている場合には、アプリケーション部200は、バックアップ先識別情報及びバックアップ設定データをRAM103から削除する(S1802)。
【0103】
以上で説明した実施形態により、バックアップ先となっているUSBストレージデバイスをアンマウントするよう指定された場合に、そのUSBストレージデバイスがアクセス中であっても、そのUSBストレージデバイスのアンマウントを防ぐことができる。これにより、バックアップの失敗を回避できる。
【0104】
なお、上記の実施形態では、USBストレージデバイスをバックアップ先としたが、その他の種類の外部記憶装置であってもよい。
【0105】
上記の実施形態では、バックアップ先識別情報、バックアップ設定データ、スケジュール設定データはRAM103に記憶されているが、HDD105に記憶されてもよい。
【0106】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0107】
100 データ処理装置
101 コントローラ部
102 CPU
103 RAM
104 ROM
105 HDD
106 操作部I/F
107 操作部
108 USBホストI/F
109 USBストレージデバイス
110 ネットワークI/F
111 LAN
200 アプリケーション部
201 オペレーティングシステム
202 USBストレージ状態通知部
203 USBストレージ状態管理部
204 USBストレージ検知部
205 文書管理部
206 バックアップ処理部
207 暗号化部

【特許請求の範囲】
【請求項1】
外部記憶装置にデータをバックアップするデータ処理装置であって、
外部記憶装置にアクセス可能な状態を設定するアクセス制御手段と、
外部記憶装置を、データのバックアップ先に設定する設定手段と、
前記アクセス可能な状態になっていてかつバックアップ先になっている外部記憶装置にデータをバックアップするバックアップ手段を有し、
前記アクセス制御手段は、
前記アクセス可能な状態を解除するよう指示された外部記憶装置がアクセス中ではなくかつバックアップ先になっていない場合、当該外部記憶装置の前記アクセス可能な状態を解除し、
前記アクセス可能な状態を解除するよう指示された外部記憶装置がアクセス中ではない場合であっても、バックアップ先として設定されている場合、当該外部記憶装置の前記アクセス可能な状態を解除しないことを特徴とするデータ処理装置。
【請求項2】
外部記憶装置の容量が閾値以上であるかを判定する判定手段を有し、
前記設定手段は、外部記憶装置の容量が閾値以上である場合に、当該外部記憶装置をバックアップ先に設定することを特徴とする請求項1に記載のデータ処理装置。
【請求項3】
バックアップ先になっている外部記憶装置へのデータのバックアップを行っていて、当該外部記憶装置の容量が不足した場合に、前記アクセス可能な状態の解除をできるようにするフラグを設定する第2の設定手段を有し、
前記アクセス制御手段は、前記アクセス可能な状態を解除するよう指示された外部記憶装置がバックアップ先として設定されている場合であっても、前記フラグが設定されている場合には、当該外部記憶装置の前記アクセス可能な状態を解除することを特徴とする請求項1または2に記載のデータ処理装置。
【請求項4】
前記アクセス可能な状態を設定するとは、外部記憶装置のマウントを実行することであり、前記アクセス可能な状態を解除するとは、外部記憶装置のアンマウントを実行することであることを特徴とする請求項1乃至3のいずれか1項に記載のデータ処理装置。
【請求項5】
前記外部記憶装置はUSBストレージデバイスであることを特徴とする請求項1乃至4のいずれか1項に記載のデータ処理装置。
【請求項6】
外部記憶装置にデータをバックアップするデータ処理装置であって、
外部記憶装置にアクセス可能な状態を設定するアクセス制御手段と、
外部記憶装置を、データのバックアップ先に設定する設定手段と、
前記アクセス可能な状態になっていてかつバックアップ先になっている外部記憶装置にデータをバックアップするバックアップ手段と、
バックアップ先になっている外部記憶装置が外された場合と、バックアップ先になっていない外部記憶装置が外された場合とで、外部記憶装置が外されたことを異なる方法で通知する通知手段とを有することを特徴とするデータ処理装置。
【請求項7】
外部記憶装置にデータをバックアップするデータ処理装置で実行されるアクセス制御方法であって、
外部記憶装置にアクセス可能な状態を設定するステップと、
外部記憶装置を、データのバックアップ先に設定するステップと、
前記アクセス可能な状態になっていてかつバックアップ先になっている外部記憶装置にデータをバックアップするステップと、
前記アクセス可能な状態を解除するよう指示された外部記憶装置がアクセス中ではなくかつバックアップ先になっていない場合、当該外部記憶装置の前記アクセス可能な状態を解除するステップを有し、
前記アクセス可能な状態を解除するよう指示された外部記憶装置がアクセス中ではない場合であっても、バックアップ先として設定されている場合、当該外部記憶装置の前記アクセス可能な状態を解除しないことを特徴とするアクセス制御方法。
【請求項8】
外部記憶装置にデータをバックアップするデータ処理装置で実行されるアクセス制御方法であって、
外部記憶装置にアクセス可能な状態を設定するステップと、
外部記憶装置を、データのバックアップ先に設定するステップと、
前記アクセス可能な状態になっていてかつバックアップ先になっている外部記憶装置にデータをバックアップするステップと、
バックアップ先になっている外部記憶装置が外された場合と、バックアップ先になっていない外部記憶装置が外された場合とで、外部記憶装置が外されたことを異なる方法で通知するステップとを有することを特徴とするアクセス制御方法。
【請求項9】
請求項7または8に記載のアクセス制御方法をコンピュータに実行させる、前記コンピュータにより読み取り可能なプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate