TIPS「シャドウ・コピーでファイルを自動バックアップする(サーバ編)」では、Windows Server 2003やWindows Server 2008上のボリューム・シャドウ・コピー・サービスを使って、更新や削除された以前のバージョンのファイルを取り出せるようにする方法について解説した。サーバ上でボリューム・シャドウ・コピーを有効にしておくと、ファイルが更新されているたびにバックアップが自動的に作成され(デフォルトでは1日2回、変更のチェックとスナップショットの作成が行われる)、間違ってファイルを上書きしたり、削除したりしても、最大で64回分までさかのぼって復旧させることができる(ディスクの空き容量が少ないと、さかのぼれる回数も少なくなる)。
だがWindows XP/Windows Server 2003向けのResource Kitに含まれるvolrest.exeというツールを利用すると、コマンド・プロンプト上から過去のバージョンのファイルを取り出すことができる。大量のファイルを戻したり、複数のサブフォルダの内容をまとめて戻したりするような作業の場合は、コマンド・プロンプト上で作業する方が効率がよい場合がある。本TIPSではその方法について解説する。
操作方法
volrest.exe(Shadow Copies for Shared Folders Restore Tool)というコマンドはWindows Server 2003/Windows XP向けのリソースキットに含まれているツールである。リソースキット・ツールの入手方法や簡単な解説については、Windows TIPS「Windows OS向けリソースキット・ツールを入手する」を参照していただきたい。いったんこれらのOS上にインストールしてしまえば、そこからvolrest.exeだけをコピーして、Windows Vista上で利用することもできるようである。
volrestコマンドの使い方
このツールの使い方は、引数なしで起動すると表示される。
C:\>volrest …引数なしで起動するとヘルプが表示される
VOLREST 1.1 - Previous Version command-line tool
(C) Copyright 2003 Microsoft Corp.
Usage: VOLREST [options] FileName
Options are:
/? - Displays this help.
/A - Includes files with specified attributes.
/AD Directories (only).
/AS System files.
/AH Hidden files.
/B - Uses bare format (no heading information or summary).
/S - Includes files in specified directory and all subdirectories.
/R:<DirectoryName> -
Restore all previous versions in target directory.
/E - Restores empty directories (use with /R).
/SCT - Decorates restored file names with the shadow copy timestamp.
Use with /R. For example:
"foo (Wednesday, January 01, 2003, 14.00.00).doc"
By default files are restored with the same file name. If two
or more previous versions are restored then the second file is
renamed with (2), the third one with (3) and so on.
この例では、「Restoring previous versions from ……」というメッセージとともに、過去のファイルがすべて展開されている。ただしこのままではファイル名がすべて同じになってしまうので、それを避けるため、2つ目以降のファイルには末尾に「(1)」「(2」「(3)」……というふうに、数字が付けられている。展開先のフォルダを確認すると、次のようになっている。
Z:\user01\企画原稿>dir extracted …展開した先のフォルダを見てみる
ドライブ P のボリューム ラベルは USER です
ボリューム シリアル番号は BC76-4D39 です