Snapshot に含まれる仮想ディスクを消してしまったときの対処法
災難は何気ない日常のすぐそばに潜んでいます。いつもと変わらない平凡な一日が、突如として悲劇に変貌するのです。あの日と同じように・・・。
私はその日、いつもと同じようにサーバーで作業をしていました。VMware の仮想マシンには 2 つの仮想ディスクが接続されていたのですが、そのうちのひとつが不要になったので仮想マシンから取り外し、ファイルも削除してしまいました。それが後に恐ろしい結果を招くことも知らずに。
そう、不幸はすぐにやってきました。仮想マシンをふたたび立ち上げようとしたそのとき、見慣れないダイアログが表示されたのです。
File not found: 〜.vmdk This file is required to power on this virtual machine. If this file was moved, please provide its new location.
・・・
・・・
・・・ナンデ?(゜Д゜;
キャンセルボタンを押すと起動自体がキャンセルされてしまいますし、Browse ボタンで別の仮想ディスクを指定しても、受け付けてくれません。
やっちまった・・・orz
状況を整理すると、どうやらスナップショットが存在する場合は、それに関連する仮想ディスクを取り外してはいけないようなのです。そして、もし必要な仮想ディスクを削除しようものなら、起動できないばかりか、スナップショットを復元することも、削除することすらもできなくなってしまいます。だったら取り外すときに警告ぐらいしてくれよ・・・スナップショット意味ねー(´Д`;
対処方法
10 分ほど途方にくれましたが、気を取り直して対処方法を考えてみることにしました。少し試行錯誤しましたが、以下の方法で仮想マシンを起動することができました。
- 削除した仮想ディスクとまったく同じ容量の仮想ディスクを作成する。
- 作成した仮想ディスクを仮想マシンから取り外す。
- 後は普通に起動できるはず。
今回は運良く仮想ディスクの容量を覚えていたので助かりました。ちなみにスナップショットにどの仮想ディスクが含まれているかは仮想マシンのディレクトリにある .vmsd ファイルに記録されているようです。私は試していませんが、もし仮想ディスクの容量を忘れてしまったときは、このファイルから設定を削除することで復帰できるかもしれません。確証はないので自己責任でお願いしますが、もし成功したらぜひお知らせください(^^;
まぁ必要な仮想ディスクは残っているので、最悪でも仮想マシンを作り直すことで復帰は可能なはずです。その場合はスナップショット以降は失われてしまうと思いますが・・・。
予防的措置
今回のようなトラブルは、仮想ディスクをスナップショットを作らない設定にすることで回避できます。手順は以下のとおりです。
- 仮想マシンをシャットダウンします。
- メインメニューから [VM]-[Settings] を選択し、「Virtual Machine Settings」のダイアログを表示させます。
- 「Hardware」タブをアクティブにします。
- 右のリストから設定する Hard Disk を選択します。
- 「Advanced」ボタンをクリックし、「Advanced」ダイアログを表示させます。
- 「Mode」の枠内の「Independent」のチェックを入れます。
- 下のラジオボタンが有効になるので、「Persistent」に設定します(デフォルト)。
- 「Advanced」ダイアログの「OK」ボタンをクリックします。
- 「Virtual Machine Settings」のダイアログの「OK」ボタンをクリックします。
これでそのハードディスクはスナップショットに含まれなくなり、いつでも取り外しできます。一時的な作業領域として仮想ディスクを追加する際は、必ずこの設定にしておくことをお勧めします。なお、この設定は仮想ディスクの作成時にも指定できます。最後の仮想ディスクのファイル名を指定するところで「Advanced」ボタンを押すことで、同様の設定が表示されます。
そんなわけで、皆さんもお気をつけください〜(TT)/
詳しくはこちらの記事をどうぞ!
この記事にコメントする