作業メモ:WindowsでKali-Linuxを動かす&VMまわり

仮想化の条件が揃っているかチェックする

LeoMoon CPU-V – Downloads • LeoMoon Studios

downloadしてzipを解凍するとLeoMoonCPU-V.exeというファイルが出てくるので、これを実行する。

AMD-v Supported にチェックが入っていれば仮想化技術に対応している、AMD-v Enabled にチェックが入っていれば仮想化技術が有効になっている。ということを意味する。

Supported にチェックが入っているにもかかわらず Enabled にチェックが無い場合には PC 本体の設定を変更して AMD-v/SVM を有効にしよう。

Windows10ProならHyper-Vが使える(Homeはダメ)

仮想化というかLinuxを使おうとするといくつかの方法がある
・WSL : Windows10と並行してLinuxを走らせる
・VM : Hyper-Vを使って仮想マシンを構築する、VirtualBox、VMWareなども
・Docker : Hyper-Vの仮想マシンでもWindows10上でもコンテナを動かせる
あとWindowsサンドボックスというのもある

上記を整理していく

WSLとは

WSL1とWSL2
WSL1はHomeでも使える
ただし、WSL2には「仮想マシン支援機能」(Intel VT もしくはAMD-V)が必要

WSL1をインストールしたのちWSL2を追加できる(共存できる)
ただし、同一ディストリビューションを両方にインストールすることはできない

WSL1は、システムコールをWindowsがエミュレートする
WSL2は、Linuxのカーネルが動く

WSL1は、Windowsと同じIPアドレスとなる
WSL2は、Windowsと仮想ネットワーク越しに接続される
そのため、WSL上でサーバを立てるのは、向かない(面倒である)

Hyper-Vの仮想マシンとは

Hyper-Vにチェックを入れてインストール
→再起動

ここでOSを選択して仮想マシンを構築する

マシンの起動停止などはHyper-Vマネージャで行う

Dockerとは

Windows上のDockerは複数ある
Docker for WindowsはHyper-Vを使っている

Docker for Windowsをインストールすると「Enable WSL 2 Windows Features」のチェックボックスがある。
それをチェックしてDockerをインストールする。

Windowsサンドボックスとは

「Windows 10 May 2019 Update(バージョン 1903)」で追加された

Windows サンドボックスには、次の特性があります。
・Windows の一部: この機能に必要なすべてが Windows 10 Pro と Enterprise に含まれています。 VHD をダウンロードする必要はありません。
・サンドボックス: Windows サンドボックスを実行する度に、Windows の新しいインストールと同じほどクリーンです。
・使い捨て : デバイスに何も保持されません。 ユーザーがアプリケーションを閉じると、すべてが破棄されます。
・セキュア: カーネルの分離にハードウェア ベースの仮想化を使用します。 Microsoft ハイパーバイザーに依存して、Windows サンドボックスをホストから分離する別のカーネルを実行します。
・効率的: 統合カーネル スケジューラ、スマート メモリ管理、仮想 GPU を使用します。

前提条件
・Windows 10 Pro、Enterprise、または Education ビルド 18305 以降 (Windows サンドボックスは現在、Home SKU ではサポートされていません)
・AMD64 アーキテクチャ
・BIOS で有効になっている仮想化機能
・4 GB 以上の RAM (8 GB 推奨)
・少なくとも 1 GB の空きディスク領域 (SSD を推奨)
・少なくとも 2 つの CPU コア (ハイパースレッジを推奨する 4 つのコア)

インストール
1.コンピューターで Windows 10 Pro または Enterprise のビルド バージョン 18305 以降を使っている必要があります。
2.コンピューターで仮想化を有効にする。
 ・物理マシンを使用している場合は、BIOS で仮想化機能が有効になっている必要があります。
 ・仮想マシンを使用している場合は、次の PowerShell コマンドを実行して入れ子になった仮想化を有効にしてください。
  Set-VMProcessor -VMName -ExposeVirtualizationExtensions $true
3.タスク バーの検索バーを使用し 、「Windows の機能を有効またはオフにする」と入力して、Windows オプション機能ツールにアクセスします。 [Windows サンドボックス] を選択し****、[OK] をクリックします。 メッセージが表示されたら、コンピューターを再起動します。
 ・Windows サンドボックス オプションを 使用できない場合、コンピューターは Windows サンドボックスを実行する要件を満たしています。 これが正しくないと思う場合は、前提条件の一覧と手順 1 と 2 を確認してください。
4.スタート メニューで Windows サンドボックス を見つけて選択し、初めて実行します。

使用方法
1.ホストから実行可能ファイル (およびアプリケーションの実行に必要なその他のファイル) をコピーし、Windows サンドボックス ウィンドウに貼り付 けます。
2.サンドボックス内で実行可能ファイルまたはインストーラーを実行します。
3.実験が完了したら、サンドボックスを閉じます。 ダイアログ ボックスには、すべてのサンドボックス コンテンツが破棄され、完全に削除されるというメッセージが表示されます。 [OK] を選択します。
4.Windows サンドボックスで行った変更がホスト コンピューターに表示されていないことを確認します。

・まっさらなWindowsが立ち上がるので初期設定が必要
・停止すれば何もなくなる

WSL を使用して Windows に Linux をインストールする方法

WSL2にkali linuxをインストール
Microsoft Storeからもインストールできる(手動でもできる)
PowerShellで 「>wsl –install -d kali-linux」とやる

kali linuxはツール類も入っていないので最初にツール類をインストールする
$sudo apt update
$sudo apt install -y kali-default
これは結構時間がかかった

2022/03/30でapt updateがつまずいた(Unable locate package)ので下記の手順で実施

(おまけ)Hyper-VにWindowsの試験環境を用意する

Windows 10 仮想マシンをダウンロードする – Windows アプリ開発
ここからHyper-V用の開発用Windowsをダウンロードできる

Windows ハイパーバイザー プラットフォーム

(いろいろ動くようになりました:Microsoftが対応)
Windows ハイパーバイザー プラットフォーム

Hyper-Vアーキテクチャが有効な状況でVirtualBoxやAndroidエミュレータなどを動作させるための機構

これを使うことでHyper-Vが有効な状態でもVirtualBoxやAndroidエミューレータが使えるようになった(それまでは使えなかった)

コメント

タイトルとURLをコピーしました