JP5046833B2 - 計算機システム及びウイルススキャン方法 - Google Patents

計算機システム及びウイルススキャン方法 Download PDF

Info

Publication number
JP5046833B2
JP5046833B2 JP2007255898A JP2007255898A JP5046833B2 JP 5046833 B2 JP5046833 B2 JP 5046833B2 JP 2007255898 A JP2007255898 A JP 2007255898A JP 2007255898 A JP2007255898 A JP 2007255898A JP 5046833 B2 JP5046833 B2 JP 5046833B2
Authority
JP
Japan
Prior art keywords
volume
virus
update
updated
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007255898A
Other languages
English (en)
Other versions
JP2009087023A (ja
Inventor
郁子 小林
信二 木村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2007255898A priority Critical patent/JP5046833B2/ja
Priority to US12/007,939 priority patent/US8091135B2/en
Publication of JP2009087023A publication Critical patent/JP2009087023A/ja
Application granted granted Critical
Publication of JP5046833B2 publication Critical patent/JP5046833B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements

Description

本発明は、計算機システム及びウイルススキャン方法に関する。より詳細には、パーソナル計算機のローカルディスクに相当するディスクをネットワーク型ストレージ装置に搭載し、パーソナル計算機はこのストレージ装置をSAN(Storage Area Network)を用いて使用する計算機システムのウイルススキャン方式に関する。
ウイルスへの感染をふせぐため、ユーザは定期的にパーソナル計算機のウイルスチェックを行う。ユーザはウイルスが発生した期間を限定することはできるが、ウイルスはファイルの作成日時を詐称するため、ファイルの作成日時/ファイルの更新日時/ファイルへのアクセス日時に基づく一定期間内に更新されたファイルのみをスキャンするということができない。そのため、従来のウイルススキャンソフトは、記憶領域に格納される全てのファイルをウイルススキャンする(以下、フルスキャン、という)ことが必要になる。このフルスキャンはパーソナル計算機への負荷が高いので、昼休み時間帯などに一斉に実行する運用がされている。
一方近年では、iSCSI(Internet Small Computer System Interface)やFC(Fibre Channel)によって複数のパーソナル計算機と接続できるネットワーク型ストレージ装置(以下単に、ストレージ装置、という)が使用されている。このストレージ装置を使用する計算機システムでは、各パーソナル計算機は、ストレージ装置に搭載された複数のローカルディスクドライブの記憶領域を論理的に区分けした記憶領域(以下、論理ボリュームLU:Logical Unit、という)をローカルハードディスクドライブの代わりに使用する。なお、このネットワーク型ストレージ装置と接続されるこれらのパーソナル計算機を以下ではストセンPCと呼ぶ。
ストセンPCのウイルススキャン方式として、例えば、次に述べるように特許文献1が提案されている。特許文献1の計算機システムは、ストセンPCとネットワークを介してストレージ装置、ウイルススキャン装置とが接続される構成である。そしてストセンPC毎に、ストセンPCからのデータを格納する正側の論理ボリュームとバックアップデータを格納する副側の論理ボリュームとがペア作成されている。ストセンPCは、正側の論理ボリュームに対してファイル作成等のI/O要求を行い、ウイルススキャン装置は、正側・副側の論理ボリュームを同期させて、副側の論理ボリュームのみを一括してウイルススキャンする。特許文献1の計算機システムでは、ストセンPCがウイルススキャンを実施する必要がないため、ウイルスの検索やウイルス駆除処理の実行率の向上を図ることができる。
特開2007−094803号公報
従来方式では、ウイルススキャン装置が、論理ボリュームに格納されているファイル全体をウイルススキャンする。このためストセンPC1台分に相当する論理ボリュームをスキャンするのは時間がかかる。例えば、30GB容量がある論理ボリュームのウイルススキャンには約2時間が必要になる。1日の時間全てをウイルススキャンのために費やしたとしても、1台のウイルススキャン装置では、ストセンPC12台分に相当する論理ボリュームのウイルススキャンを実施することしかできない。このため、例えばストセンPC200台分に相当する論理ボリュームを有するストレージ装置の場合、全ての論理ボリュームをウイルススキャンするためには、約17台ものウイルススキャン装置が必要になる。しかしながら、ウイルススキャン装置の台数を抑えようとすると、1日にウイルススキャンできる論理ボリュームの数が減るため、ウイルススキャン(フルスキャン)を実施する頻度が下がる、という問題が生じる。
そこで本発明の目的は、ウイルススキャン装置の台数を抑えつつも、高頻度でストセンPCの論理ボリュームをフルスキャンすることができる計算機システム及びウイルススキャン方法を提供しようとするものである。
かかる課題を解決するため本発明は、1又は複数のハードディスクドライブの記憶領域上に形成される複数の論理ボリュームに、パーソナル計算機と、ウイルススキャン装置と、前記パーソナル計算機からのデータを格納するストレージ装置と、を有する計算機システムであって、前記複数の論理ボリュームは、前記パーソナル計算機からのデータを格納する正ボリュームと、任意の時点での前記正ボリュームの状態を格納するスナップショットボリュームと、前記正ボリューム内の更新された記憶領域のアドレスを示す更新ブロックアドレス情報のコピーを格納するための退避先ボリュームと、を有し、前記ストレージ装置は、前記正ボリュームの前記更新ブロックアドレス情報を前記退避先ボリューム上にコピーし、前記正ボリュームの前記スナップショットボリュームを作成し、前記パーソナル計算機は、前記コピーの前に前記ストレージ装置に対する入力/出力を停止して、前記コピーを完了した後に前記ストレージ装置に対する入力/出力を再開し、前記ウイルススキャン装置は、前記退避先ボリュームおよび前記スナップショットボリュームをマウントし、前記スナップショットボリューム内のファイル情報及び前記退避先ボリュームにコピーされた前記更新ブロックアドレス情報から、前記正ボリューム内で更新された更新ファイルを検出し、検出した前記更新ファイルのみから構成される更新ボリュームを作成し、
前記更新ボリュームに対してウイルススキャンを実行し、前記更新ボリューム内にウィルスに感染したファイルがあれば、前記正ボリュームをマウントし、前記ウイルススキャンの結果を参照して、マウントした前記正ボリュームからウィルスに感染したファイルを駆除することを特徴とする。
この結果、ウイルススキャンを実行する対象を更新されたファイル単位で更新ボリューム内に格納することができるので、ウイルススキャンを実行する対象データを大幅に減少することができる。
また本発明は、1又は複数のハードディスクドライブの記憶領域上に形成される複数の論理ボリュームに、パーソナル計算機と、ウイルススキャン装置と、前記パーソナル計算機からのデータを格納するストレージ装置を有する計算機システムのウイルススキャン方法であって、前記パーソナル計算機と前記ストレージ装置との間の入力/出力を停止するステップと、正ボリュームの更新された記憶領域のアドレスを示す更新ブロックアドレス情報を退避先ボリューム上にコピーするステップであって、前記正ボリュームは、ウイルススキャンの対象であるとともに、前記パーソナル計算機からのデータを格納し、前記退避先ボリュームは、前記正ボリューム内の更新された記憶領域のアドレスを示す更新ブロックアドレス情報のコピーを格納するステップと、前記正ボリュームの前記スナップショットボリュームを作成するステップであって、前記スナップショットボリュームは、任意の時点での前記正ボリュームの状態を格納するステップと、前記コピーを完了した後に前記パーソナル計算機とストレージ装置との間の入力/出力を再開するステップと、前記ウイルススキャン装置によって前記退避先ボリュームおよび前記スナップショットボリュームを搭載するステップと、前記スナップショットボリューム内のファイル情報及び前記退避先ボリュームにコピーされた前記更新ブロックアドレス情報から、前記正ボリューム内で更新された更新ファイルを検出し、検出した更新ファイルのみから構成される更新ボリュームを作成するステップと、前記更新ボリュームに対してウイルススキャンを実行するステップと、前記更新ボリューム内にウィルスに感染したファイルがあれば、前記正ボリュームをマウントするステップと、前記ウイルススキャンの結果を参照して、マウントした前記正ボリュームからウィルスに感染したファイルを駆除するステップと、を有することを特徴とする。
この結果、ウイルススキャンを実行する対象を更新されたファイル単位で更新ボリューム内に格納することができるので、ウイルススキャンを実行する対象データを大幅に減少することができる。
本発明によれば、ウイルススキャン装置の台数を抑えつつも、高頻度でストセンPCの論理ボリュームをフルスキャンすることができる。
以下図面について、本発明による一実施形態を説明する。
(1)本実施例の構成
(1−1)システムの構成
図1〜図4を参照して本実施例に係る計算機システムの概略構成について説明する。図1は本実施例に係る計算機システムの概略構成を示すブロック図である。図2は本実施例におけるストセンPCの内部構成を示す概念図である。図3は本実施例におけるウイルススキャン装置の内部構成を示す概念図である。図4は本実施例におけるストレージ装置の内部構成を示す概念図である。
図1に示すように、1は本実施の形態による計算機システムを示す。計算機システム1は、ユーザが使用するストセンPC100、ウイルススキャン処理を行うウイルススキャン装置200、ストセンPCが使用する論理ボリュームLUを備えるストレージ装置300から構成される。ストセンPC100、ウイルススキャン装置200及びストレージ装置300は、IPネットワーク700を介して接続されている。
IPネットワーク700は、イーサネット(登録商標)によって構築されているローカルエリアネットワーク(LAN)であり、通信プロトコルとしてTCP/UDP/IPプロトコルを用いてデータの伝送が実行される。本実施例では、ストセンPC100とストレージ装置300との間における通信にはiSCSIプロトコルを用いる。ストセンPC100とストレージ装置300との間における通信にFCプロトコルを使うこともできる。FCプロトコルを使う場合は、ストセンPC100とストレージ装置300間はFCネットワークで接続される。
(1−2)ストセンPCの構成
ストセンPC100は、図2に示すように、内部に、CPU101、メモリ102及びI/Oインターフェース103を備えている。CPU101、メモリ102、I/Oインターフェース103は相互にバス104を介して接続されている。CPU101は、メモリ102に格納されている各種プログラムを実行する演算処理装置である。メモリ102は、いわゆる内部記憶装置であり、各種プログラム等を記憶する不揮発性メモリおよび演算処理結果を一時的に格納する揮発性メモリの双方を含む。I/Oインターフェース103は、IPネットワーク700を介して、ストレージ装置300又はウイルススキャン装置200と接続されている。
メモリ102には、ストレージ装置300と接続するためのドライバとしての役割をもつストレージ接続プログラム111、マウント処理プログラム112及びI/O制御プログラム113が格納されている。
マウント処理プログラム112は、ストレージ装置300の論理ボリュームLUをストセンPC100にマウントし、ストセンPC100のハードディスクドライブとしてOSに認識させて、ハードディスクドライブに対するI/O要求をストレージ装置300の論理ボリュームLUへ送るためのプログラムである。
I/O制御プログラム113は、本方式に関するプログラムで、ハードディスクドライブ500に対するI/O要求の保留/再開/停止の制御を行うためのプログラムである。
(1−3)ウイルススキャン装置の構成
ウイルススキャン装置200は、図3に示すように、内部にCPU201、メモリ202及びI/Oインターフェース203を備えている。CPU201、メモリ202及びI/Oインターフェース203は、相互にバス204を介して接続されている。CPU201は、メモリ202に格納されている各種プログラムを実行する演算処理装置である。メモリ202は、いわゆる内部記憶装置であり、各種プログラム等を記憶する不揮発性メモリ及び演算処理結果を一時的に格納する揮発性メモリの双方を含む。I/Oインターフェース203は、IPネットワーク700を介して、ストセンPC100のI/Oインターフェース103及びストレージ装置300のホストI/Oインターフェース404並びに管理I/Oインターフェース405と接続されている。
メモリ202には、ウイルススキャンエンジンプログラム210、ストレージ接続プログラム211、ストレージ管理プログラム212、ウイルススキャン制御プログラム213、PC表219、更新ブロック管理表220及びウイルススキャン実行管理表218が格納されている。
ウイルススキャンエンジンプログラム210は、指定された論理ボリュームLU、指定されたファイルのウイルススキャンを実行し、ストセンPC100にウイルス感染あり又はなしを実行結果として報告するためのプログラムである。
ストレージ接続プログラム211は、ウイルススキャン装置200がストレージ装置300のホストI/Oインターフェース404と接続し、スナップショットの作成命令や、論理ボリュームLUへのI/O要求を行うためのプログラムである。
ストレージ管理プログラム212は、ウイルススキャン装置200がストレージ装置300の管理I/Oインターフェース405と接続して、後述する更新ブロックアドレス退避プログラム412に命令を送り、更新アドレス情報管理領域の情報を論理ボリュームLUにコピーするためのプログラムである。
ウイルススキャン制御プログラム213は、本方式に関わるウイルススキャン処理を実行するプログラムであり、後述するスケジュール管理部214、更新ファイル作成部215、更新ブロックアドレス管理部216及びPC制御部217で実行する機能を備えたプログラムである。ウイルススキャン制御プログラム213及び各種表218から220の詳細は後述する。
(1−4)ストレージ装置の構成
ストレージ装置300は、コントローラ400と複数の磁気ハードディスクドライブ(図中、HDDと略記)500から構成される。ストレージ装置300は、複数の磁気ハードディスクドライブ500によってRAID(Redundant Array of Independent/Inexpensive Disks)構成されるディスクアレイ装置であり、1又は複数の論理ボリュームLUを提供する。
ストレージ装置300のコントローラ400は、図4に示すように、内部に、CPU401、メモリ402、ディスクI/Oインターフェース403、ホストI/Oインターフェース404及び管理I/Oインターフェース405を備えている。CPU401、メモリ402、ディスクI/Oインターフェース403、ホストI/Oインターフェース404及び管理I/Oインターフェース405は相互にバス406を介して接続されている。
CPU401は、メモリ402に格納されている各種プログラムを実行する演算処理装置である。メモリ402は、いわゆる内部記憶装置であり、各種プログラム等を記憶する不揮発性メモリ及び演算処理結果を一時的に格納する揮発性メモリの双方を含む。ディスクI/Oインターフェース403は、磁気ハードディスクドライブ500と接続されている。ホストI/Oインターフェース404は、IPネットワーク700を介して、ストセンPC100及びウイルススキャン装置200と接続されている。管理I/Oインターフェース405は、IPネットワーク700を介して、ウイルススキャン装置200と接続されている。
メモリ402には、更新アドレス情報管理領域410、ディスクアクセスプログラム411、更新ブロックアドレス退避プログラム412及びスナップショット制御プログラム413が格納されている。
更新アドレス情報管理領域410は、ストセンPC100からのライト要求に基づいて更新されたブロックアドレスを管理する論理ボリューム情報表(図中、LU情報表と略記)415と、論理ボリュームLU毎に更新ブロックアドレス情報を管理する退避先ボリューム情報表(図中、退避先LU情報表と略記)416と、を格納する領域である。
ここでブロックアドレスBAとは、論理ボリュームLU内のデータの更新/未更新の状態を差分ビットマップBM上に反映させたアドレスであって、論理ボリュームLUの記憶領域を差分ビットマップBMのブロックアドレスBAで表現したものである。例えば、ストセンPC100からの任意のライト要求によって、論理ボリュームLU内の任意のアドレスに格納されるデータが更新されると、任意のアドレスに対応する差分ビットマップBM上のブロックアドレスBA#1内にフラグが立つように管理されている。このように、ストレージ装置300では、論理ボリュームLU内のデータが更新された場合には、差分ビットマップBM上のブロックアドレスBAに「1」を格納し、未更新の場合には、差分ビットマップBM上のブロックアドレスBAに「0」を格納して、差分ビットマップBMを管理する。なお、論理ボリューム情報表415及び退避先ボリューム情報表416の詳細は後述する。
ディスクアクセスプログラム411は、論理ボリュームLUに対してストセンPC100からのリード・ライト命令をホストI/Oインターフェース404から受信した後、ディスクI/Oインターフェース403を用いてリード・ライト命令を実行するためのプログラムである。また、更新ブロックアドレスをメモリ上に確保した更新アドレス情報管理領域410に記録する。
更新ブロックアドレス退避プログラム412は、本方式に関するプログラムで、更新ブロック情報退避命令を管理I/Oインターフェース405から受信し、更新アドレス情報管理領域410内に格納される情報を、退避先ボリュームULUへコピーするためのプログラムである。
スナップショット制御プログラム413は、論理ボリュームLUに対して発行されるスナップショット作成命令をホストI/Oインターフェース404から受信し、スナップショットボリュームSLUを作成する。
なお、退避先ボリュームULU及びスナップショットボリュームSLUの詳細は後述する。
(1−5)論理ボリュームの構成
それでは次に、図5を参照して、本実施例に係る論理ボリュームLUの構成について説明する。
ストセンPC100のストレージ接続プログラム111又はウイルススキャン装置200のストレージ接続プログラム211は、ターゲット310又は管理ターゲット320と呼ばれる識別情報(以下、ターゲット情報、という)を使ってストレージ装置300に接続する。iSCSIを使用する場合のターゲット情報とは、ホストI/Oインターフェース404のポート(図示せず)を識別するIPアドレス及び論理ボリュームLUを識別する識別情報をいう。また、ターゲット情報としてイニシエータ名の情報を含む場合もある。
ターゲット310又は管理ターゲット320には1つ以上の論理ボリュームLUがマッピングされる。
例えば、ストセンPC100からストレージ装置300のターゲット310に対して接続を行うと、ターゲット310にマッピングされている論理ボリュームLUが、ストセンPC100にマウントされる。
また、ウイルススキャン装置200からストレージ装置300の管理ターゲット320に対して接続し、管理ターゲット320に正ボリュームPLU、退避先ボリュームULU及びスナップショットボリュームSLUをマップすることで、これらの論理ボリュームLUに対してデータの入出力をすることができる。
本システムでは、各ストセンPC100は、ストセンPC100からのデータを格納するための論理ボリュームLUを少なくとも1つ備え、このような論理ボリュームLUを正ボリュームPLUと呼ぶ。
また、本システムでは、差分ビットマップBM上のブロックアドレスBAの情報を格納するための論理ボリュームLUを正ボリュームPLU毎に備えている。正ボリュームPLU内の更新に対応させた差分ビットマップBM上の更新ブロックアドレス情報を他の論理ボリュームLUに退避させ、当該情報を格納するための論理ボリュームLUを退避先ボリュームULUと呼ぶ。なお、複数の正ボリュームLUの格納領域の更新情報を1つの退避先ボリュームULUに格納してもよい。
さらに本システムでは、任意の時点における正ボリュームLU内の状態を格納する論理ボリュームLUを正ボリュームPLU毎に備えており、このような論理ボリュームLUをスナップショットボリュームSLUと呼ぶ。
(2)プログラム及び表の構成
(2−1)ウイルススキャン装置内のウイルススキャン制御プログラム及び各表の構成
本システムにおいて、退避先ボリュームULUとスナップショットボリュームSLUとから更新されたデータのみをファイル単位で格納する更新ボリュームRLUを作成して、当該更新ボリュームRLUに対してウイルススキャンを実行することを特徴としている。
そこで、この特徴を実現するために、まず、ウイルススキャン制御プログラム213及び各表218〜220の構成について説明する。ウイルススキャン制御プログラム213は、スケジュール管理部214、更新ファイル作成部215、更新ブロックアドレス管理部216及びPC制御部217で実行する機能を備えたプログラムである。ウイルススキャン制御プログラム213は、CPU201によって常に実行されているプログラムである。
スケジュール管理部214では、CPU201がウイルススキャン実行管理表218を参照し、更新ファイル作成部215、更新ブロックアドレス管理部216及びPC制御部217を用いて、論理ボリュームLUのウイルススキャンを開始する。
ウイルススキャン実行管理表218は、図6に示すように、正ボリュームPLU毎にウイルススキャンが実行された実行結果を管理するための表である。また、ウイルススキャン実行管理表218は、ウイルススキャンの実行対象となる正ボリュームPLUの番号を示す「LU番号」欄218A、ウイルススキャンの実行頻度を示す「実行頻度」欄218B、ウイルススキャンを実行した日を示す「実行日」欄218C、対象の正ボリュームPLU内の記憶領域のうち、実際にデータを格納している記憶領域を示す「実使用量」欄218D、実際にデータを格納している記憶領域のうちデータが更新された記憶領域を示す「更新ブロック量」欄218E、及び、ウイルススキャンを実行した時間を示す「実行時間」欄218Fから構成される。
ウイルススキャン実行管理表218により、ウイルススキャンを行う論理ボリュームLUや、論理ボリュームLU毎のウイルススキャン実行頻度(例えば日1回など)等の実行結果がわかる。
PC制御部217では、CPU201がPC表219を参照し、ウイルススキャンの実行開始時にストセンPC100側でハードディスクドライブ500へのデータ入出力を制御する。
PC表219は、図7に示すように、正ボリュームPLUを使用するストセンPC100を管理するための表であり、特定のストセンPCが使用する正ボリュームPLUの番号を示す「LU番号」欄219A及び正ボリュームPLUを使用するストセンPC100のアドレスを示す「PCアドレス」欄219Bから構成されている。
PC表219により正ボリュームPLUを使用するストセンPC100を特定することができる。
更新ブロックアドレス管理部216では、CPU201が更新ブロック管理表220を参照し、論理ボリュームLU内の更新したブロックアドレスBAの情報を退避先ボリュームULUへコピーする。
更新ブロック管理表220は、図8に示すように、正ボリュームPLU内の更新したブロックアドレスBAの情報を管理する表であり、後述する退避先ボリューム情報表416に基づいて作成される表である。
また、更新ブロック管理表220は、更新データを格納している正ボリュームPLUの番号を示す「LU番号」欄220A、正ボリュームPLUの更新データのうちビットマップBM上の1ブロックで管理するサイズを示す「更新ブロックサイズ」欄220B、更新したブロックアドレスBAの情報を格納する退避先ボリュームULUの番号を示す「退避先LU」欄220C、更新回数を示す「世代数」欄220D、更新したブロックアドレス情報を退避先ボリューム情報表416にいくつ格納しているかを示す「格納数」欄220E、更新したブロックアドレスBAの最新情報を格納する退避先ボリューム情報表416の配列番号を示す「格納配列番号」欄220F、及び、更新ブロックアドレス情報を退避先ボリュームULUに最後に格納した日を示す「最終退避日」欄220Gから構成される。
更新ブロック管理表220により、更新したブロックアドレスの情報のコピー先(退避先)を特定することができる。
更新ファイル作成部215では、CPU201が退避先ボリュームULU内の更新ブロックアドレス情報とスナップショットボリュームSLUとを参照して、更新されたファイルのみを含む更新ボリュームRLUを作成する。
(2−2)ストレージ装置の各種表の構成
次に、ストレージ装置300の更新アドレス情報管理領域410にあるボリューム情報表415及び退避先ボリューム情報表416について説明する。
ボリューム情報表415は、図9に示すように、正ボリュームPLU毎のボリューム情報を管理する表であり、全正ボリュームPLU内の更新したブロックアドレスBAの情報を管理する。
退避先ボリューム情報表416は、ボリューム情報表415で格納する各正ボリュームPLUの詳細なボリューム情報を管理する表であり、各正ボリュームPLUの数だけ退避先ボリューム情報表416が存在する。例えば、図9は、1の番号が割り振られた正ボリュームPLU#1の退避先ボリューム情報表416を示している。正ボリュームPLU#1の退避先ボリューム情報表416には格納毎に配列番号が割り振られ、日毎に更新するブロックアドレスの情報が7日間分格納される。退避先ボリューム情報表416の格納配列区分416Aは、ウイルススキャン実行管理表218の「実行頻度」欄218Bで設定する実行頻度毎に区分される。今回、「実行頻度」欄218Bでは1日1回ウイルススキャンを実行するように設定しているため、格納配列区分数は「7」となる。退避先ボリューム情報表416により、世代数分の更新ブロックアドレス情報が退避先ボリュームULUに記録されるので、ウイルススキャンを実施する時には、常に1週間前に更新したブロックをウイルススキャンの対象にすることができる。退避先ボリューム情報表416は、過去の時点での更新ブロックアドレス情報を複数管理することができる。
更新アドレス情報管理領域410には、ウイルススキャン装置200からの「更新ブロック情報記録開始命令」によって指定された正ボリュームPLUの更新ブロックアドレス情報が記録されていく。指定された正ボリュームPLUの記憶領域は、ウイルススキャン装置200からの「更新ブロック情報記録開始命令」によって全て0クリア(初期化)されるが、その後、いずれかの正ボリュームPLUのLBAにライトがあれば、更新アドレス情報管理領域410で管理する当該正ボリュームPLUのLBAに該当するビットがON(1)し、ライトされないブロックはOFF(0)のままで保持されていく。
(3)ウイルススキャン処理
(3−1)初期設定処理
上述の構成を有する計算機システム1において、管理者がウイルススキャン処理を開始する手順について説明する。
まず、ストレージ装置300のCPU401は、正ボリュームPLUとストセンPC100用のターゲット310とをストレージ装置300に作成し、ターゲット310に正ボリュームPLUをマップする。次に、ストレージ装置300のCPU401は、退避先ボリュームULUのボリュームサイズを更新ブロックサイズと世代数とを乗じることで求め、求めたボリュームサイズで退避先ボリュームLUを作成する。本実施例では、正ボリュームPLU毎に退避先ボリュームULUを割り当てて作成するものとする。
例えば退避先ボリュームULUに退避しておく、更新したブロックアドレスの情報の世代数を7世代とする。更新したブロックサイズは、CPU401がディスクアクセスプログラム411に基づいて、1つの正ボリュームPLU内の更新したブロックアドレスBAの情報を管理するために使用しているメモリ領域のサイズである。メモリ領域のサイズは、正ボリュームPLUの総ブロック数と、ディスクアクセスプログラム411がブロックの更新を管理することができる最小のブロック数と、最小のブロック数を格納する領域のサイズと、により求めることができる。
また、ストレージ装置300のCPU401は、スナップショットボリュームSLUのボリューム番号を全論理ボリュームLUから決定し、スナップショットボリュームSLUをストレージ装置300に作成しておく。
管理者は、ストセンPC100が正ボリュームPLUと接続するための識別情報(ターゲットIPアドレス、ターゲット名、インシエータ名)を、各ストセンPC100のストレージ接続プログラム111に設定する。
管理者は、更新ブロックアドレス情報を含むファイルのみを格納する更新ボリュームRLUに対してウイルススキャンを実行する。
次に、管理者はウイルススキャン制御プログラム213を起動させて、ウイルススキャンを行う正ボリュームPLUの番号、ウイルススキャンの実行頻度、更新ブロックサイズ、退避先ボリュームULUの番号、世代数及び正ボリュームPLUを使用するストセンPC100のアドレス、の値を与える。ウイルススキャン装置200のCPU201は、これらの値を、ウイルススキャン実行管理表218、PC表219及び更新ブロック管理表220の対応する欄に設定するとウイルススキャンサービスを開始する。
(3−2)ウイルススキャン処理
管理者による初期設定が終了すると、ウイルススキャン処理を開始する。ウイルススキャン処理は、各CPU101、201、401が全てのプログラムを起動させることで実行する。
図10に示すように、具体的にはウイルススキャン処理は、ウイルススキャン実行管理表218に設定した実行頻度及び実行日に基づいて開始する。
まず、ウイルススキャン装置200のCPU201がウイルススキャン制御プログラム213を起動させると、スケジュール管理部214を介して更新ブロックアドレス管理部216で、ウイルススキャン実行管理表218に登録されている正ボリュームPLUの番号を指定して、ストレージ装置300のディスクアクセスプログラム411に「更新ブロック情報記録開始命令」を送る(S101)。
ストレージ装置300のCPU401は、更新ブロック情報記録開始命令を受け取ると、ディスクアクセスプログラム411を起動させて、更新アドレス管理領域410を初期化し、更新するブロックアドレスの情報の記録を開始する(S102)。
ウイルススキャン装置200のCPU201は、ウイルススキャン実行管理表218の実行頻度及び実行日を参照して、スキャンを行うための正ボリュームPLUを探す(S103)。そしてウイルススキャン装置200のCPU201は、対象があれば(S103:YES)、引き続きウイルススキャン実行処理を行い(S104)、ウイルススキャン実行処理を終了後、再びステップS103に戻る。
なお、ウイルススキャン装置200のCPU201は、スキャン対象の正ボリュームPLUがない場合には(S103:NO)、スキャン対象の正ボリュームPLUを検出するまでステップS103を繰り返す。
(3−3)ウイルススキャン実行処理
それでは、次にウイルススキャン実行処理について説明する。
図11〜図14に示すように、ウイルススキャン装置200のCPU201は、スケジュール管理部214を介したPC制御部217を用いて、ストセンPC100に「I/O停止命令」を送る(S110)。
「I/O停止命令」を受けたストセンPC100は、I/O制御プログラム113に基づいて、ストセンPC100内にあるキャッシュメモリ(図示せず)に保留中のライトブロックデータをストレージ装置300の正ボリュームPLUに対して送信したのち、ストレージ装置300へのライトブロックデータの送信を停止する(S111)。
ウイルススキャン装置200のCPU201は、スケジュール管理部214を介した更新ブロックアドレス管理部216を用いて、ストレージ装置300に「更新ブロック情報退避命令」を送る(S112)。そして、ウイルススキャン装置200のCPU201は、更新ブロック管理表220に設定した更新ブロックサイズ及び格納配列番号の値より、更新されたデータに相当するビットマップ上の更新されたブロック格納位置を求め、ストセンPC100と接続する正ボリュームPLU番号、退避先ボリュームULUの番号及び更新されたブロック格納位置をストレージ装置300に通知する(S113)。
「更新ブロック情報退避命令」を受けたストレージ装置300のCPU401は、更新ブロックアドレス退避プログラム412を起動させ、指定された正ボリュームPLUの更新ブロックアドレス情報を、指定された退避先ボリュームULUにコピーする(S114)。そうしてストレージ装置300のCPU401は、更新ブロックアドレス管理部216を用いて、更新ブロックアドレス管理表220の格納数、格納配列番号を更新し、最終退避日を設定する。
例えば、退避先ボリューム情報表416の格納配列区分416Aの配列3に更新ブロックアドレスの最新情報が格納されると、更新ブロックアドレス管理表220では、対象となる正ボリュームPLUに該当する格納数が「2」から「3」に更新し、格納配列番号も「2」から「3」に更新する。
ウイルススキャン装置200のCPU201は、ウイルススキャン対象のデータを格納する正ボリュームPLUの番号を指定して、ストレージ装置300に「スナップショット作成命令」を送る(S115)。
ストレージ装置300のCPU401は、スナップショット制御プログラム413を起動して、指定された正ボリュームPLUのスナップショットボリュームSLUを作成し、当該正ボリュームPLUと当該スナップショットボリュームSLUをペア設定する(S116)。
ウイルススキャン装置200のCPU201は、スケジュール管理部214を介した更新ブロックアドレス管理部216を用いて、再びストレージ装置300に「更新ブロック情報退避命令」を送る(S117)。
「更新ブロック情報退避命令」を受けたストレージ装置300のCPU401は、更新ブロックアドレス退避プログラム412を起動させ、指定された正ボリュームPLUの記憶領域を初期化して、ビットマップ上のブロックをリセットする(S118)。
ウイルススキャン装置200のCPU201は、ストレージ装置300に作成した退避先ボリュームULUに更新ブロックアドレス情報を退避し終えたので、スケジュール管理部214を介したPC制御部217を用いてストセンPC100に「I/O再開命令」を送る(S119)。
「I/O再開命令」を受けたストセンPC100は、I/O制御プログラム113を起動させて、ストレージ装置300へライトブロックデータの送信を再開する(S120)。
ウイルススキャン装置200のCPU201は、ストレージ管理プログラム212を起動させて、更新ファイル作成部215を用いて退避先ボリュームULU及び、スナップショットボリュームSLUを管理ターゲット320にマップする。そして、ウイルススキャン装置200のCPU201は、ストレージ接続プログラム211を起動して、管理ターゲット320をウイルスウイルススキャン装置200のOS(Operating System)にマウントする(S121)。
ウイルススキャン装置200のCPU201は、更新ファイル作成部215を用いて、退避先ボリュームULU内にある更新ブロックアドレス情報を格納されている数(世代数)だけ読み出し、更新ブロックアドレスBA#m及び更新ブロック量を求める。その後、ウイルススキャン装置200のCPU201は、求めた更新ブロック量をウイルススキャン実行管理表218に登録する(S122)。
また、ウイルススキャン装置200のCPU201は、更新ファイル作成部215を用いて、作成したスナップショットボリュームSLUから実使用量を求め、求めた実使用量を、ウイルススキャン実行管理表218に登録する(S122)。
ウイルススキャン装置200のCPU201は、更新ファイル作成部215を用いて、退避先ボリュームULU及びスナップショットボリュームSLUから更新されたファイルのみを検索する(S123)。
具体的には、ウイルススキャン装置200のCPU201は、更新ファイル作成部215を用いて、スナップショットボリュームSLU内にあるファイルのiノード情報を参照し、更新されたファイルを示す更新ブロックアドレスBA#mを退避先ボリュームULU内から検索する。そして、ウイルススキャン装置200のCPU201は、更新ブロックアドレスBA#mに対応するハードディスクドライブ500上のLBA(Logical Block Addressing)を求める。
なお、iノード情報とは、ファイルの属性情報であり、ファイルの所有者、ファイル長、タイムスタンプ、ファイルのデータブロックアドレス等の情報が記録されている。
ウイルススキャン装置200のCPU201は、ハードディスクドライブ500上のLBAが更新ブロックアドレスBA#mを含まないと判断した場合には(S123:NO)、iノード情報にあるファイル長の長さを零に設定する(S124)。すなわち、ウイルススキャン装置200のCPU201は、更新ブロックアドレスBAを含まないLBAは、ウイルススキャンの対象箇所にはしない設定を行う。
ウイルススキャン装置200のCPU201は、スナップショットボリュームSLU内の全てのファイルに対して、更新されたファイルの検索を行い(S123:YES)、更新されたファイルのみから構成される更新ボリュームRLUを作成する(S125)。
ウイルススキャン装置200のCPU201は、ウイルススキャンエンジンプログラム210を起動させ、スケジュール管理部214を用いて、作成した更新ボリュームPLUに対してウイルススキャンを実行する(S126)。
ブロックの更新量は、1週間で概ね5GBほどである。実使用量が更新量とほぼ同じ場合には、更新ブロックアドレスから更新されたファイルを検索して、当該ファイルに対してウイルススキャンを実行する処理(S126)に無駄な時間がかかってしまう。このため、CPU201は、更新ブロック量及び実使用量より更新割合を求め、更新割合が閾値以下であれば、更新ブロックアドレスから検索した更新されたファイルに対してウイルススキャンを実行する処理を実行し(S126)、閾値を超える場合は、更新ブロックアドレスから検索した更新されたファイルに対してウイルススキャンを実行する処理(S126)を実行しない。
閾値を超える場合には、CPU201は、スナップショットボリュームSLUのボリューム全体に対してウイルススキャンを実行する。
更新割合は、次式(1)
Figure 0005046833
で求められる。
また、閾値は、次式(2)
Figure 0005046833
となる更新割合から求められる。
ウイルススキャン装置200のCPU201は、スケジュール管理部214を用いて、退避先ボリュームULU及びスナップショットボリュームSLUをウイルススキャン装置200のOSからアンマウントし、管理ターゲット320からアンマップする(S127)。
ウイルススキャン装置200のCPU201は、スケジュール管理部214を用いて、ストレージ装置300に「スナップショット解除命令」を送る(S128)。
「スナップショット解除命令」を受けたストレージ装置300のCPU401は、スナップショット制御プログラム413を起動させて、ウイルススキャンを終了した更新ボリュームRLUのベースとなった正ボリュームLUとスナップショットボリュームSLUとのペアを解除する(S129)。
ウイルススキャン装置200のCPU201は、スケジュール管理部214を用いて、ウイルススキャン実行管理表218に実行日及び実行時間を登録する(S130)。
また、ウイルススキャン装置200のCPU201は、ウイルススキャンを実行した結果、更新されたファイルはウイルスに感染されているか否かを判断し(S131)、感染していなければ(S131:NO)、そのままウイルススキャン実行処理を終了する。
一方、ウイルススキャン装置200のCPU201は、更新されたファイルはウイルスに感染されていると判断すると(S131:YES)、後述するウイルス駆除処理を実行して(S132)、ウイルススキャン実行処理を終了する。
(3−4)ウイルス駆除処理
それでは次に、ウイルス感染が検出された場合のウイルス駆除処理について説明する。
まず、図15〜図18に示すように、ウイルス駆除は正ボリュームPLUに対して行う必要があるため、ウイルススキャン装置200のCPU201は、スケジュール管理部214を介したPC制御部217を用いて、ストセンPC100に「ボリュームアンマウント命令」を送る(S140)。
ストセンPCは、マウント処理プログラム112を起動して、ストセンPC100のOSから正ボリュームPLUをアンマウントする(S141)。
ここで、ウイルススキャン装置200のCPU201は、スケジュール管理部214を介した更新ブロックアドレス管理部216を用いて、ストレージ装置300に「更新ブロック情報退避命令」を送る(S142)。これは、CPU210が、ステップS126のウイルススキャン実行中に、正ボリュームPLUに書き込みがあり、更新されたブロックのウイルススキャンを行うためである。
ウイルススキャン装置200のCPU201は、更新ブロックアドレス管理部216を用いて、更新ブロック管理表220の更新ブロックサイズ、格納配列番号の値より、更新されたブロックの格納位置を求め、ストセンPC100に接続していた正ボリュームPLUの番号、退避先ボリュームULUの番号及び更新されたブロック格納位置をストレージ装置300に通知する(S143)。
「更新ブロック情報退避命令」を受けたストレージ装置300のCPU401は、更新ブロックアドレス退避プログラム412を起動させ、指定された正ボリュームPLUの更新ブロックアドレス情報を、指定された退避先ボリュームULUにコピーする(S144)。
ただし、退避先ボリュームULUへの退避は一時的な退避であるため、CPU401は、ステップS114の処置手順と同様の、更新ブロックアドレス管理表220の格納数、格納配列番号、最終退避日の更新は、行わない。
ウイルススキャン装置200のCPU201は、ストレージ管理プログラム212を起動させて、更新ファイル作成部215を用いて退避先ボリュームULU及び正ボリュームPLUを管理ターゲット320にマップする。そして、ウイルススキャン装置200のCPU201は、ストレージ接続プログラム213を起動して、管理ターゲット320をウイルススキャン装置200のOS(Operating System)にマウントする(S145)。
ウイルス感染したファイルは、ウイルススキャンの実行結果として、ウイルススキャン装置に通知されているため(S126)、ウイルススキャン装置200のCPU201は、更新ファイル作成部215を用いて正ボリュームPLUから感染したファイルのみを駆除する(S146)。
次に、ウイルススキャン装置200のCPU201は、更新ファイル作成部215を用いて、退避先ボリュームULU及び正ボリュームPLUから更新されたファイルのみを検索する(S147)。これは、CPU201は、ステップS126のウイルススキャン実行中に正ボリュームPLUに書き込みがあった記憶領域についても、ウイルススキャンの実行処理及びウイルス駆除処理を実行するためである。
具体的には、ウイルススキャン装置200のCPU201は、更新ファイル作成部215を用いて、正ボリュームPLU内にあるファイルのiノード情報を参照し、更新されたファイルを示す更新ブロックアドレスBA#nを退避先ボリュームULU内から検索する。そして、ウイルススキャン装置200のCPU201は、更新ブロックアドレスBA#nに対応するハードディスクドライブ500上のLBA(Logical Block Addressing)を求める。
そうして、ウイルススキャン装置200のCPU201は、ステップS147からS150までの処理手順を、ステップS123からS126までの処理手順と同様に実行して、ウイルススキャンを実行する。
また、ウイルススキャン装置200のCPU201は、ステップS151及びS152の処理手順を、ステップS131及びS132の処理手順と同様に実行して、更新されたファイルがウイルス感染していた場合には、ウイルス駆除処理を実行する。ウイルス駆除処理は、CPU201がステップS140からS146の処理を実行する。
その後、ウイルススキャン装置200のCPU201は、スケジュール管理部214を用いて、退避先ボリュームULU及び正ボリュームPLUをウイルススキャン装置200のOSからアンマウントし、管理ターゲット320からアンマップする(S153)。
ウイルススキャン装置200のCPU201は、ストレージ装置300に「更新ブロック情報記録開始命令」を送る(S154)。
ストレージ装置300のCPU401は、更新ブロックアドレス退避プログラム412を起動させて、指定された正ボリュームPLUの記憶領域を初期化したのち、ブロックの更新を記録する(S155)。
ウイルススキャン装置200のCPU201は、スケジュール管理部214を介したPC制御部217を用い、ストセンPC100に「ボリュームマウント命令」を送る(S156)。
「ボリュームマウント命令」を受けたストセンPC100のCPU101は、マウント処理プログラム112を起動させて、ストセンPC100のOSにウイルス駆除済みの正ボリュームPLUをマウントすると(S157)、ウイルス駆除処理を終了する。
(4)異なる実施例
更新ブロックアドレス情報を退避先ボリュームULUにコピーする手段として、上記では、退避先ボリュームULUをストレージ装置300内に作成し、「更新ブロック情報退避命令」を受けたストレージ装置300の更新ブロックアドレス退避プログラム412が、指定された正ボリュームPLUの更新ブロックアドレス情報を、指定された退避先ボリュームULUにコピーする実施例を説明した。更新ブロックアドレス情報を退避先ボリュームULUにコピーする別の手段として、ウイルススキャン装置200のCPU201が、スケジュール管理部214を介した更新ブロックアドレス管理部216を用いて、ストレージ装置300に「更新ブロック情報退避命令」を送り、「更新ブロック情報退避命令」を受けたストレージ装置300のCPU401は、更新ブロックアドレス退避プログラム412を起動させ、指定された正ボリュームPLUの更新ブロックアドレス情報を、管理I/Oインターフェース405を介して更新ブロックアドレス管理部216にデータ転送することもできる。ウイルススキャン装置200は退避先ボリュームULUをマウントし、更新ブロックアドレス管理部216が退避先ボリュームULUに更新ブロックアドレス情報をコピーすることもできる。
また、更新されたファイルのみをウイルススキャンする方式として、上記ではLBAが更新ブロックアドレスBA#mを含まないと判断した場合に、iノード情報にあるファイル長の長さを零に設定した。別の手段として、スナップショットボリュームSLU内にフォルダAを作成し、スナップショットボリュームSLU内にあるファイルのiノード情報を参照し、更新されたファイルを示す更新ブロックアドレスBA#mを退避先ボリュームULU内から検索する。LBAが更新ブロックアドレスBA#mを含む場合、フォルダAにこのファイルに対するリンクを作成していく。ウイルススキャン装置200のCPU201は、ウイルススキャンエンジンプログラム210を起動させ、スケジュール管理部214を用いて、作成した更新ボリュームPLUのフォルダAに対してウイルススキャンを実行することもできる。
(5)本実施例の効果
以上のように、本実施例では、ウイルススキャンの対象を更新ファイルのみとすることができるため、全ての正ボリュームに対してウイルススキャンをする必要がなくなり、計算機システムにかかる負荷を軽減することができる。
実際上、正ボリュームのブロック更新量は、概ね約5GB/週である。常に1週間分の更新をウイルススキャンする運用にした場合、毎日約5GBのブロックに相当する更新ボリュームRLUをウイルススキャンすることになる。5GB相当の更新ボリュームRLUは約20分でスキャン可能であるため、従来30GBの論理ボリュームLUをウイルススキャンしていた場合に比べ、スキャン時間を約1/6短縮できる。ブロック更新量は、論理ボリュームのサイズによらず一定であるため、論理ボリュームのサイズが大きいほど効果が高い。
さらに、従来では、200台分のストセンPCに相当する論理ボリュームをウイルススキャンするために、17台のウイルススキャン装置が必要であったが、1台のウイルススキャン装置で72台分のストセンPCに相当する論理ボリュームを1日にスキャンできるようになるため、3台のウイルススキャン装置で足りるようになる。
本実施例によれば、ウイルススキャン装置の台数を抑えつつも、高頻度でストセンPCの論理ボリュームをフルスキャンすることができる。
本発明は、1又は複数のストレージ装置を有する計算機システムに広く適用することができる。
本実施例に係る計算機システムの概略構成を示すブロック図である。 本実施例におけるストセンPCの内部構成を示す概念図である。 本実施例におけるウイルススキャン装置の内部構成を示す概念図である。 本実施例におけるストレージ装置の内部構成を示す概念図である。 本実施例におけるストレージ装置が形成する論理ボリュームの構成を概念的に示す説明図である。 本実施例におけるウイルススキャン実行管理表を示す図表である。 本実施例におけるPC表を示す図表である。 本実施例における更新ブロック管理表を示す図表である。 本実施例における更新アドレス情報管理領域を示す説明図である。 本実施例におけるウイルススキャン処理を示すフローチャートである。 本実施例におけるウイルススキャン実行処理を示すフローチャートである。 本実施例におけるウイルススキャン実行処理を示すフローチャートである。 本実施例におけるウイルススキャン実行処理を示すフローチャートである。 本実施例におけるウイルススキャン実行処理を示すフローチャートである。 本実施例におけるウイルス駆除処理を示すフローチャートである。 本実施例におけるウイルス駆除処理を示すフローチャートである。 本実施例におけるウイルス駆除処理を示すフローチャートである。 本実施例におけるウイルス駆除処理を示すフローチャートである。
符号の説明
100……ストセンPC、200……ウイルススキャン装置、300……ストレージ装置、400……コントローラ、500……磁気ハードディスクドライブ(HDD)、LU……論理ボリューム、PLU……正ボリューム、SLU……スナップショットボリューム、ULU……退避先ボリューム、RLU……更新ボリューム、700……IPネットワーク、101、201、401……中央演算装置(CPU)、102、202、402……メモリ、103、203……I/Oインターフェース、403……ディスクI/Oインターフェース、404……ホストI/Oインターフェース、405……管理I/Oインターフェース、111……ストレージ接続プログラム、112……マウント処理プログラム、113……I/O制御プログラム、211……ストレージ管理プログラム、212……ストレージ管理プログラム、213……ウイルス制御プログラム、410……更新アドレス情報管理領域、411……ディスクアクセスプログラム、412……更新ブロックアドレス退避プログラム、413……スナップショット制御プログラム。

Claims (8)

  1. 1又は複数のハードディスクドライブの記憶領域上に形成される複数の論理ボリュームに、パーソナル計算機と、ウイルススキャン装置と、前記パーソナル計算機からのデータを格納するストレージ装置と、を有する計算機システムであって、
    前記複数の論理ボリュームは、
    前記パーソナル計算機からのデータを格納する正ボリュームと、
    任意の時点での前記正ボリュームの状態を格納するスナップショットボリュームと、
    前記正ボリューム内の更新された記憶領域のアドレスを示す更新ブロックアドレス情報のコピーを格納するための退避先ボリュームと、を有し、
    前記ストレージ装置は、前記正ボリュームの前記更新ブロックアドレス情報を前記退避先ボリューム上にコピーし、前記正ボリュームの前記スナップショットボリュームを作成し、
    前記パーソナル計算機は、前記コピーの前に前記ストレージ装置に対する入力/出力を停止して、前記コピーを完了した後に前記ストレージ装置に対する入力/出力を再開し、
    前記ウイルススキャン装置は、前記退避先ボリュームおよび前記スナップショットボリュームをマウントし、
    前記スナップショットボリューム内のファイル情報及び前記退避先ボリュームにコピーされた前記更新ブロックアドレス情報から、前記正ボリューム内で更新された更新ファイルを検出し、
    検出した前記更新ファイルのみから構成される更新ボリュームを作成し、
    前記更新ボリュームに対してウイルススキャンを実行し、
    前記更新ボリューム内にウィルスに感染したファイルがあれば、前記正ボリュームをマウントし、
    前記ウイルススキャンの結果を参照して、マウントした前記正ボリュームからウィルスに感染したファイルを駆除する
    ことを特徴とする計算機システム。
  2. 前記ファイルの属性情報から求まる前記ハードディスクドライブ上のアドレスが前記更新ブロックアドレスの情報に含まれていない場合に、前記アドレスに格納されるファイルのファイル長を零に設定することで、前記更新されたファイルのみを検出する
    ことを特徴とする請求項1に記載の計算機システム。
  3. 前記退避先ボリュームは、
    前記更新ブロックアドレスの情報を複数世代格納する
    ことを特徴とする請求項2に記載の計算機システム。
  4. 前記正ボリューム内の記憶領域のうちデータを格納する記憶領域を示す実使用量とデータが更新された記憶領域を示す更新ブロック量とから求められる更新割合が、前記スナップショットボリュームのボリューム全体に対するウイルススキャン実行処理時間が前記更新ボリュームに対するウイルススキャン実行処理時間を上回るときに求められる閾値を下回る場合には、更新ボリュームに対してウイルススキャンの実行を決定し、また、前記更新割合が前記閾値を超える場合は、前記スナップショットボリュームのボリューム全体に対してウイルススキャンの実行を決定する
    ことを特徴とする請求項3に記載の計算機システム。
  5. 1又は複数のハードディスクドライブの記憶領域上に形成される複数の論理ボリュームに、パーソナル計算機と、ウイルススキャン装置と、前記パーソナル計算機からのデータを格納するストレージ装置を有する計算機システムのウイルススキャン方法であって、
    前記パーソナル計算機と前記ストレージ装置との間の入力/出力を停止するステップと、
    正ボリュームの更新された記憶領域のアドレスを示す更新ブロックアドレス情報を退避先ボリューム上にコピーするステップであって、前記正ボリュームは、ウイルススキャンの対象であるとともに、前記パーソナル計算機からのデータを格納し、前記退避先ボリュームは、前記正ボリューム内の更新された記憶領域のアドレスを示す更新ブロックアドレス情報のコピーを格納するステップと
    前記正ボリュームの前記スナップショットボリュームを作成するステップであって、前記スナップショットボリュームは、任意の時点での前記正ボリュームの状態を格納するステップと
    前記コピーを完了した後に前記パーソナル計算機とストレージ装置との間の入力/出力を再開するステップと、
    前記ウイルススキャン装置によって前記退避先ボリュームおよび前記スナップショットボリュームを搭載するステップと、
    前記スナップショットボリューム内のファイル情報及び前記退避先ボリュームにコピーされた前記更新ブロックアドレス情報から、前記正ボリューム内で更新された更新ファイルを検出するステップと、
    検出した更新ファイルのみから構成される更新ボリュームを作成するステップと、
    前記更新ボリュームに対してウイルススキャンを実行するステップと、
    前記更新ボリューム内にウィルスに感染したファイルがあれば、前記正ボリュームをマウントするステップと、
    前記ウイルススキャンの結果を参照して、マウントした前記正ボリュームからウィルスに感染したファイルを駆除するステップと、を有する
    ことを特徴とするウイルススキャン方法。
  6. ファイルの属性情報から求まる前記ハードディスクドライブ上のアドレスが前記更新ブロックアドレスの情報に含まれていない場合に、前記アドレスに格納されるファイルのファイル長を零に設定することで、前記更新されたファイルとして検出する
    ことを特徴とする請求項5に記載のウイルススキャン方法。
  7. 前記退避先ボリュームに、前記更新ブロックアドレスの情報を複数世代格納するステップを有する
    ことを特徴とする請求項6に記載のウイルススキャン方法。
  8. 前記正ボリューム内の記憶領域のうちデータを格納する記憶領域を示す実使用量とデータが更新された記憶領域を示す更新ブロック量とから更新割合を求めるステップと、
    前記スナップショットボリュームのボリューム全体に対するウイルススキャン実行処理時間が前記更新ボリュームに対するウイルススキャン実行処理時間を上回るときに閾値を求めるステップと、
    前記更新割合が前記閾値を下回る場合に更新ボリュームに対してウイルススキャンの実行を決定し、また、前記更新割合が前記閾値を超える場合は、前記スナップショットボリュームのボリューム全体に対してウイルススキャンの実行を決定するステップと、を有する
    ことを特徴とする請求項7に記載のウイルススキャン方法。
JP2007255898A 2007-09-28 2007-09-28 計算機システム及びウイルススキャン方法 Expired - Fee Related JP5046833B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007255898A JP5046833B2 (ja) 2007-09-28 2007-09-28 計算機システム及びウイルススキャン方法
US12/007,939 US8091135B2 (en) 2007-09-28 2008-01-17 Computer system and virus-scan method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007255898A JP5046833B2 (ja) 2007-09-28 2007-09-28 計算機システム及びウイルススキャン方法

Publications (2)

Publication Number Publication Date
JP2009087023A JP2009087023A (ja) 2009-04-23
JP5046833B2 true JP5046833B2 (ja) 2012-10-10

Family

ID=40509961

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007255898A Expired - Fee Related JP5046833B2 (ja) 2007-09-28 2007-09-28 計算機システム及びウイルススキャン方法

Country Status (2)

Country Link
US (1) US8091135B2 (ja)
JP (1) JP5046833B2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7765400B2 (en) * 2004-11-08 2010-07-27 Microsoft Corporation Aggregation of the knowledge base of antivirus software
US8863287B1 (en) * 2008-06-26 2014-10-14 Emc Corporation Commonality factoring pattern detection
CA2686796C (en) 2008-12-03 2017-05-16 Trend Micro Incorporated Method and system for real time classification of events in computer integrity system
US8312548B1 (en) * 2009-04-24 2012-11-13 Network Appliance, Inc. Volume metadata update system for antivirus attributes
WO2010140222A1 (ja) * 2009-06-02 2010-12-09 富士通株式会社 情報処理システム、管理装置および情報処理方法
US8775736B2 (en) * 2009-10-20 2014-07-08 Dell Products, Lp System and method for enhanced application performance with tiered storage in an information handling system
US8640241B2 (en) * 2009-11-16 2014-01-28 Quatum Corporation Data identification system
US8572728B2 (en) * 2010-06-08 2013-10-29 Hewlett-Packard Development Company, L.P. Initiation of storage device scans
US9558074B2 (en) 2010-06-11 2017-01-31 Quantum Corporation Data replica control
US9665582B2 (en) 2010-08-04 2017-05-30 Quantum Corporation Software, systems, and methods for enhanced replication within virtual machine environments
US8776235B2 (en) * 2012-01-10 2014-07-08 International Business Machines Corporation Storage device with internalized anti-virus protection
US9043914B2 (en) 2012-08-22 2015-05-26 International Business Machines Corporation File scanning
KR101421632B1 (ko) * 2013-02-13 2014-07-22 주식회사 잉카인터넷 멀웨어 스캐닝 시스템 및 방법
US9268940B1 (en) * 2013-03-12 2016-02-23 Symantec Corporation Systems and methods for assessing internet addresses
US9898374B2 (en) 2014-04-08 2018-02-20 International Business Machines Corporation Recovery of an infected and quarantined file in a primary storage controller from a secondary storage controller
US9557924B2 (en) 2014-04-08 2017-01-31 International Business Machines Corporation Anti-virus scan via a secondary storage controller that maintains an asynchronous copy of data of a primary storage controller
US11372811B1 (en) * 2020-03-31 2022-06-28 Amazon Technologies, Inc. Optimizing disk volume scanning using snapshot metadata
CN113238777B (zh) * 2021-05-20 2023-08-22 网易(杭州)网络有限公司 应用程序更新方法、装置、设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5991753A (en) * 1993-06-16 1999-11-23 Lachman Technology, Inc. Method and system for computer file management, including file migration, special handling, and associating extended attributes with files
US7475427B2 (en) * 2003-12-12 2009-01-06 International Business Machines Corporation Apparatus, methods and computer programs for identifying or managing vulnerabilities within a data processing network
JP4718288B2 (ja) * 2005-09-29 2011-07-06 株式会社日立製作所 ディスクレス計算機の運用管理システム
TWI312112B (en) * 2005-12-30 2009-07-11 Ind Tech Res Inst Data managing method, method and apparatus to snapshot data for multiple volumes to a single snapshot volume in a data processing system
JP2007226735A (ja) * 2006-02-27 2007-09-06 Hitachi Software Eng Co Ltd ソフトウェアのインストール方法
US8011010B2 (en) * 2007-04-17 2011-08-30 Microsoft Corporation Using antimalware technologies to perform offline scanning of virtual machine images

Also Published As

Publication number Publication date
JP2009087023A (ja) 2009-04-23
US20090089880A1 (en) 2009-04-02
US8091135B2 (en) 2012-01-03

Similar Documents

Publication Publication Date Title
JP5046833B2 (ja) 計算機システム及びウイルススキャン方法
US8271753B2 (en) Storage controller and storage control method for copying a snapshot using copy difference information
JP4681249B2 (ja) ディスクアレイ装置
US7725940B2 (en) Operation management system for a diskless computer
US6857057B2 (en) Virtual storage systems and virtual storage system operational methods
US9430161B2 (en) Storage control device and control method
US7089395B2 (en) Computer systems, virtual storage systems and virtual storage system operational methods
US7827368B2 (en) Snapshot format conversion method and apparatus
JP4990828B2 (ja) ストレージ装置及びこれの制御方法
US8612681B2 (en) Storage system, storage apparatus and method of controlling storage system
JP4681247B2 (ja) ディスクアレイ装置及びディスクアレイ装置の制御方法
US20190129971A1 (en) Storage system and method of controlling storage system
JP4222917B2 (ja) 仮想記憶システムおよびその動作方法
JP2005292952A (ja) ストレージシステム、ストレージ装置及びリモートコピー方法
JP5944001B2 (ja) ストレージシステム、管理計算機、ストレージ装置及びデータ管理方法
JP2008015768A (ja) 記憶システム並びにこれを用いたデータの管理方法
JP2013531840A (ja) バックアップ・プロセスを処理する方法、システム、及びコンピュータ・プログラム
JP2009064224A (ja) ウィルススキャン方法及びその方法を用いた計算機システム
US20140074782A1 (en) Re-trim of free space within vhdx
JP4398464B2 (ja) 1つのターゲット・ボリュームと1つのソース・ボリュームとの間のポイント・イン・タイム・コピー関連性を管理するためのシステム、方法、及びプログラム
US7853769B2 (en) Computer system for managing number of writes for storage medium and control method therefor
US20190087122A1 (en) Storage system
JP6579149B2 (ja) ストレージ制御装置、及びストレージ制御プログラム
WO2016199265A1 (ja) ストレージシステム、及び、記憶制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120327

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120528

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120619

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120717

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150727

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees