というかメモ。
スナップショットの命名規則
通常のディスクイメージ
VM名.vmdk VM名-s001.vmdk
スナップショット
VM名-000000.vmdk VM名-000000-s001.vmdk
というわけで、「-000000」の文字列が追加される。数値は、
- はじめにスナップショットを取ると、000001。
- スナップショットを作成し続けると、000001, 000002, 000001...と、番号が交互に入れ替わる。
- Revertしても番号は交互に入れ替わる。
- スナップショットを消すと番号はリセットされる。
- VMware Server 2.0 では1代分のスナップショットしか取れないので、000002のスナップショットができた時点で000001は消滅する。
バックアップしてみる(14:50修正)
- スナップショットを取る前に、VMXファイルをコピー
- スナップショットを取って、次のファイルをコピー
VM名.vmdk VM名-s001.vmdk
- バックアップしたVMをAdd Inventoryして起動できるか確認。
- UUIDはCopy It.
スクリプト化する
@echo off REM ------------------------------------------ REM 設定項目 REM ------------------------------------------ REM [VM名] set VMNAME=VM名 REM [データストアのパス] set DATASTORE=C:\Virtual Machines REM [VMware Server のログインユーザ名] set USERNAME=ユーザ名 REM [VMware Server のログインパスワード] set PASSWORD=パスワード REM ------------------------------------------ rem ;;; 時刻の取得 set today=%date:/=% set tm=%time:~0,5% set tm=%tm::=% rem ;;; 省略用変数 set BKUPDEST=%DATASTORE%\%VMNAME%-backup-%today%-%tm% rem ;;; VMRUN関係 set VMRUN="C:\Program Files\VMware\VMware Server\vmrun.exe" set VMRUNLOGIN=-T server -h https://localhost:8333/sdk -u %USERNAME% -p %PASSWORD% set VMRUNVMPATH="[standard] %VMNAME%\%VMNAME%.vmx" rem ;;; ディレクトリの作成 mkdir "%BKUPDEST%" rem ;;; VMXのコピー copy "%DATASTORE%\%VMNAME%\%VMNAME%.vmx" "%BKUPDEST%\" rem ;;; スナップショットを取る %VMRUN% %VMRUNLOGIN% snapshot %VMRUNVMPATH% rem ;;; VMのコピー copy "%DATASTORE%\%VMNAME%\%VMNAME%.vmdk" "%BKUPDEST%\" copy "%DATASTORE%\%VMNAME%\%VMNAME%-s*.vmdk" "%BKUPDEST%\" rem ;;; スナップショットの削除 %VMRUN% %VMRUNLOGIN% deleteSnapshot %VMRUNVMPATH%
注意点
- スクリプトはやっつけなので、VM名とディスクイメージのファイル名が違うと使えない。
- VMのディレクトリ名とVMファイル名が違っても使えない。
- 各自適当に直せるよな!な!(えー
- スクリプトはやっつけなので、既にスナップショットが存在している場合を想定していない。
- スクリプトはやっつけなので、トラブルが起きても一切保障しない。