ラベル VMwareFusion の投稿を表示しています。 すべての投稿を表示
ラベル VMwareFusion の投稿を表示しています。 すべての投稿を表示

2017/01/18

[TIPS] VMware Fusion で無差別モード時の認証を行わないようにする

VMware Fusion Professional の場合、環境設定にあるネットワークの設定にて、「無差別モードに入るには認証が必要です」のチェックを外すことで、仮想マシンが Promiscous Mode に入ろうとしたときに表示される認証を省くことができる。

ネットワークの設定
このパネルは Professional でのみ表示される

チェックを外すと、警告が出るので「続ける」を押す
この警告にもあるとおり、無差別モードを仮想マシンに許すと、その仮想ネットワーク内の通信や、ブリッジの場合はそのネットワークを流れる通信を確認することが可能になり、さらには偽装したパケットの送信もできるようになる。非常に危険なので通常は無差別モードを設定しようとした瞬間に認証がかかって、Fusion の利用者にあらかじめ確認を取るようになっている。

しかし、たとえば ESXi をFusion 上の仮想マシンとして実行する場合、「そのネットワークからくる ESXi 上の仮想マシンのMACアドレスのパケットを受け取る」「そのネットワークに ESXi 上の仮想マシンのパケットを送り出す」という操作、つまりは仮想マシン自身以外のMACアドレスのパケットの読み書きが必要になり、無差別モードが必須となる。

毎回確認されるのも面倒な場合は、このチェックを外すのもいいだろう。


なお、チェックを「外す」事で、/Library/Preferences/VMware Fusion 以下に、 promiscAuthorized という空のファイルが作成される。

promiscAuthorized ファイルが存在する
言い換えれば、この空のファイルを作れば無差別モード時の認証は行われなくなる。

このため、ネットワークの設定パネルのない、通常の VMware Fusion でも以下のコマンドで無差別モード時の認証をなくすことができる。

sudo touch "/Library/Preferences/VMware Fusion/promiscAuthorized"

パスが空白を含むので、ダブルクォートでくくるのを忘れないこと。









2016/01/31

Fusion でリカバリモードで起動する

VMware Fusion 上の OS X でリカバリモードでの再起動をおこなう場合だが、KBによると実機のOS Xと同じく、起動画面で Command-R を押すといいとある。

しかし、実際に試すとこれがなかなかうまくいかない。VMware の提供する EFIの BootManager が表示されてしまう。もっと確実に起動できる手順はないか、ということで行ったのが次の方法だ。

まず、EFI の BootManager を表示させる。これは、Command-R を押しながら起動して失敗した場合でもいいし、「ファームウェアをパワーオン」を使ってもいい。


ここで、「Enter Setup」を選択する


次の画面で「Configure Boot Option」を選択する


さらに、「Add Boot Option」を選択する

3番目に「Recovery HD」があるはずなので、これを選択する。
なお、OS X をインストールすると三つのパーティションが作られる。一つが EFI システム領域、一つが OS X そのもののインストール領域、そして最後が Recovery HD だ。

選択したパーティション内のファイル一覧が表示される。


ここでは、<com.apple.recovery.boot> フォルダを選択


し、その中の「boot.efi」を選択する。

boot.efi を使った起動の設定画面が表示されるので、「Input the description」を選択、この設定の名前を入力する。ここでは、「Recovery HD」とした。


その後、下の Commit changes and exit を選択し、元のメニューに戻る。


さらに、Exit the Boot Maintenance Manager を選択、元の起動メニューに戻る。


すると、先ほど作った「Recovery HD」がメニューに増えているのでこれを選択する。

後は起動を待つだけだ。
起動に時間がかかるので待つべし

起動してしまえば、実機のリカバリモードと同じように使用できる。


なお、二度目からはメニューに登録されているので、単に「ファームウェアをパワーオン」を選択、Recovery HD を選ぶだけになる。

2015/12/15

【Fusion】ファームウェアをパワーオン

12/8 に VMware Fusion 8.1 がリリースされた。

メンテナンスリリースという事になっているが、アップデートしてからふとメニューを見ると、「仮想マシン」のメニューに「ファームウェアをパワーオン」という謎の項目が増えている。

Fusion 8.1 で増えたメニュー項目

Fusion 8.0 では存在しなかった

これは何かというと、仮想マシンを起動したときにファームウェアの設定画面に強制的に切り替えるものだ。

ファームウェアをパワーオンで起動すると、この画面が確実に表示される
仮想マシンの電源を入れてから F2 キーを押すとこの画面に入るが、タイミングがシビアであり、特に Fn キーを押しながら出ないとファンクションキーが操作できない Mac では慣れないと辛いものであった。(システム環境設定からFnキーを押さなくてもファンクションキーとして扱うよう設定は変更できるが、Fusion のためだけに変えるというのもどうかと思われる。)

.vmx ファイルに 「bios.forceSetupOnce = "TRUE"」を記入すれば同じく次回の起動に限りファームウェア設定に強制的に切り替える事ができたし、vSphereClient のGUIにはそのための設定項目が存在したが、Fusion では後で述べる 少々わかりにくい方法しかなかった。

今回の方法は分かりやすくかつ簡単であり、便利であるといえよう。


● 【参考】これまでの方法

起動ディスクにて Option キーを押すことで、「再起動」のボタンが「ファームウェアを再起動」に切り替わった。これは Fusion 8.0 でもそれ以前でも利用できる。


Option キーを押すと、「ファームウェアを再起動」のボタンに切り替わる

2015/10/07

Fusion 8.0 での vCloud Air

9月は仕事が一杯一杯だったためすっかりご無沙汰してしまった。

さて、前回も話したように VMware Fusion 8.0 ではこれまでも接続できた ESXi や vCenterServer, VMware Workstation のサーバモードに加えて、vCloud Air へも接続できるようになった。

vCloud Air についてはこちらの一連の記事を読んでいただくとして、Fusion 8.0 での接続についてのみ見ていこう。

Fusion を起動し仮想マシンのライブラリをみると、左側の一覧に「VMWARE VCLOUD AIR」という項目ができているのに気がつく。これをクリックすると、ユーザ名とパスワードを入力する欄が表示される。

Fusion 8 の 仮想マシンのライブラリ画面
vCloud Air のユーザ名はアカウント登録時に用いたメールアドレスのため、これを入力、アカウント登録時、最初のログイン時に設定したパスワードを入力する。

認証に成功すると、左側に契約している仮想データセンター(VDC)が表示される。共有型クラウド(Virtual Private Cloud)ならば一つ、占有型クラウド(Dedicated Cloud) なら作成したVDCの数だけ表示される。また、日本以外のリージョンの契約している場合は、権限のあるリージョンのVDCもあわせて表示される。

vCloud Air に接続。VDCと仮想マシンの一覧が追加される

vCloud Air on Demand の場合、アカウント作成時に作成したVDCが表示される。通常は一つだが、複数のリージョンで作成していれば複数になる。

VDCを選択すると、そのVDCに配置されている仮想マシンが表示される。仮想マシンを選択すると、ローカルの仮想マシンと同じく画面のサムネイルが表示される。

ここから、仮想マシンを起動/終了、リセット、サスペンドさせることができる。

vCloud Air の仮想マシンを選択している場合
メニューの1行目は「仮想マシン」としか表示されず、
サスペンド、リセット、パワーオンかパワーオフを選択

ローカルの仮想マシンを選択している場合
Linux/Windows/MacOSなどOS種類が表示される
再起動、シャットダウンと安全な手法を選択

VMware Tools を入れていても、シャットダウンや(安全な)再起動は選択肢に出てこないので注意だ。

別ウィンドウでコンソール画面を開くことができる。

仮想マシンのコンソール画面、割ときびきびしている
ブラウザでは無く専用のアプリケーションだけあって、動作は割ときびきびしている。それでもローカル仮想マシンに比べれば反応は鈍いが、遠隔地にあってネットワークの遅延があるのでこれは致し方ないだろう。
(vCloud AirのWebUIの仮想コンソール、あるいは FLEXの vCloud Director 画面の仮想コンソールはどちらもあまり応答速度が良くない。)

ローカルの仮想マシンを VDCのアイコンにドロップすると仮想マシンをアップロードすることができる。
仮想マシンのアップロード画面

これは内部的には OVFでの出力と、ovftool を使った転送をおこなっていると見受けられる。なお、逆に vCloud Air の仮想マシンのアイコンをローカルの仮想マシンのフォルダにドロップしてもダウンロードは発生しない。どうしてもと言う場合は、アプリの中に格納され居てる ovftool を使うことになるだろう。

仮想マシンの起動、終了、リセット、スナップショット(vCloud Airでは1段のみ)、仮想コンソールの利用、そしてアップロードでできることは一通りのようだ。

一見仮想マシンの構成変更ができるようにも見えるが、現時点ではディム表示で選択ができない。今後のアップデートに期待、と言うことだろう。

仮想マシンの設定。一般は名前などを表示するのみ、後の設定は選択できない

また仮想ネットワークの構成変更などの基盤環境の構成や、vCloud Air 側テンプレートからの新規仮想マシンの作成はできない。Mac側の仮想ネットワーク(NAT)と vCloud Air 側 EdgeGateway とでVPN接続ができたら面白いのだが、そこも用意されていない。
(IPsec/L2TPのため、Mac のVPNクライアント機能で接続できるかも知れないが、未検証)

あくまで、Macでの仮想マシンの実行の補助的なもので、vCloud Air との連携を主力にしてというものではなさそうだ。

vCloud Air の WebUI は、HTML5としては割と良くできてるがしかし仮想マシンの管理には少々不便なところがある。せっかくのローカルアプリケーションなのでこちらに管理能力をもたせれば使い勝手はあがるのだが、どうもそこまでやるつもりはないようだ。

ただ、割り切って使えばこれはこれで面白い。MacBook Air や今度の MacBook のように、仮想マシンを多数動かすことが性能やコンセプト的に厳しい Mac で、リモートの仮想マシンをローカルの仮想マシンと同じように扱えるのは何かと便利だろう。

2015/08/26

Fusion 8.0

2015年のベータプログラムも始まってるし進んでるなと思ってたら、唐突に Fusion 8.0 がリリースされた。

リリースノートからわかる内容は以下の通り。

  • Windows 10 のフルサポート
    • Windows10をゲストOSとする仮想マシンを実行可能(Fusion 7に引き続き)
    • Windows10のメディア認識と簡易インストール
    • Unity が利用可能
    • Windows10の実機から仮想マシンへの移行
    • Windows10の BootCamp領域からの仮想マシンのインポート
  • OS X El Capitan のサポート
    • El Capitan を仮想マシン上で実行可能
    • El Capitan をホストOSとする Mac での Fusion 8 の利用が可能
  • その他、新しいゲストOSのサポート
    • Ubuntu 15.04, Fedora 22, CentOS 7.1, RHEL7.1, Oracle Linux 7.1
    • Project Photon
  • グラフィックサポートの強化
    • DirectX 10, OpenGL3.3 を利用可能
  • 暗号化された仮想マシンでのサスペンド、レジュームの高速化
  • Retina ディスプレイの解像度サポートの強化
  • 最新の Mac のサポート
    • 5k iMac でのフルスクリーンなど
  • Skype および Skype for Business(旧Lync)でのエコーキャンセラレーション
  • Windows 7 をゲストOSとする仮想マシンでのUSB3.0サポート
    • 最新のIntelUSBドライバを利用すること
  • UIの改善
    • スタートメニューの改善と新しい仮想マシン作成画面
Pro 版ではさらに以下機能が追加されている

  • vCloud Air との統合
    • vCloud Air サービスへの接続
    • 仮想マシンのインベントリの確認
    • 仮想マシンのコンソール画面へのリモート接続
    • Mac上のFusionでの仮想マシンを vCloud Air へアップロード
    • vCloud Air 上の仮想マシンの電源オン/オフ
  • リモート環境のサポート強化
    • vSphere (vCenterServer管理下ないしは ESXi直接)での仮想マシンの作成
    • VMware Workstation へのリモート接続と仮想マシンの作成
    • 1つのDashboard 画面で複数の ESXi ホストの状況を確認
  • IPv6 NAT


これまで vCloud Air は月額定額制しかなく、それなりの企業でないと導入は難しかったが、つい最近、On Demand サービス、つまりは仮想マシンの稼働分だけの従量課金制が日本国内でもサポートされた。

90日間、一定金額までのサービスクレジットがあるので、Fusion 8 Pro とあわせて試してみるのもいいかもしれない。


2015/05/12

(U)EFI と Mac と Fusion

先日の Windows7 でのシステムパーティションの話の続き。

Mac の場合は商用で販売されたすべての Intel Mac が EFIをファームウェアとしているため必ずこの領域が存在する。かつては100MB程度だったが、現在では 200MB程度を確保しているようだ。一部に、「Macで使ったディスクだと先頭に隠しパーティションがある」と言われているが、別に Mac に限らず、上記のように UEFI を使用した Windows でも作成される。

(U)EFIの実装自体にも 32bit, 64bit の二通りがある。たとえば初期の Intel Mac では 32bit EFI が使われている。32bit EFI の Mac は 64bit Kernel をブートできない。このため、サポートされる OS Xのバージョンは最大でも 10.7 Lion までとなる。
(10.8 Mountain Lion, 10.9 Marvericks, 10.10 Yosemite は 64bit kernel のみ。余談だが 10.6 Snow Leopard と 10.7 だけが 32/64bit 両対応の Kernel で 10.5 Leopard は 32bit Kernel しか存在しない。)

Windows の場合、32bit Windows は PC-BIOS で、64bit Windows から UEFI サポートが入るというのが原則となる。マイクロソフトの記事(日本語で情報が古い英語で最新)によると

  • 64bit で UEFIをサポート、ただしCSM必須
    • Windows 7
    • Windows Vista SP1
    • Windows Server 2008
    • Windows Server 2008 R2

  • 32bit/64bit 双方で UEFIをサポート
    • Windows 8
    • Windows 8.1
    • Windows Server 2012
    • Windows Server 2012 R2

となる。なお、セキュアブート UEFI 2.3.1(エラッタC対応)以降が必要になる。

また、64bit UEFI だけをファームウェアとする PC では 64bit Windows しか起動できない。( 当たり前の事だが 32bit CPU の PC では 64bit の Windows は起動できない )

64bit CPUをもつ PC でも、PC-BIOS をファームウェアとする場合は 32bit Windows が利用できる。

また、UEFI には CSM (Compatibility Support Module)という、UEFI でブートした後に PC-BIOS をエミュレーションするモジュールが定義されているが、これをサポートしている場合は、CSM経由で 32bit Windows を起動する事ができる。

ややこしいのは、Windows 7, 2008R2 など上段の4つのOSは「CSMが必須」であることだ。
これは、Windows 7, 2008 R2 などは起動処理中に INT10H を使ったビデオBIOSを使って画面描画を行うためだ。そう、Windows のロゴやらは旧来のPC-BIOSのもってたビデオBIOSで描画されている。
CSMを持たない UEFI をファームウェアとする PC の場合、INT10Hを処理できないので Windows 7 や 2008 R2 をインストールする事はできない。
なお、CSMをもたない UEFI は「Class 3」と呼ばれており、CSM をもつ UEFI を「Class 2」とよんで区別している。


VMware Fusion 7 では、32bit OSをゲストOSとして指定して仮想マシンを作成しても、一般的な 64bitOS を指定して仮想マシンを作成しても、PC-BIOSをファームウェアとした仮想マシンが作成される。
例外としては、OS XをゲストOSとして指定した場合だ。この場合は、32bit でも 64bit でも EFIをファームウェアとして構成される。
DTKの話で話したように、まっとうな OS X は EFIからしかブートできないからだ。


では、EFIで Windows がインストールできないかというと、そういうわけではない。
VMware Workstation と異なり、VMware Fusion にはファームウェアの BIOSかEFIかを設定する UI はない。が、.vmx ファイルに
firmware="efi"
を追記する事で、EFI をファームウェアとした仮想マシンを起動する事はできる。
(あるいは、ゲストOSをわざと OS X としてもいい)

実際に Windows 8.1 64bit をインストールしてみたが、ごく普通に動作した。

EFIを有効にしてインストールした場合
システム情報のBIOSモードがUEFIになる

普通にインストールした場合
PC-BIOSが有効になり、BIOSモードも「レガシ」となる


2014/07/27

[ヨタ] Fusion はいつ買い時か?

Fusion のリリースノートを順に追いかけたり、Wikipedia のエントリなどを見ると確認できるが、VMware Fusion のメジャーリリースは以下となっている。
  • 1.0  2007/8/6
  • 2.0  2008/9/12
  • 3.0  2009/10/27
  • 4.0  2011/9/14
  • 5.0  2012/8/23
  • 6.0  2013/9/19
見事に秋口にまとまっているのが分かる。大まかに言って理由は二つある。

一つは、OS X のリリースだ。WWDCの影響もあり、こちらは大まかに初夏から秋にかけてのリリースとなる。
  • 10.6 Snow Leopard 2009/8/28
  • 10.7 Lion,   2011/7/20
  • 10.8 Mountain Lion,   2012/7/25
  • 10.9 Mavericks,  2013/10/22
  • 10.10 Yosemite,  2014/秋?
どちらの製品も 2010年が欠如していることから見えてくるように、OS X のリリースに合わせて、Fusion の新バージョンが出てきている、といっても過言ではない。

もう一つは VMworld SanFrancisco の存在だ。例年8月末に行われるこのイベントに合わせて新バージョンが用意され、程なくリリースされている。

開発者向けの OS X 10.10 Yosemite のプレビュー版は6月のWWDCにてアナウンスされ、以後 OSカーネルからの大幅な変更で阿鼻叫喚の修羅場が静かに巻き起こっているようだが、それに加えて、10.0 以来とも思われる一般ユーザ向けのパブリックベータ版も出てきている。

Mac開発者だった当時はドッグフードをかっ喰らう生活、そう不安定な開発者版でメールなどの日常の処理からアプリケーションの開発までやってたので、「アップルが開発者向けに出しているものは気軽に常用できるものでない、苦労を買うだけだからやめておけ」と思うのだが、しかも Yosemite は聞いた限りではかなり厄介な事態になってる、-- たとえばこの blog によるとデバイスドライバ(KEXT)にAppleの証明書が必要になり、署名のないドライバーはロードできなくなっている -- ので、どうせ後数ヶ月の話なのだから、リリースまで待った方が賢明である。

だが、OS X はアクティベーションのような強いライセンス認証を持たない。(それどころかインストールに際してライセンスキーすら確認されない)。このため、開発者向けプレビュー版の漏洩とアンダーグラウンドでの流通は毎度のことである。どうせ突っ込みたがる人間がいるなら、いっそ分かる形で出した方がマシ、っていうことなのだろう。

VMware Fusion についてもβ版が出てきている。

仮想ハードウェアバージョン11 のサポートや、Library ウィンドウからリモートの仮想マシンを操作できる、などの機能がアナウンスされている。特に ESXi の仮想マシンをリモートコントロール出来るのは気になる機能だ。これは VMware Workstation には既にあった機能だが、「クリエイティブ向け」とされた Mac では外されていたものだ。

いわゆる IT Pro 系のSEや、OSS系ではない普通の開発者にも Mac は浸透してきている。Fusion Professional ではそうしたインフラ系エンジニアにとって便利な機能が着実に整備されてきている。

さて、現在βの 次期 Fusion はいつリリースだろうか? 多分 VMworld SF にて詳細が語られ、その後、おそらく Yosemite のリリースの前後にリリースされるのだろう。

そういう意味では、特に個人ユーザはもう少し、秋口まで待ってみるのもいいかもしれない。新しいバージョンがでてから購入するも良し、リリースぎりぎりになって現行バージョンを買うも良い。
なお、現在の VMware Fusion 6.0.4 は Yosemite との互換性があるらしい。今の Fusion を買っても、Yosemite で即動かなくなることはないだろう。

確証は出来ないが、例年、新バージョンがでれば直近に旧バージョンを買ったユーザ向けに無償アップグレードがでたりする。現行バージョンを使い尽くしてから、パッチが落ち着いてから新しいバージョンにアップグレードしても遅くはないわけだ。

また、βテストユーザ向けにはディスカウントコードがでることもある。とりあえずβテストに申し込むのも手だ。

なお、10ライセンス以上をまとめて購入できる企業等の場合、vSphere などにもある Basic/Production の SnS (保守サービス)を購入することが出来る。SnS は「Support and Subscription」の略で、有効期間中に問い合わせなどサポートを受けれるのだが、そこにはフリーアップグレード/ダウングレード権が含まれている。Fusion 6 をまとめ買いして、SnS をつけておき、次のバージョンがでたらSnSの権利下で無償アップグレードをする、という感じだ。


2014/04/19

Fusion 6.0.3

4/17付けで VMware Fusion 6.0.3 がリリースされております。

リリースノートにも以下の記載があります。

Security Issues

VMware Fusion has been updated to resolve the Heartbleed issue described here. The Common Vulnerabilities and Exposures project (cve.mitre.org) has assigned the name CVE-2014-0160 to this issue.
件の OpenSSL heartbleed 問題にどうも抵触しているみたいなので、Fusion 6 を使ってる方はすぐにアップデートした方が良いです。

2014/03/16

Hyper-V on Fusion

知己からの相談。Hyper-V 上の Linux (CentOS 6.5)が正しく動かないと。
CentOS 6.5 は Hyper-V のサポートリストにないと返答し逃れようとしたら、いや、統合サービスがカーネルに統合されているし動くはずだとの主張。そして送られてきたスクリーンショットを見たら、ただの Hyper-V ではなく、Fusion 上の WindowsServer 2012 であった。

Hypervisor on Hypervisor はテクがいるんだよと煙に巻いたのだが、しかしやったことがない、できないでは何とも面白くないのでサンフランシスコ出張中、まだ真っ暗闇の3時頃にむくっと起き上がり手元で構築をやってみた時のメモを再構成したのが以下のものだ。

なお、WindowsSever 2012では面白みがないので、今回は Windows 8.1 Enterprise の Client Hyper-V を使ってみた。

● Fusion 上で Hyper-V を実行させ、その上でLinuxを動かす条件

条件は以下の通りだ。
  1. Windows8 は 64bit 版がインストールされていること
  2. 仮想マシンの設定の「プロセッサとメモリ」にある「この仮想マシンでハイパーバイザーアプリケーションを有効にする」にチェックが入っていること
  3. 以下2行を VMX ファイルに書き足してあること
    • mce.enable = "TRUE"
    • hypervisor.cpuid.v0 = "FALSE"
  4. Hyper-V 上の仮想マシンのMACアドレスを"固定"させること
64bit 版でないと Hyper-V は利用できないのでこれは当然と言える。2. の設定により、vmx ファイルに 
vhv.enable = "TRUE"
が書き込まれる。ESXi など VMware製品ではこの設定だけで動くが、Hyper-V の場合、「Hyper-V をインストールできません。: ハイパーバイザーが既に実行されています」と出る(下図)

これを回避するために、3. のオプションを指定し、MCE(Machine Check Exception)拡張を有効にし、CPUID命令でハイパーバイザを検出されないようにする必要がある訳だ。

ここまでで Hyper-V は動作するが、このままだと知己の言うとおりでHyper-V 上の仮想マシンでの Linux がインストール後の起動時に panic してしまう。

この事象の回避には、「Hyper-V 上の仮想マシンのMACアドレスを静的にする」ことが必要なわけだ。この点は少々厄介なので、以下の手順を見て欲しい。

● インストールの実際

では、実際のインストールを追ってみよう。

まず、Fusion で仮想マシンを作成する。Windows8.1 のメディアかイメージがあるなら話は早い。
Fusion のメニューから「ファイル」-> 「新規...」を選び、「ディスクまたはイメージからインストール」を選んだまま「続く」ボタンを押せばいい。
簡易インストールパネルでアカウント名やプロダクトキーを入力、仮想マシンを作成すればOSのインストールから初期設定、ライセンス投入、VMware Tools のインストールまで一気にやってくれる。

インストールが終わったら一旦仮想マシンを停止して、先の条件2と3のセットをしておこう。(もちろん、仮想マシンの作成の折に「設定のカスタマイズ」を押して、作成後すぐに仮想マシンを起動させず、設定を編集するタイミングを作っても良い。なお、このときフロッピードライブを削除しないように。)

また、メモリサイズもデフォルトの 2GB から Hyper-V上の仮想マシンの実行分増やしておいた方がいいだろう。


Windows8.1 のデスクトップの左下端には復活したスタートボタンがある。ここを右クリックするとコントロールパネルに素早くアクセスできる。

今回は「プログラムと機能」を選択、Hyper-V をインストールする。
インストール後に再起動がかかるので、またログインし直し、デスクトップの右側から「Hyper-V マネージャ」を検索、でてきたら右クリックして「管理者で実行」をする
(普通の実行でも問題ないかもしれない)


Hyper-Vマネージャが起動したら、まず仮想スイッチマネージャから仮想スイッチを一つ作っておく。インターネットに接続する必要がある場合は「外部」で作っておく。また、「外部」の仮想スイッチを作ると以後 Windows8側のNICがプロミスキャスモードで動こうとして、その結果認証のパネルが表示される。都度パスワードを入れて許可しておこう。

さて、次はHyper-Vでの仮想マシンの作成だ。
Hyper-Vマネージャの「編集」メニューから「新規」「仮想マシン...」を選択、ウィザードに従って仮想マシンを作成する。
「仮想マシンの世代」をきかれたら第一世代にしておく。第二世代は Windows 8,WindowsServer 2012 でないと意味がないからだ。

ネットワークの構成では、先に作った仮想スイッチを指定しておく。

メモリサイズとストレージ容量は適当でいいが、今回は 512MBと10GBを指定した。それぞれ動作チェックのため節約をしただけだ。

インストールは CentOSの ISOイメージから行うが、「Fusion 側でWindows8仮想マシンに ISOメディアをマウントして、Hyper-V側仮想マシンはDドライブを参照」と、「Windows8仮想マシンにISOメディアをコピーしておき、Hyper-V側仮想マシンでISOメディアをして」の二つのやり方が考えられるが、どうも前者はあまり安定しないようだ。面倒でも ISOイメージをコピーして、後者のやり方にした方がいい。

さて、ISOイメージを仮想CD-ROMにマウントさせたら、Hyper-V側で仮想マシンを起動する。
そして、CentOSのインストーラが起動したら、"Hyper-Vマネージャで仮想マシンの電源を落とす"。ここが重要なポイントだ。

Hyper-V側で仮想マシンを停止させた後、Hyper-Vマネージャで仮想マシンを右クリック、「設定...」を選択し設定パネルを開き、「ネットワークアダプター」の「+」ボタンを押し項目を展開、「高度な設定」から「MACアドレス」の「動的」のラジオボタンを「静的」に変更する。


動的に変更後、その下の6つの入力項目に00ではない、十六進の数値が入っていることをちゃんと確認した後、OKを押し設定を閉じる。

その後、Hyper-Vマネージャにて仮想マシンを起動、通常の手順で Linuxをインストールすればちゃんとインストールでき、その後もエラーなく利用が可能だ。

● Hyper-VのMACアドレスの仕様

Hyper-Vのデフォルトでは、MACアドレスの設定が「動的」になっており、仮想マシンの起動の際にMACアドレスが自動生成される。
ここまではまあ構わないのだが、困ったことに、このままだとMACアドレスは起動のたびに変わりうる。どうもそこで齟齬が起こり、パニックしているようだ。この件についてはマイクロソフト社のフォーラムにも記載がある。

手っ取り早く直すのに、MACアドレスを「静的」にして一意に固定してしまえばいいのだが、しかし一度も起動していないHyper-Vの仮想マシンは、MACアドレスが00-00-00-00-00-00 になっている。

これはこれで問題の元のため、「動的のまま一度起動することで適当なMACアドレスを割り当てさせ、その後停止、割り当てたアドレスのままで静的に設定を変更し、MACアドレスを固定する」という手順になる。

なお、クロックのところでパニックしているのでLinux側のクロックソースを直す、という解法もあるようだ。
ただ、CentOSを含むRHEL6系のOSでは、インストール時にMACアドレスを記憶してそのMACアドレスを持つNICに指定したIPアドレスを割り当てるようにする。MACアドレスがころころ変わると、その都度IPアドレスの設定をやり直す必要が出てくる。どのみち、MACアドレスは固定する必要がある。

そもそも Fusion 上で CentOSを動かせばこんな面倒はないのだし、やる人はそうそういないと思うが、引っかかると言えば引っかかるところなので、メモとして残しておく。


2014/01/19

USBメモリから起動するOSを仮想マシンで利用する(2)

以前、USBメモリから起動するOSを仮想マシンで利用する(1)という記事を書いたが、その時にもう一つ記事を書こうとして(1)をつけたまますっかり忘れてしまっていた。

そのままというのも何なので、2年越しになってしまったが(2)として書くつもりだったことについて記載したい。

先に紹介した Plop Boot Manager だが、そのままだと毎回GUIがでてきて、USBを選択しないと起動しないのでちと面倒だ。省力化できないか?という実はこれができるのだ。

まず、Plop Boot Manager の動作はカスタマイズが可能になっている。その本体の plopbt.bin というファイルを直接編集し、動作が変わるようになっているのだ。

カスタマイズ用のツールは Plop Boot Manager のダウンロードファイルの中に含まれている。Linux 用と Windows 用があるが、ここでは手軽な Windows 用で説明する。

ダウンロードファイルを展開すると、Windowsというフォルダがあるのでこれを開く


そこには、plpcfgbt というCLIのコマンドと、plpcfgbtGUI という GUIツールがある。
より便利な plpcfgbtGUI を実行する。


なお、plpcfgbtGUI は .NET Framework 3.5 を使用している。Windows XP や Windows8 の場合 .NET Framework 3.5 をインストールする必要がある。

Windows8 の場合、.NET Framework が足りないとその場で
ダウンロードを提案してくれるので便利だ
起動すると下の画面になる。まずは、カスタマイズする plpbt.bin を読み込む。
単に「Open」のボタンを押せば plpcfgbtGUI と同じフォルダにある plpbt.bin が読み込まれる。他のフォルダにあるものを編集したい場合は「...」ボタンを押してパスを指定する。


開くと、下のカスタマイズ項目が利用可能になる。
ぱっと見ての通りなので説明の必要はないと思われる。
ここで編集するのは「Countdown」 をチェックし、「Countdown value」を適宜指定すること、それから 「Default boot」をUSBに指定すること、だ。

Default Boot を指定するとそのデバイスから自動起動するようになる。ただし DefaultBoot を指定するには同時に「Countdown」を有効にしなくてはならない。
Countdown value 秒だけ待機後、Default Boot で指定されたデバイスで起動する。
Countdown value に1を指定すればほぼ即座に起動に入るが、USBメモリを差し込んだり、仮想マシン側に割り当てる事を考えると10秒程度の待ち時間はつけておいた方が賢明だ。


設定が終わったら、「Configure」 を押す。すると、以下のパネルが出て設定の書き込みが行われたことがわかる。書き込まれたら、Quitを押して終了する。


この plpboot.bin から Bootable CD の ISOイメージを作成するのだが、これもツールが用意されている。Plop Boot Manager のダウンロードサイトの「Tools」にある plpbt-createiso.zip がそれだ。


zip ファイルを展開すると、mkisofs コマンドと、Linux / Windows用のバッチファイルがある。


先に作成した plpboot.bin をこの plpbt-createiso を展開したフォルダにコピーする


そして、「create-iso」という名称で歯車のアイコンがついたバッチファイルをダブルクリックして実行する。


実行が完了すると、plpbtmycd.iso という ISOイメージファイルができているので、これを適宜 ファイル名を変更し、適切な場所にコピーして、仮想マシンの起動に用いるといい。


起動すると、こんな感じでカウントダウンと、デフォルトブートデバイスが指定された状態になる。

なお、作成した USBで自動起動する ISOイメージだが、先日取得した BOXのアカウントにて公開しておいた。
https://app.box.com/s/a3ywn1pb17hz2o24eukk