たびとの旅路 ~電脳砂漠の冒険譚~

フロッピー頼りに歩き、クラウドの地平を見つめる今日まで。見つけたオアシス、迷い込んだ砂の迷宮、全てこの羊皮紙に。

Windowsに、Linuxの魂を ~WSL2召喚、完全詠唱の書~

この辺りは未知の法則に支配されているようだ。なかなか面白い、少し書き留めておこう。

「Windowsの上でLinuxが動く?便利そうだが、儀式(設定)が難解そうだ…」 「Hyper-Vや、会社のプロキシという結界の中でも、その魔法は通用するのだろうか?」 そんな不安から、WSL2という、禁断の召喚術に二の足を踏んでいる、若き冒険者のあんたへ。もう、心配は無用だ。

この羊皮紙には、WSL2(Windows Subsystem for Linux 2)という禁断の召喚術を、初めて試みる全てのWindowsの民に向けた、手順を一つひとつ丁寧に解説する「完全詠唱の書」を記した。

驚くほど簡単になった基本の召喚術(wsl --installコマンド)から、Hyper-V仮想マシンという入れ子の世界や、プロキシサーバーという結界の中での、より高度な儀式まで。あんたが直面するであろう、あらゆる疑問や不安を、この一枚の羊皮紙が、全て解決してくれるだろう。

この羊皮紙のあらまし

この羊皮紙が導く者

  • WSL2という、禁断の召喚術に、初めて挑む全てのWindowsの民
  • Hyper-V仮想マシンという、入れ子の世界で、WSL2を動かしたいと願う上級魔法使い
  • プロキシという名の、強力な結界の中で、WSL2をセットアップする必要がある者
  • Linuxの強力な魔法(コマンド)を、Windowsで使いたいと願う開発者
  • デュアルブートという面倒な儀式を避け、手軽にLinux環境を手に入れたい旅人

砂漠の道標

  • WSL2 (Windows Subsystem for Linux 2) - Windows上でLinuxを動かすための、Microsoftが提供する仮想化技術。
  • Hyper-V - Windowsに標準搭載された仮想化基盤。仮想マシン(VM)を作成・管理するための強力な神器。
  • Nested Virtualization(入れ子構造) - 仮想マシンの中で、さらに仮想マシンを動かす高度な技術。
  • プロキシサーバー - 企業ネットワーク等で、外部との通信を仲介する中継サーバー。通行手形のようなもの。
  • apt - Debian系Linux(Ubuntuなど)で使われる、ソフトウェアの導入・更新を管理する呪文(パッケージマネージャー)。
  • wget - インターネットからファイルをダウンロードするための古の呪文(コマンド)。
  • 環境変数 - OSやアプリケーションが参照する、システム全体の設定情報。魂に直接刻まれた記憶のようなもの。

詠唱レベル1:【基本編】コマンド一発!魂の召喚

まずは、この魔導書の、最も基本的な呪文から始めよう。 Windows 11(またはWindows 10 v2004以降)ならば、以下の儀式だけで、WSL2とUbuntu(Linuxの一種)の魂が、あんたの元へ降臨する。

  1. PowerShellを「管理者」として、その祭壇を開く。
  2. 以下の、たった一行の、魔法の呪文を詠唱する。

    wsl --install
    
  3. あとは、ただ待つだけ。PCを再起動すれば、あんたのWindowsに、Linuxの魂が宿る。
エクスプローラーに表示された Linux アイコンとフォルダ

エクスプローラに宿った、Linuxの魂

詠唱レベル2:【応用編】Hyper-Vという、入れ子の世界での召喚

ここからは、Hyper-V仮想マシンという名の、仮想の箱庭の中で、さらにWSL2を召喚したい、上級者向けの秘儀だ。 「仮想の中の、さらに仮想」を実現するには、入れ子構造(Nested Virtualization)を許可する、二つの特別な呪文を、ホストOS(親PCのWindows)のPowerShell(管理用コマンド画面)で唱える必要がある。

# 仮想化の拡張を許可する
Set-VMProcessor -VMName "<VMName>" -ExposeVirtualizationExtensions $true
# MACアドレスの偽装を許可する
Get-VMNetworkAdapter -VMName "<VMName>" | Set-VMNetworkAdapter -MacAddressSpoofing On

この二つの呪文を唱えなければ、WSL2は「初期設定エラー」という名の、拒絶反応を示すだろう。

初期設定エラー

入れ子の儀式を怠った者に下される、神々の怒り

詠唱レベル3:【実践編】召喚後の、魂を育てる儀式

魂を召喚したら、次は、その魂が快適に暮らせるよう、環境を整えてやる儀式だ。

【重要】プロキシという名の結界を突破する

会社のネットワークという、強力な結界の中で旅をするなら、この儀式は必須だ。apt(パッケージ管理ツール)やwget(ダウンロードコマンド)、そして環境変数(システム設定)。三つの異なる古文書に、プロキシサーバー(通信中継サーバー)という名の、通行手形を正確に記さねばならない。

  1. aptの古文書 (/etc/apt/apt.conf)

    Acquire::http::Proxy "http://<user_id>:<password>@<host>:<port>";
    Acquire::https::Proxy "http://<user_id>:<password>@<host>:<port>";
    
  2. wgetなどの古文書 (/etc/wgetrc)

    https_proxy = http://<user_id>:<password>@<host>:<port>
    http_proxy = http://<user_id>:<password>@<host>:<port>
    
  3. 魂に直接刻む、環境変数の古文書 (/etc/profile.d/proxy.sh)

    export http_proxy=http://<user_id>:<password>@<host>:<port>
    export https_proxy=${http_proxy}
    export no_proxy="127.0.0.1,localhost"
    

大地を清め、言葉を授ける

プロキシの結界を突破したら(あるいは、その必要がなければ)、apt updateupgradeで大地を清め、language-pack-jaで、日本語という我々の言葉を授ける。

羊皮紙を巻く前に

wsl --install」——この、あまりにシンプルな、たった一行の呪文。

それだけで、Windowsの利便性と、Linuxの強力な魂を、同時に手にできる時代がやってきた。もう、デュアルブート(二つのOSを切り替える方式)や、別のPCという名の、面倒な旅支度は必要ない。

WSL2導入の三つの価値

  1. 圧倒的な導入容易性 - wsl --installの一行で、数分後にはLinux環境が完成。デュアルブート設定やVM構築の手間が不要。
  2. WindowsとLinuxの完全融合 - エクスプローラーからLinuxファイルへ直接アクセス可能。二つの世界を自由に行き来できる。
  3. 企業環境での実用性 - Hyper-V上でも動作し、プロキシ環境にも対応。実務で即戦力となる柔軟性。

注意すべき儀式の順序

  • Hyper-V仮想マシン内で使う場合は、必ずNested Virtualizationの有効化を先に実施すること
  • プロキシ環境では、apt.conf、wgetrc、profile.dの三箇所すべてに設定が必要
  • 初回起動時のユーザー名・パスワード設定を忘れずに(sudo権限に必要)

まとめ

この羊皮紙が、あんたの不安を取り除き、快適なWSL2ライフという、新たな冒険への第一歩となることを願う。

東の空が白んできた。次のオアシスへ向けて、そろそろ荷造りを始めるとしよう。

砂漠で見つけた魔法のランプ

ラクダの独り言

ご主人が「窓の中に、ペンギンを召喚する!」とか言って、また黒い画面に呪文を打ち込んでいる。俺に言わせりゃ、窓は窓、ペンギンはペンギンで、別に一緒にいなくたっていいだろうに。まったく、人間ってのは、ごちゃごちゃと混ぜるのが好きだな。おっと、また腹が鳴っちまった。