10月からの授業の準備に,時間をとっています.
課題は,昨年度の内容を少し手直しして使用します.
使用するソフトウェアは,今年度も,VirtualBoxです.Debian 11に,いくつかパッケージを追加・削除し,仮想アプライアンスのファイルを作成して,ブラウザからダウンロードできるよう準備を終えました.
時間を浪費したのは,今回も,VirtualBoxとWSL2との共存です.両方を起動することはできます.VirtualBox(バージョンは6.1.38)で,ゲストOSとしてDebian 11を起動することもできます.しかし,ほどなく,カーネルパニックとなり,ゲストOSを停止しないといけなくなるのです.なお,職場も自宅も,ホストOSはWindows 11 Proです.
結局,職場のPCでは,VirtualBoxとWSL2の一方をオフにしました.デスクトップPCはWSL2(とDocker)を動かすようにし,ノートPCの1台を,授業の期間,VirtualBox専用機とします.
いずれも,まずは「Windows の機能の有効化または無効化」を起動し,一覧の中から,「Windows ハイパーバイザー プラットフォーム」と「仮想マシン プラットフォーム」にチェックを入れました.
それと,「コア分離」を開いてメモリ整合性をオフにしました.「Windows の機能の有効化または無効化」も「コア分離」も,下段タスクバーの虫メガネ(ここを選択して検索)に打ち込むことで選択できます.「コア分離」の件は以下を参考にしましたが,自分の実行環境では,「ファームウェアの保護」は表示されませんでした.
VirtualBoxを使用する場合には,次の2つを行ってから,再起動します.
- PowerShellを管理者として起動し,
bcdedit /set hypervisorlaunchtype off
を実行します.*1 - 「Windows の機能の有効化または無効化」で,「Linux 用 Windows サブシステム」にチェックが付いていたら外します.
WSL2を使用する場合には,次の2つを行ってから,再起動します.
- PowerShellを管理者として起動し,
bcdedit /set hypervisorlaunchtype auto
を実行します. - 「Windows の機能の有効化または無効化」で,「Linux 用 Windows サブシステム」にもチェックを入れます.
bcdeditコマンドについては以下を参照しました.
なお,Windows 11で,PowerShellを管理者として起動するには,「ここを選択して検索」に「powershell」を打ち込んでから,表示される「Windows PowerShell」を右クリックして,「管理者として実行」を選びます.ユーザー アカウント制御には「はい」です.
なのですが,自宅のデスクトップPCでは,VirtualBoxとWSL2が共存しています.TabbyでUbuntuのシェルを動かしながら,職場で作成したDebian 11の仮想アプライアンスをVirtualBoxにインポートし,起動させてGUIでアプリケーションが実行できています.PowerShellからbcdedit
を引数なしで実行すると,最後の行に「hypervisorlaunchtype Auto」と表示されます.このPCで,上述の一方をオフにする手続きを,行うわけにもいきません.
昨年は:
以下もご覧ください.
*1:hypervisorlaunchtypeという,長い引数は,「ハイパーバイザー・ローンチ・タイプ」と区切って唱えるといいでしょう.