ぼんくらサイバーリテラシーぶろぐ

ぼんくらサイバーリテラシーぶろぐ

未熟者によるサイバーリテラシーに関するブログ

【VSS】今すぐバックアップとリストアを実験してみた


パソコンのデータのバックアップを目的に、
Windows10に標準搭載されている VSS(Volume Shadow Copy Service)を試してみました。
ちなみに今回は、任意のタイミングでバックアップを取るやり方での実験です。

余談ですが、VSS と聞くと昔使っていたバージョン管理システムVisual SourceSafe」を思い出します。
略称は同じ VSS ですが、全く異なるものです。 ← 当たり前かw

1.VSS の仕様とやりたいこと

●VSS の仕様
VSS は、GUI で設定する方法だと、任意のタイミングでバックアップをとることができません。
VSS を有効にすることで、1週間に1回ぐらいの間隔のバックアップが実施されるものみたいです。

●やりたいこと
しかし、私が求めているのはそーゆーバックアップではなく、
Windows の設定を変更したり、ファイルを作成したりした時とかに
自分のタイミングでバックアップを取りたいわけです。
つまりは、VMware のスナップショット的な使い方をしたいのです。

2.実験で分かったことまとめ

結論から言ってしまいますが、実際に実験した結果、自分の想像とは違うことが分かりました。
私の想像では、ドライブ毎にバックアップ・リストアでき、
バックアップした時点の状態に全てを戻せるものと思っておりました。
分かったことをまとめると ↓ こんな感じです。

✔ 今すぐバックアップはコマンドでできる
✔ 復元はフォルダ単位・ファイル単位でできる
✔ 復元しなくともバックアップ時の状態をエクスプローラーで確認・コピーできる
✔ 復元してもバックアップ時になかったフォルダ・ファイルは残る
✔ バックアップ後に修正したファイルは復元すると元に戻る
✔ ドライブ全体の復元はできない
✔ バックアップのファイルは「System Volume Information」にできる

結論を先に書きましたが、以降、実験した内容を記載します。

3.VSS の今すぐバックアップ

任意のタイミングでバックアップする方法として、コマンドラインで実施する方法がありました。
その手順は ↓ のとおりです。

コマンドプロンプトを管理者として実行する

Windows キー >「cmd」と入力 > 「管理者として実行」
f:id:AlcatrazExodus:20210814194737p:plain:w500

②「wmic shadowcopy call create volume=C:\」を実行するとバックアップが実行される

これはCドライブの場合です。
例えばDドライブの場合は、「volume=D:\」とします。
f:id:AlcatrazExodus:20210814200317p:plain

4.実験前の前提

実験の前に前提の状況を作ります。
① まず、↑でやったバックアップをバックアップ①とします。
② C:\test フォルダに、「テスト.txt」ファイルを作成します。
  f:id:AlcatrazExodus:20210814201304p:plain:w520
③ 2回目のバックアップをとります。
  バックアップ②とします。
 f:id:AlcatrazExodus:20210815111547p:plain:w520
④「テスト.txt」ファイルを削除します。
 f:id:AlcatrazExodus:20210814201625p:plain:w520

5.実験1:各バックアップ時のファイル確認

各バックアップ時のフォルダの中身をエクスプローラーで確認することができました。
①「test」フォルダ 右クリック >「以前のバージョンの復元」
f:id:AlcatrazExodus:20210814203047p:plain
② 復元ポイントが2つありますね。
f:id:AlcatrazExodus:20210815112650p:plain
③ ダブルクリックまたは「開く」ことでバックアップ時点のフォルダ内をエクスプローラーで開くことができました。
f:id:AlcatrazExodus:20210815120659p:plain

6.実験2:復元(リストア)

①今度はバックアップ②時点に復元してみます。
f:id:AlcatrazExodus:20210815123133p:plain
②「テスト.txt」ファイルが復元されました。
f:id:AlcatrazExodus:20210815123626p:plain

7.実験3:新規ファイル作成後にリストア

①新しいファイルを作成した後、バックアップ②時点に復元してみます。
f:id:AlcatrazExodus:20210815124258p:plain
f:id:AlcatrazExodus:20210815123133p:plain
②なんと新規ファイルは残ったままでした。
 どうやら完全に前の状態に復元されるわけではないようです。
f:id:AlcatrazExodus:20210815125408p:plain

8.実験4:同じファイル名で異なる中身

①今度は「テスト.txt」の中身を変えた後、バックアップ②時点に復元してみます。
f:id:AlcatrazExodus:20210815163757p:plain
f:id:AlcatrazExodus:20210815123133p:plain

②ファイル名が同じものはバックアップ②時点の中身に戻りました。
f:id:AlcatrazExodus:20210815164230p:plain

9.実験5:ドライブ全体の復元

ドライブに対して復元ができるのか試してみました。
f:id:AlcatrazExodus:20210815164749p:plain
f:id:AlcatrazExodus:20210815170549p:plain
「復元」ボタンが活性化せず、ドライブ全体の復元はできませんでした。
しかし、ダブルクリックまたは「開く」ことにより、
エクスプローラーでバックアップ時点のフォルダ・ファイルを確認することができました。

10.実験6:フォルダの復旧

「test」フォルダを削除後、バックアップ②時点に復元してみます。
f:id:AlcatrazExodus:20210815171643p:plain
f:id:AlcatrazExodus:20210815193211p:plain
無事復旧できました!

11.バックアップの保存場所

ところで VSS のバックアップはどこに保存されるのでしょうか。
それは、Cドライブ直下の「System Volume Information」フォルダでした。
↓ の通り、エクスプローラーで「隠しファイル」を表示して、
保護された OS ファイルを表示するようにすると見ることができます。
f:id:AlcatrazExodus:20210815175630p:plain

中身を見ようとダブルクリックをしたところエラーが...
f:id:AlcatrazExodus:20210815175512p:plain

管理者権限でも見れないため、このフォルダの権限設定を変更する必要があります。
が、OS のフォルダの設定を変更はしたくないので、とあるツールで中身を見てみます。

ちなみに VSS バックアップ前の状態が ↓ です。
f:id:AlcatrazExodus:20210815180335p:plain

そして、バックアップ①の直後が ↓ です。 f:id:AlcatrazExodus:20210815182509p:plain
日時もバックアップ①と一致しています!

そしてそして、バックアップ②の直後が ↓ です。
f:id:AlcatrazExodus:20210815191418p:plain
こちらの日時もバックアップ②と一致してますね!


VMware のスナップショッみたいに丸々元に戻せるわけではなかったですが、
フォルダ毎、ファイル毎にバックアップ時の状態をコピーしたり戻せたりできるので、
これはこれで使い道がありそうですね。