Windows 11 Hyper-VへのArch Linuxインストールガイド

Two white kittens looking at each other Linux
Two white kittens looking at each other
記事内に広告が含まれています。

はじめに:Arch Linuxとは

Arch Linuxは、シンプルさ、最小主義、そしてコード的な美しさを追求するLinuxディストリビューションです。2002年にJudd Vineによって開発が始まり、「Keep It Simple, Stupid」(KISS)の原則に基づいて設計されています。Arch Linuxの主な特徴は以下の通りです:

  • ローリングリリースモデル:定期的な再インストールは不要で、システムを常に最新の状態に保つことができます
  • パッケージマネージャ Pacman:高速で柔軟性が高く、強力なパッケージ管理が可能です
  • Arch User Repository (AUR):コミュニティが維持する膨大なソフトウェアリポジトリへのアクセスができます
  • 最小限のベースシステム:必要なものだけをインストールでき、不要なプログラムでシステムが肥大化することを防ぎます
  • 優れたドキュメント:Arch Wikiは、Linuxについての最も包括的なドキュメントの一つとして知られています

Arch Linuxは初心者向けというよりは、Linuxに関する十分な知識を持ち、自分のシステムを完全にコントロールしたいユーザーを対象としています。しかし、学習意欲があれば、Linuxについての深い理解を得るための素晴らしい手段となります。

UbuntuとArch Linuxの比較

Arch LinuxとUbuntuは異なる哲学と対象ユーザーを持っています。以下に主な違いをまとめます:

インストールプロセス

  • Ubuntu:グラフィカルインストーラーによる簡単なセットアップが可能。数回のクリックでシステムがインストールできます
  • Arch Linux:コマンドラインベースのマニュアルインストールで、パーティショニングからブートローダーのセットアップまで全て手動で行います

システム構成

  • Ubuntu:事前に構成されたデスクトップ環境と多数のアプリケーションが含まれています
  • Arch Linux:最小限のベースシステムのみを提供し、ユーザーが必要なソフトウェアを選択してインストールします

リリースモデル

  • Ubuntu:6ヶ月ごとの定期リリースと、2年または5年のLTS(長期サポート)リリースがあります
  • Arch Linux:ローリングリリースモデルを採用し、常に最新のソフトウェアを提供します

パッケージ管理

  • Ubuntu:apt/apt-getパッケージマネージャが使用され、PPAを通じた追加ソフトウェアが利用可能です
  • Arch Linux:Pacmanとユーザーリポジトリ(AUR)によって、最新のソフトウェアに迅速にアクセスできます

ターゲットユーザー

  • Ubuntu:初心者からエキスパートまで幅広いユーザーに適しています
  • Arch Linux:Linuxに関する知識があり、カスタマイズ性を重視するユーザーに向いています

メリット比較

特徴UbuntuArch Linux
使いやすさ★★★★★★★
カスタマイズ性★★★★★★★★
安定性★★★★★★★
最新ソフトウェア★★★★★★★★
ドキュメント★★★★★★★★★
学習曲線緩やか急勾配

Windows 11 Hyper-VへのArch Linuxインストールガイド

現在は仮想環境が充実していますので、ベアメタルにインストールするよりも、先ずは Hyper-V 等の仮想マシンにインストールして試すのがお勧めです。

仮想マシンには Hyper-V、VirtualBox、qemu 等がありますが、Windows11 Pro 以上を使用している場合には、Hyper-V がお勧めです。

Hyper-V を使える状態まで設定する方法についてはググると事例が多く見つかりますので、この記事では説明しません。

空のHDDやSSDを用意して、仮想HDD をパススルー (Path through) 接続しておくと、後々にベアメタルとして起動も出来るので便利です。

準備作業

Hyper-V仮想マシンの設定

Hyper-V マネージャーを起動し、「操作」->「新規」->「仮想マシン」を選択します。

仮想マシンの新規作成ウィザード

仮想マシンの新規作成ウィザードが始まりますので「次へ」を選択します。

名前は自分で分かりやすいように決めます。仮想マシンを格納する場所は、バックアップの際に分かりやすいように、私は個人のフォルダの Documents\Hyper-V_VMs 以下にまとめています。入力したら「次へ」を選択します。

世代を指定します。ここでいう「世代」とは、所謂BIOSで起動しているシステムが「第1世代」、UEFIで起動しているシステムが「第2世代」になります。イマドキのシステムであれば「第2世代」でOKです。

メモリの最大量を決めます。実メモリの半分以下にしておいた方が良いと思います。私の PC は64GBのメモリ容量ですので、仮想マシンにも16GBを割り当てています。

ネットワーク接続は「Default Switch」を選択してください。内部の仮想的なスイッチを経由して、NAT越しにインターネットに接続できます。IPアドレスは自動的に割り当てられます。

通常であれば、ここで仮想ハードディスクを作成するのですが、Path through で SSD を接続する場合には、「後で仮想ハードディスクを接続する」を選択します。

選択した内容が一覧表示されますので、良ければ「完了」を選択します。

仮想マシンが作成された状態です。仮想HDD等は接続していませんので、まだ起動は出来ません。

Arch Linux ISOの準備

  1. Arch Linuxの公式サイトからISOイメージをダウンロードします。(例:jaistミラーからarchlinux-2025.04.01-x86_64.iso)
  2. ダウンロードしたISOの整合性を確認します。もし WSL2 等の Linux の環境があれば、下記の内容で確認できます:
# gpg確認例
$ gpg --keyserver-options auto-key-retrieve --verify archlinux-2025.04.01-x86_64.iso.sig
# sha256確認例
$ sha256sum ./archlinux-2025.04.01-x86_64.iso

仮想マシンの設定

「仮想マシン」の欄で、今回作成した名前を選択し、右下の「設定」を選択します。

仮想マシンの設定画面が開きますので、主要な項目のみ変更します。

セキュリティーの「セキュアブートを有効にする」のチェックを外し、無効にしてください。セキュアブート有効でもインストールできると思いますが上級者向けとなります。

「チェックポイントを有効にする」のチェックを外して無効にしてください。仮想マシンならではの機能ですが、チェックポイントを有効にしておくと動作が不安定になる事がありましたので、私は無効にしています。

第2世代の仮想マシンの場合には、SCSI接続でドライブを接続します。

先ずはハードドライブを選択して追加します。

「物理ハードディスク」の選択肢の中から、容量を頼りに使用するSSDを選択して適用します。(なお、Windows11上でオフラインにしないと選択肢に現れません)

次にダウンロードした ISO イメージを DVD ドライブとして追加します。

「イメージファイル」にダウンロードした ISO イメージを参照から選び、適用します。

最後に、起動順を「DVDドライブ」を1番目に、「ハードドライブ」を2番目に変更して適用します。

インストールプロセス

起動と接続確認

仮想マシンが選択された状態で接続をクリックします。

仮想マシンの画面が表示されますので、中央の「起動」ボタンを押します。

DVD ドライブに接続した ISO イメージから起動します。起動メニューが表示されますので、「Arch Linux Install medium (x86_64, UEFI)」を選択して Enter キーを押します。

これ以降の手順は Arch Wiki に詳細が書かれていますので、主要な所のみ記載します。

  1. 仮想マシンを起動すると、Arch Linuxのライブ環境にroot権限でログインされます
  2. UEFIモードで起動していることを確認します。以下のコマンドで何か表示されれば UEFI で起動しています:
# ls /sys/firmware/efi/efivars/
  1. インターネット接続を確認します。ping コマンドで応答があれば OK です。:
# ip link
# ip a
# ping archlinux.jp
  1. SSHを有効にするためにrootパスワードを設定します(オプション):
# passwd

これにより、Windows11 のターミナルを使ってSSH接続できます(例:ssh root@<VM-IP-ADDRESS>)。操作した内容を控えて置く場合には、SSH接続しておくと便利です。

ディスクのパーティショニング

  1. ディスクを確認します。Hyper-V 第2世代の場合は SCSI 接続ですので、ハードドライブは sda になります。:
# fdisk -l /dev/sda
  1. fdiskを使ってパーティションを作成:
# fdisk /dev/sda

以下のようなパーティション構成を推奨します:

  • /dev/sda1: 1GB EFIシステムパーティション
  • /dev/sda2: 32MB スワップパーティション
  • /dev/sda3: 残りのスペース Linuxファイルシステム用
  1. パーティションのフォーマット:
# mkfs.fat -F32 /dev/sda1
# mkswap /dev/sda2
# mkfs.ext4 /dev/sda3
  1. パーティションのマウント:
# mount /dev/sda3 /mnt
# mount --mkdir /dev/sda1 /mnt/boot
# swapon /dev/sda2

ベースシステムのインストール

  1. ベースパッケージのインストール:
# pacstrap -K /mnt base linux linux-firmware
  1. fstabファイルの生成:
# genfstab -U /mnt >> /mnt/etc/fstab

システム設定

  1. 新しいシステムにchroot:
# arch-chroot /mnt
  1. エディタをインストール(必須) vi系の操作に慣れていない場合には nano が良いかと思います:
# pacman -S vim
  1. タイムゾーンの設定:
# ln -sf /usr/share/zoneinfo/Japan /etc/localtime
# hwclock --systohc
  1. ロケールの設定:
# vim /etc/locale.gen

en_US.UTF-8ja_JP.UTF-8のコメントを外す

# locale-gen
# echo "LANG=en_US.UTF-8" > /etc/locale.conf
  1. ホスト名の設定:
# echo "archlinux" > /etc/hostname
  1. ブートローダーのインストール:
# pacman -S grub efibootmgr
# grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
# grub-mkconfig -o /boot/grub/grub.cfg
  1. rootパスワードの設定:
# passwd
  1. インストール環境を終了:
# exit
  1. アンマウントとシャットダウン:
# umount -R /mnt
# shutdown -h now
  1. Hyper-V設定で起動優先順位をDVD(ISO)からHDDに変更

システム初期設定

仮想HDDから起動できたら、システムの初期設定を行います。

ネットワーク設定

そのままではネットワークに接続していなかったので、systemd-networkd で設定します。

  1. systemd-networkdの設定:
# vim /etc/systemd/network/20-wired.network

以下の内容を入力:

[Match]
Name=eth0

[Network]
DHCP=yes
  1. ネットワークサービスを有効化:
# systemctl restart systemd-networkd.service
# systemctl enable systemd-networkd.service
  1. DNSの設定(/etc/resolv.confに直接記述):
# vim /etc/resolv.conf

Google (8.8.8.8) か Cloudflare (1.1.1.1) が良いかと思います。

ユーザー設定

  1. sudo等の必要なパッケージをインストール:
# pacman -S sudo vi less
  1. 一般ユーザーの作成:
# useradd -m -g wheel -s /bin/bash username
# passwd username
  1. sudoの設定:
# visudo

以下の行のコメントを外す:

Defaults env_keep += "HOME"
%wheel ALL=(ALL:ALL) ALL
  1. rootログインを無効化(セキュリティ強化):
# passwd -l root

GNOMEデスクトップ環境のインストール

  1. ミラーの設定(必要に応じて):
# vim /etc/pacman.d/mirrorlist

日本のミラー(jaist)を上位に移動

  1. GNOMEと必要なパッケージのインストール:
# pacman -S gnome
  1. GDMの有効化:
# systemctl enable gdm.service
# systemctl start gdm.service
  1. 日本語フォントとサポートのインストール:
# pacman -S noto-fonts noto-fonts-cjk noto-fonts-emoji
  1. 再起動後、GNOMEの設定から言語を日本語に変更

Arch Linux らしさ

Slackware + JE を使っていた事や、Linux from Scratch をやってみた経験がありますので、Arch Linux のインストール手順は、想像していたよりも容易だったと個人的には思います。

パッケージはバイナリだけどインストール手順はコマンド主体で、最小限のパッケージのみインストールされた状態からスタートしますので、ユーザー登録等を含め、Linux の使い方の基礎を固めるのに良いディストリビューションだと思います。(それでも systemd とか難しい部分はありますが…)

Ubuntu や Debian 等は楽ですが、裏で動いている事が分かりにくく、中身に深く触れる機会が少ないと感じていました。私と同じように感じるタイプの人は、シンプルでゼロから構築できる Arch Linux のようなディストリビューションが合っていると思います。

Linux kernel も最新が入りました。これから色々と試す土台となってくれるでしょう。先ずは HDD 3基を使って bcachefs を試してみようかと思っています。

結び

Arch LinuxをWindows 11のHyper-Vにインストールする手順は、通常のベアメタルインストールよりも若干の追加設定が必要ですが、結果として得られるシステムは同様に柔軟でカスタマイズ可能です。また、SSD を Path through 接続しておく事で、Hyper-Vでもベアメタルでも起動できる柔軟性を担保できます。

インストール過程では以下の点に注意が必要です:

  1. Hyper-Vでの仮想マシン設定(特に第2世代、UEFIブート関連)
  2. 必要最小限のシステムをまずインストールし、後から機能を追加していく
  3. エディタやsudoなど、多くのディストリビューションでは標準搭載されているツールも自分でインストールする必要がある
  4. ネットワーク設定やシステム初期設定を手動で行う必要がある

この手順を通じて、Linuxシステムの動作原理について深い理解を得ることができます。Arch Linuxは学習曲線が急ですが、その過程で得られる知識は非常に価値があります。定期的にpacman -Syuコマンドでシステムを最新の状態に保つことをお忘れなく。

コメント

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