macOSとVirtualBoxのアップデート通知がほぼ同時期に来て、何も考えずにmacOSアプデ後にVirtualBoxをアプデしたところ、ゲストOSが起動不可になる悲劇に見舞われました。とりあえずリカバリーできたものの、VirtualBoxの新仕様にも「もしや不具合か?」と戸惑ったので、あわせて設定方法を載せておきます。
macOSを10.14.5にアップデートした後にVirtualBoxを起動したところ、アップデートを促す表示が出たので言われるがままに実施したところ、インストールが途中で止まってしまいました。
Excel作業が後に控えていたので、とりあえず原因調査は後回しにしてゲストOSのWindows10を起動しようとしたところ…
エラーコード0x80004005を吐いてゲストOSが起動しない事態に陥ってしまいました!
当初は「VirtualBoxのアップデートに失敗したせいか?」と考え、再度アップデートを確認するも…
…アップデートが引っ込められてる?!
これはもしやオラクルがやらかしたか?との疑念がよぎります。
だとするとさぞ騒動になっているであろうと検索してみたところ、以下の記事を発見。
macOS Mojave 10.14.5では、Appleの承認を受けていないkextファイル(windowsで言うところのドライバー)のインストールが弾かれるようになっているようです。
どうやらオラクルがやらかしたというよりは、たまたまVirtualBoxの大型アップデートリリースのタイミングでmacOSが重大な仕様変更をしてきた故の事故の模様。
幸いmacOSのセキュリティを回避する方法も載せられていたので実施してみます。
セキュリティ整合性保護機能自体を止めてしまうのはさすがに不安が残るので、今後オラクルの発行したkextファイルだけはインストール承認するよう設定します。
ターミナルでspctl kext-consentコマンドを使って、開発元ID「VB5E2TV963」を今後許可するよう指定してやればよいとの事なのですが、このコマンドはmacがリカバリーモードで動作している時にしか使えないようです。
なので、再起動ではなく一旦macを完全にシャットダウンしてから、「⌘command」+「R」キーを押しながら電源を入れます。
macOSユーティリティが立ち上がったら、画面上部の「ユーティリティ」→「ターミナル」をクリック。
spctl kext-consent add VB5E2TV963
ターミナル画面で上記コマンドを実行して再起動します。
VirtualBoxのアップデート機能での更新は止められてしまっているので、改めてVirtualBox最新版のインストーラーをダウンロードしてきてインストールします。
「https://www.virtualbox.org/wiki/Downloads」へアクセスして、macOS用のインストーラーと機能拡張パックをダウンロードします。
おし!今度はインストール成功!
VirtualBox6.0の再インストールに成功し、ゲストOSのwindows10がエラーもなく無事に起動して安心したのも束の間、デスクトップ画面に違和感が…
( ゚3゚)・∵. ブッ!
3360 × 2100って、なんなんですかこの解像度は?
まるでアイコンが米粒のようです。
デスクトップが広大なのは良いのですが、老眼も手伝って何も読めません。
しかもwindowsの解像度設定を直しても戻りません。
GuestAdditionsをインストールし直せば、windows側のディスプレイドライバが書き換えられて治るかと思ったのですが治りません。
一体どうしたら…
ゲストOS側ではなく、VirtualBox側の設定を色々いじってみたところ解決策を発見!
どうやら今度から仮想マシンの画面解像度を自由に変更できる機能がついたようです。
仮想マシンメニューの「View」→「Virtual Screen 1」→「Scale to xxx%」の値を変更すれば、自由にゲストOS側の解像度を変更できるようになっているようです。デフォルトではホスト側マシンの解像度をフルに使ったモードになってしまう模様。
macでのweb製作中に非Retina機器での表示をテストしたい場合がありますが、今後はホストOS側の解像度設定を変えなくても自由に低解像度表示テストができるようになりました!
ここまでかなり戸惑いましたが、VirtualBox6.0、かなり便利になりました!