システムコンテナの管理ソフトウェアであるLXDは3.
WindowsをQEMUで動かすと言うこと
第609回の
仮想マシンが使えるということは、
ところで前回は
repack-windows
:WindowsのダウンロードISOイメージを、VM版のLXDのインストールイメージに作り変えます
このオプションは何かと言うと、
MicrosoftはWindowsのインストールイメージを配布しています。つまりダウンロードしたイメージとMicrosoft Storeで購入したデジタルライセンス
しかしながら公式に配布しているイメージは、
それに対してFedoraではvirtio-winのバイナリをISOイメージで配布しています。そこでdistrobuilderの上記のオプションでは、
よってまずはLXD向けのWindowsインストーラーを再構築しましょう。
あらかじめWindows 10のダウンロードページからISOイメージをダウンロードしておいてください。この時点ではまだMicrosoftアカウントやライセンスは不要です。今回はWindows 10の64ビット版の日本語エディションを使うことにします。サイズは5GB強あるため、
次に前回同様、
$ sudo snap install distrobuilder --classic $ sudo apt install libguestfs-tools wimtools
再構成は
$ sudo distrobuilder repack-windows Win10_21H1_Japanese_x64.iso Win10_21H1_lxd.iso INFO Mounting Windows ISO INFO Downloading drivers ISO INFO Mounting driver ISO INFO Modifying WIM file {"file": "boot.wim", "index": 2} INFO Modifying WIM file {"file": "install.wim", "index": 1} INFO Modifying WIM file {"file": "install.wim", "index": 2} INFO Modifying WIM file {"file": "install.wim", "index": 3} INFO Modifying WIM file {"file": "install.wim", "index": 4} INFO Modifying WIM file {"file": "install.wim", "index": 5} INFO Generating new ISO $ ls -sh1 合計 11G 5.4G Win10_21H1_Japanese_x64.iso 5.5G Win10_21H1_lxd.iso
これだけでインストーラーの準備は完了です。
Windowsインストール環境の準備
ここからはWindows用のLXDインストール環境を準備します。まずLXD 4.
今回は最新の4.
$ lxc --version 4.17
LXDの用意ができたら、
- 1GHz以上のCPU
- 2GB以上のメモリー
- 32GB以上のストレージ
- DirectX 9以上に対応したグラフィックスカード
- 800x600以上のディスプレイ
- インターネット接続
このうちLXDでインスタンスを作る場合に注意しなければならないのが、--empty
」
$ lxc init win10 --empty --vm -c security.secureboot=false \ -c limits.cpu=2 -c limits.memory=8GiB Creating win10 $ lxc config device override win10 root size=50GiB Device root overridden for win10
今回はCPUを2コア、
次に先ほど作成したインストーラーをディスクイメージとして追加しておきます。
$ lxc config device add win10 iso disk \ source=$PWD/Win10_21H1_lxd.iso boot.priority=10 Device iso added to win10
上記ではコマンド実行時のディレクトリにISOファイルがあることになっていますが、boot.
」
また、
$ sudo apt install virt-viewer
さらにLXDがvirt-viewerがインストールされていることを把握できるように、
$ sudo systemctl reload snap.lxd.daemon.service
あとはインストール時に利用する、
Microsoft Storeでデジタルライセンスを購入していたら、
LXDにインストールする場合は、
ここまででWindowsをインストールする環境が整いました。
Windowsのインストール
あとはWindowsをインストールしましょう。まずはLXDインスタンスを起動します。
$ lxc start win10 --console=vga

上記の起動画面の表示後すぐくらいにlxc stop -f win10
」lxc start win10 --console=vga
」


プロダクトキーはあとから入力するほうをおすすめします。これはLXD環境で本当にWindowsが起動して期待通りの動作を行うことを確認できてから、

ソフトウェアライセンスに同意したあとは、

空のストレージに新規にインストールするため

ストレージの選択画面では特にこだわりがなければ、
あとはインストール完了をひたすら待ちます。おそらくしばらくすると青い画面で停止することでしょう。これは一度システムが自動的に再起動するためです。そこで青い画面で止まっていたら、
$ lxc console win10 --type=vga
再起動後は初回セットアップ画面が表示されます。




個人で使う場合、
前述したようにオンラインアカウントにしておくとライセンスの再認証が楽になるという利点があるため、

オンラインアカウントの場合はPINの設定が必須のようです。よってPINも設定します。なお顔認証・

ここから先はWindowsのサービスに関する諸々の設定になります。各自で環境に合わせて自由に設定すれば良いでしょう。

設定が完了すると自動的にログインします。さらにデバイスの認識等も走るため、

Windowsの再起動・リモートデスクトップ
Windows自体は、
ただしインストール直後は、
$ ps -fe | egrep "lxc|remote-viewer" root 3025 1 0 8月02 ? 00:00:00 lxcfs /var/snap/lxd/common/var/lib/lxcfs -p /var/snap/lxd/common/lxcfs.pid root 3719 1 0 8月02 ? 00:00:00 [lxc monitor] /var/snap/lxd/common/lxd/containers ldap shibata 713188 3556942 0 16:51 pts/7 00:00:11 lxc start win10 --console=vga shibata 713287 713188 0 16:51 pts/7 00:00:08 [remote-viewer] <defunct> shibata 755727 727634 0 17:42 pts/5 00:00:00 grep -E --color=auto lxc|remote-viewer
上記におけるlxc start
」
$ lxc operation list +--------------------------------------+-----------+-----------------+---------+------------+----------------------+ | ID | TYPE | DESCRIPTION | STATUS | CANCELABLE | CREATED | +--------------------------------------+-----------+-----------------+---------+------------+----------------------+ | 2e9f37a4-6ec5-40bd-8718-fa13a0993864 | WEBSOCKET | Showing console | RUNNING | NO | 2021/08/13 07:51 UTC | +--------------------------------------+-----------+-----------------+---------+------------+----------------------+
そこでlxc start
」
$ sudo kill 713188 $ lxc operation list +----+------+-------------+--------+------------+---------+ | ID | TYPE | DESCRIPTION | STATUS | CANCELABLE | CREATED | +----+------+-------------+--------+------------+---------+
またインストールが完了したら、
$ lxc config device remove win10 iso
また、--console
」
$ lxc start win10
VGAコンソールが必要になったときは、
$ lxc console win10 --type=vga
ただし、
有効化の手順はMicrosoftのドキュメントどおり

接続にはRemminaを利用します。接続先はIPアドレスを使う場合、
$ lxc info win10 | grep inet inet: 10.107.227.138/24 (global) inet6: fd42:5ef8:1faf:c29:216:3eff:fe34:7d12/64 (global) inet6: fd42:5ef8:1faf:c29:9d75:4090:2f22:39f2/64 (global) inet6: fe80::20f4:bc4a:d2d7:42ab/64 (link) inet6: fd42:5ef8:1faf:c29:9555:d98d:aa65:c4c5/64 (global)
あとはこのIPアドレスにRDPプロトコルで接続すればログイン画面が表示されるはずです。ちなみにオンラインアカウントを作っている場合は、

サイドバーの
その他のRemminaの使い方については、
Windowsのライセンス認証
ひととおり問題なく動くことを確認できたなら、
「スタート>設定>更新とセキュリティ>ライセンス認証」



ライセンスの認証が完了すると、
ちなみにLXD上のWindowsでも、