WSL にインストール

提供: ArchWiki
移動先: 案内検索

Windows 10 には Linux カーネルのインターフェイスをエミュレートするサブシステムが搭載されており、通常の Linux アプリケーションを実行することができます。Wine と同じような仕組みですが、もっと低水準です。デフォルトでは Ubuntu のユーザー空間がセットアップされていますが、Arch に置き換えることが可能です。動作させるにはパッケージをビルドするための Arch 環境が必要です。このページの手順は こちらのガイド を基にしています。

準備

ノート: Fall Creators アップデート以前で WSL を使っていた場合、最初にコマンドプロンプトから既存環境をアンインストールしてください (重要なデータは先に保存してください): > lxrun /uninstall /full /y

Fall Creators アップデートを適用した Windows 10 を使っている場合、Windows の機能の有効化または無効化にある Windows Subsystem for Linux にチェックを入れてください。

Anniversary アップデートまたは Creators アップデートの Windows 10 を使っている場合、こちら の手順に従って有効化してください。設定 > 更新とセキュリティ > 開発者向けにある開発者モードを選択する必要があります。

インストール

ノート: Fall Creators アップデート以前のバージョンの Windows を使っている場合、%localappdata%\Packages\CanonicalGroupLimited.UbuntuonWindows_*\LocalState\rootfs の代わりに %localappdata%\lxss\rootfs を使ってください。

Windows ストア から Ubuntu をインストールしてください。

そしてスタートメニューから Ubuntu を起動してください。

デフォルトユーザーを root に設定:

$ ubuntu config --default-user root

Arch のブートストラップ .tar.gz を ダウンロードページ からダウンロードして、解凍:

$ tar -zxvf /mnt/c/Users/username/Downloads/archlinux-bootstrap-version.tar.gz

~/root.x86_64/etc/pacman.d/mirrorlist 内の使用するサーバーをアンコメントしてください。

WSL で /etc/resolv.conf を自動生成:

$ echo "# This file was automatically generated by WSL. To stop automatic generation of this file, remove this line." > ~/root.x86_64/etc/resolv.conf

開いた bash プロンプトを全て閉じてください。

Windows エクスプローラで %localappdata%\Packages を開いて CanonicalGroupLimited.UbuntuonWindows_* という名前のフォルダを探してください (アスタリスクはランダムな文字列になります)。

%localappdata%\Packages\CanonicalGroupLimited.UbuntuonWindows_*\LocalState\rootfs にある bin, etc, lib, lib64, sbin, usr, var を削除してください。

そして上記と同じフォルダを rootfs\root\root.x86_64 から rootfs に移動してください (コピーでは駄目です)。

Linux コンピュータを使って fakeroot-tcpAURglibc-wslAUR をビルドしたら Windows PC にパッケージをコピーしてください。glibc-wslAUR をビルドするときは makepkg--nocheck を使うことで時間のかかるテストをスキップすることができます。

glibc-wsl には このバグ に対応する修正が含まれており、fakeroot-tcp は WSL によって System V IPC が完全に実装されるまで必要です (こちら を参照)。WSL のバグが修正されればこの手順は不要になります。

再度 bash を開いて、Arch をセットアップしてください:

# pacman-key --init
# pacman-key --populate archlinux
# pacman -U /mnt/c/Users/username/Downloads/glibc-wsl-2.25-2-x86_64.pkg.tar.xz
# pacman -U /mnt/c/Users/username/Downloads/fakeroot-tcp-1.21-2-x86_64.pkg.tar.xz
# pacman -Syyu base base-devel

ユーザーをセットアップ (Windows のユーザー名と同じにする必要はありません):

# useradd -m -G wheel -s /bin/bash username
# passwd root
# passwd username
ノート: Windows 10 の Fall Creators アップデート以上の場合、次のコマンドを使います: ubuntu config --default-user username

Windows コマンドプロンプトで以下のコマンドを実行することでユーザーをデフォルトに設定できます:

> lxrun /setdefaultuser username