MacBook Pro(macOS Mojave)でParallels Desktop 14を使い、Windowsも動かしています。
最近、このWindows仮想マシンが、予期せず遅くなる、止まってしまうという事態が頻発するようになりました。
Windows仮想マシン側でグルグルマウスカーソルのままになったり、macOS側でレインボーカーソルが消えなくなったりで、その間は何もできないか、スゴい時間が経ったあとにちょっとだけ動くとか、まともに使えません。
最初のころは、こういう状態になったらしかたなくParallelsのプロセスを止めたり、最悪の場合にはmacOS自体を強制終了させてきましたが、状態はまったくよくなりませんでした。
しかしある日、またもこのような状態になったので、「あ~あ、まったくしょうがねぇな」と悪態をつきつつ数時間放置していたら、なんと元の状態に自分で回復していたのです!
とすると、何かスゴい時間がかかることをやっているだけで、それが済めば回復するってことじゃね?んじゃ、いったい何しているの?
この間、macOSのアクティビティモニタを見てみると、Windowsのプロセスのディスクリード量が尋常じゃないことに気付きます。数GB、数十GBにも及びます。しかもリード側がmaxで、そのほとんどがWindowsプロセスという状況です。何を読んでいるんだろう?そんな大容量を読み込むとしたら、自分自身の仮想HDDしかないよね?
ということで、いくつかのトライを行ってみることにしました。
- 仮想HDDの容量可変ディスクをやめる
- 仮想HDDのファイルを2GBずつに分割する
- など
結論から言いますと、1番目の「容量可変ディスクをやめる」でうまくいったようです。あの日々がウソのように、Windows仮想マシンがスムースに動いています。待ってくれカーソル(笑)なんて出てきません。
容量可変ディスクとは、仮想マシンで割り当てたディスク容量をいきなりホストOS(ここではmacOS)側に確保するのではなく、仮想マシン側のディスク消費に合わせて徐々に増やしていく仕組みです。これによって、実際には使っていないのに容量だけ食ってしまうというムダを防げるわけです。
しかし、この「増やす」という操作のために、内部ではかなり負荷のかかる処理が行われているようで、仮想HDDの容量自体が逼迫してきたブログ主のような環境だと、けっこう頻繁にこの手の処理が行われることになり、しかも仮想HDDのサイズが200GBと大きいと、かなり大変なことになる「らしい」のです。
どうせ200GB近く使っているなら、いっそのこと固定にしてしまえよ!ということでやってしまったら、軽快に動き始めました~という次第です。
とはいえ、200GBの仮想HDDの容量可変ディスクをやめる作業、けっこう大変です。まず、同じHDD(SSD)にこの仮想HDDをコピーするだけの空き容量がなくてはなりません。しかし、簡単には作れません。そこで、面倒ですが下記のように行いました。外付けHDDが必要になりますが、もっとも安全なパターンです。
- 仮想マシン内の重要なファイルはバックアップを済ませておく
- 仮想マシンファイル(.pvm)そのものを外付けHDDにバックアップする(時間がかかる)
- 仮想マシンをコントロールセンターで外付けHDDに複製する(時間がかかる)
- 複製した仮想マシンの仮想HDDの容量可変ディスクを解除(メッチャ時間がかかる)
- 複製した仮想マシンの動作を確認
- 元の仮想マシンをコントロールセンターで削除する(ゴミ箱に入れる)
- ゴミ箱を空にする(容量確保)
- 外付けHDDに複製された仮想マシンファイル(.pvm)を内蔵SSDにコピーする(時間がかかる)
- その仮想マシンファイルを使って新規に仮想マシンをコントロールセンターで作成する
- あとは名称などを調整
回りくどいですが、何かが起きてもどこかにオリジナルがあるというのは心強いものです。飛んでしまったら目も当てられません。
ということで、Parallels Desktopが止まってしまう!どうしたらいい?というときの記録でした。同様の状況に陥ってしまった方の参考になれば幸いです。
コメント