VMwareトップ画面

本記事は、
Windows10 が再起動した場合、
VMware ゲストOS を自動的に起動する方法を記したものです。

本記事以外にも、同様のものがWeb上に存在しています。

BATファイルにVMwareコマンドを記述するものですが、
VMのフォルダ名やVM自体に半角文字を使用してしまった場合
そのままではうまく自動起動することはできません。

本記事は、この問題に対処する方法を示したものです。

HTMLのままだと、
意図した形式で表示されませんので、
Wordで作成したPDFを貼り付けておきます。

1 Windows10でVMware ゲストOSが自動起動しない

わたしは、Windows 10において、
VMware Workstaion PlayerにCentOS 8.1をインストール、
このCentOSにWebサーバーをたてて運用しています。

なお、VMware Workstaion Playerは、
本記事では以降VMware Playerと略記します。

このVMware Playerは、
長期間起動中であることを監視していないと、
知らない間にWindows Updateにより停止されていることがしばしばあります。

伴って、Webサーバーも停止されてしまっています。

もう、停止しまっていては、サーバーなんかではありません。

まあー、Windows Workstationに
サーバーをたてるのは間違っていることなのかもしれませんが、
業務用ではなく、あくまでも個人の趣味で運用しているものなので、
これはこれで有りだと思います。

それで、知らない間にWindows UpdateでPCが再起動された場合、
VMware PlayerとゲストOSであるCentOSが
なんとか自動で再起動する方法がないかを調べてみました。

下に示すページに方法が見つかりました。


Windows10を起動したときにVMwarePlayer上の仮想OSを自動起動させる


Windows10設定とVMware自動起動

上のページに示された方法は、

・ 「netplwiz」コマンドにより、Windows起動後に自動でサインインする。
・ スタートアップ登録BATファイルよって、VMwareゲストOSを自動起動する。

実際に試してみました。
でも、
わたしが作成していたVMのフォルダ名やVM名に半角のカナ文字を使用していたためか、
VMware Playerは自動起動するものの
「VMファイルが見つからない」旨のエラー・メッセージが表示されてしまい
ゲストOSは起動しませんでした。

2 Windowスタートアップ

1項で示した問題は、
VMのフォルダ・パスやVM名に半角カナ文字を使用していることが原因のようでした。

解決するには、下に示す①~③のいずれかを行わないといけません。


① BATファイル中に使用されているSHIFT JISの文字コードを調べ、


適宜エスケープコードの”\”を埋め込む。


② 半角のカナ文字を使用しない名前で、VMを作成し直す。


③ VMフォルダ・パスや、半角カナを使用しないVMファイル名に変更する


(VMファイルは、多数あります)。

VMの再作成となると、
Webサーバーだけでなく、メールサーバーやSAMBAの再設定、
そしてなによりWeb記事の事前バックアップと復元など、
多数の手間がかかってしまいます。

エスケープコードの埋め込みについても、
UNICODEが主流の環境においては、
SHIFT JIS時代と比べてそれほど簡単なことではありません。

VMファイル名変更に関しては、
ファイルが多数ありますので、
VMwareによってどのように管理しているのか知らずに行うと
動作しなくなる可能性大です。

もー、やってられません!

2.1 ショートカット

はたと気づきました。

スタートアップに登録するショートカットには、

何もVMwareのコマンド・パスを記入するだけではなく、
コマンド・オプンションも記入できる
ことを!!

ショートカット・リンク先の内容を、下図に示すようにすれば良いのです。

図2.1-1

図2.1-2

スタートアップのフォルダ・パスは、以下に示す通りです。

図2.1-3

2.2 VMwareコマンドラインのパラメータ

ショートカットに記入できるVMwareのコマンドの構文を下に示します。

図2.2-1

上に示す構文はVMware Workstation Proのもので、
全てが使用できるかどうか不明ですが、
少なくとも”path_to_vm.vmx”のオプションが
VMware Playerで有効であることは確認済みです。

VMwareのコマンドラインの詳しいことについては、
下に示すページをご覧ください。



vmware コマンドについて

また、参考として、
VMwareコマンド以外にも、VMware VIXで
仮想マシンをコマンドプロンプトから起動したり終了したり
コマンドを投入できるようになることを追記しておきます。



vmrun コマンドを使用した仮想マシンの制御


以上