WindowsにおけるLinux環境の構築

1.はじめに

Windows上でLinuxと同等のCLI環境を構築する. 本ページでは,Windows 11にインストールすべきソフトウェアについて説明する. (作業時間:30~60分程度 ※トラブルが無かった場合)

  • WSL2 (Windows 11でLinuxと同等の環境を構築する基盤ソフトウェア)

  • Ubuntu (Linux OSの1つ)

  • Windows Terminal (高性能なターミナルソフトウェアであり,Ubuntu on WSL2も容易に起動できる)

本ページでは,CLI (Command-line Interface) 環境のインストールのみ説明している. Windows 11では,以下のインストール手順によって,GUI環境も利用できる. Windows 10で GUI (Graphical User Interface) を使うのであれば,続きの説明ページも読むこと.

一連のインストールにより,最終的には5GB程度のディスク容量を占有する.

困ったことがあれば,WSL2に関する Microsoft公式のドキュメント を読むとよい.

警告

インストールの過程ではネットワークからの大量のダウンロードも行われている. 十分にネットワーク帯域が確保できる環境で実施すること. スマホのテザリング環境等では,絶対に行わないようにすること.

また,下宿先のネットワーク回線が細いことを自覚しているのであれば,講義時間帯での作業も避けたほうが良い.

警告

本ページでインストールしようとしているWSL2は,Windows 10 Version 2004 以降で利用可能な機能です. Windowsのバージョンは,『Win + R を押してから,winver コマンドを実行』で確認できます.

古いバージョンを利用している場合は,本ページ下方の FAQ を見てください.

注釈

バックスラッシュ記号は,環境によって「╲」となったり,「¥」として表示されている. 適宜,読み替えること.

2. Ubuntu on WSL2

ここでは,Windows 11の拡張機能である Windows Subsystem for Linux 2 (WSL2) の インストール方法,WSL2上へのUbuntuのインストール方法,そして,それらの簡単な利用方法を説明する.

警告

インストール中に Ubuntu on WSL2用のユーザとパスワード を作成します. Windowsと同じである必要は無いが,決して忘れないように してください. WSL2の「管理者 (Super User)」は,貴方自身 です!! パスワードを忘れたとしても,誰も貴方を助けることはできません.

2.1 WSL2の新規インストール

詳細は マイクロソフト公式のドキュメント が分かりやすい.

手順の概略は,以下のとおりである.

  • コマンドプロンプト(管理者権限)を開く
    • スタートメニューを開き,キーボードで cmd と打つ.
      • スタートメニューは,Windowsキーで開くことができる

    • コマンドプロンプトを「管理者として実行」で開く
      • スタートメニューの右半面,あるいは,左半面で検索された「コマンドプロンプト」の部分で右クリックすると,「管理者として実行」メニューがあるはず

  • 開かれたコマンドプロンプトウィンドウで以下を実行する
    wsl --install
    
    ../_images/wsl2_install_progress_1.png

    図 9 インストール中の様子(数分待つ必要がある)

    ../_images/wsl2_install_progress_2.png

    図 10 インストール完了時の様子

  • PCを再起動する
    • 何かの作業中であるならば,作業内容の保存をお忘れなく.

2.2 Ubuntu (on WSL2) のインストール

注釈

現在の演習室システムのOSは Ubuntu 24.04 です. 2026年4月以降に 26.04 がリリースされる可能性もありますが,演習室のOSは,24.04のままになる予定です. したがって,以下の手順では,演習室と同じバージョンを指定するインストール方法としています.

  • コマンドプロンプトを開く ※管理者権限は不要
    • スタートメニューを開き,キーボードで cmd と打つ.

  • 開かれたコマンドプロンプトウィンドウで以下を実行する
    wsl --install -d Ubuntu-24.04
    
  • 新しくウィンドウが開き Installing, this may take a few minutes... が表示される
    • ここで数分待つ

  • 新しく開いたウィンドウで,Enter new UNIX username: が問われるので,適当な名前を入力する.
    • 必ず半角文字を使うこと

    • 入力した名前はいろいろな箇所で”見える”ため,後で恥ずかしくなるような名前を付けないように・・・

    • 以下の実行例などでは,ユーザ名 eduuser としている

  • 続いて,New password: が問われるので,12文字以上 で覚えられるパスワードを設定する.
    • 入力中,画面上に文字は現れないことに注意

  • 続いて,Retype new password: が問われるので,同じパスワードをもう一度入力する.
    • やはり,入力中の画面に文字は現れないことに注意

  • いくつかのメッセージの後に,$ で終わるメッセージが出ていれば完了です.
    • $ は Ubuntu on WSL2 のプロンプト

    注釈

    wsl --install 実行時にヘルプメッセージが出てくるだけの場合は,既にインストール済みである.

    wsl --list -v コマンドを実行し,NAME=Ubuntu-24.04, VERSION=2 があるか確認するとよい. VERSION部分が1になっている場合は,FAQを参照せよ.

    その他,詳しくは,Microsoft公式のドキュメントを参照し,ページ内検索(ほとんどのブラウザで`C-f`)をするとよい. - トラブルシューティング(インストール) - トラブルシューティング(一般)

本資料では,デフォルトの Ubuntu (2022年3月時点では,Ubuntu 20.04と同じ) がインストールされているものとして,説明をおこなっていく. また,本資料においては,OS名を Ubunutu on WSL2 と呼称することにする.

2.3 Ubuntu on WSL2インストール後の確認

本ページでは,WSL1ではなく,WSL2のインストールを目指している. 以下のコマンドにて,VERSIONが2になっているか,確認するとよい.

> wsl --list -v
  NAME            STATE           VERSION
* Ubuntu-24.04    Running         2

VERSION部分が1になっている場合は,FAQ を参照せよ.

2.4 実行方法の例と動作確認

以下の操作を通して,実行方法の確認と,簡単な動作確認をしておこう.

2.4.1 実行方法の例1: コマンドプロンプトから開く

  • コマンドプロンプトを開く
    • スタートメニューを開き,キーボードで cmd と打つ.

    • 「コマンドプロンプト」をそのまま実行 ※管理者権限は不要

  • コマンドプロンプトで,以下のコマンドを通して,起動する
    • > は,Windows のプロンプト,$ は,Ubuntu on WSL2 のプロンプトである.

    • 通常,UbunutuなどLinuxのプロンプトの前にはいくつかの情報が付与されている.

    > wsl
    
    $
    

2.4.2 実行方法の例2: Windowsのスタートメニューから開く

  • スタートメニューから Ubuntu-24.04 を選ぶ

2.4.3 Ubuntu on WSL2 のインストール後の動作確認

  • Ubuntu on WSL2上で,インストールされたOSのバージョンを確認してみよう.
    • 参考: 2026年3月時点では,Ubuntu 24.04.4 LTS がインストールされたようである.

    > wsl
    
    $ cat /etc/os-release
    PRETTY_NAME="Ubuntu 24.04.4 LTS"
    NAME="Ubuntu"
    VERSION_ID="24.04"
    VERSION="24.04.4 LTS (Noble Numbat)"
    VERSION_CODENAME=noble
    ID=ubuntu
    ID_LIKE=debian
    HOME_URL="https://www.ubuntu.com/"
    SUPPORT_URL="https://help.ubuntu.com/"
    BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
    PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
    UBUNTU_CODENAME=noble
    LOGO=ubuntu-logo
    
    $ lsb_release -a
    No LSB modules are available.
    Distributor ID: Ubuntu
    Description:    Ubuntu 24.04.4 LTS
    Release:        24.04
    Codename:       noble
    

2.5 WSL2への追加ソフトウェアのインストール

本学科の講義で多用するソフトウェアを,Ubuntu on WSL2 にもインストールしておく. なお,以下の作業は,Ubuntu on WSL2 の中で実施すること.

以降,sudo コマンドを含むコマンド実行を,数回行う. sudo コマンドを実行する際には,インストール時に定めた自身のパスワードが必要となる.

パスワードを忘れた場合は,本ページ下方の FAQ を見よ.

apt コマンドに関して,上手くいかないことがあれば,これも本ページ下方の FAQ を見よ.

注釈

以下,各自の必要に応じてインストールすればよい. 自身が所有するPCで慢性的にHDD/SDDの容量が不足している,という人は,特に注意を.

2.5.1 インストール作業の前に

apt install をする前に,一度 apt update をしておくとよい.

$ sudo apt update     # ソフトウェアDBの更新
  • 上記実行例の $ は,Ubuntu on WSL2の プロンプト である.入力しなくても良い.

  • 上記実行例の # 以降の文字列は コメント である.入力しなくても良い.

2.5.2 開発者用の基本パッケージ (gcc含む)

演習科目や実験科目では,gcc を用いたコンパイルを行うことが多い. 開発に必要な典型的なソフトウェアを入れておくと,後々扱いやすい.

$ sudo apt install build-essential   # 開発用ソフトウェア一式

パスワードを聞かれた場合は,Ubuntu on WSL2 のユーザのパスワードを入力する.

注釈

ネットワークからのダウンロードデータ量は約 50 MBになる. インストールには約 200 MBのディスク容量が必要となる.

どうしても,ダウンロード量やインストール後の容量を制限したい場合,gccのみインストールすることも考えられる. ただし,様々な問題を自力で解決する意志のある人を除き,推奨はしない.

$ sudo apt install gcc         # Cコンパイラのみ

2.5.3 upLaTeX

演習室の環境では,レポート作成の際に upLaTeX による組版をおこなう. 自習環境でも,Ubuntu on WSL2上で upLaTeX を利用したいのであれば,入れておくとよい.

2026年3月5日現在の Ubuntu 24.04 であれば,演習室の環境と同じバージョン (TexLive 2023) がインストールされる.

$ sudo apt install texlive-{latex-base,latex-extra,lang-japanese} --no-install-suggests
# 確認1
$ dpkg --list texlive-latex-base | tail -1
ii  texlive-latex-base 2023.20240207-1 all          TeX Live: LaTeX fundamental packages
# 確認2
$ uplatex --version | head -1
e-upTeX 3.141592653-p4.1.0-u1.29-230214-2.6 (utf8.uptex) (TeX Live 2023/Debian)

注釈

ネットワークからのダウンロードデータ量は約 600 MBになる. また,インストールには約 1.7 GBのディスク容量が必要となる.

Windowsネイティブ版の TeXLive をインストールし,Windows上で組版をするならば, Ubuntu on WSL2上での upLaTeX は不要である. 詳しくは,別ページの記事 を参照のこと.

その後,演習室と同じ edu-uplatex コマンドを使いたいならば, 以下のページも参照して,インストール作業をおこなう.

加えて,Windows 11 (+WSLg) で Linux GUI を使えるように設定している場合は, PDF viewer として,evince を入れておくと,より演習室の環境に近づく.

# If you enable Linux GUI, e.g. WSLg on Win11, run the following line:
$ sudo apt install evince

注釈

最小インストールを目指す場合は:

$ sudo apt install texlive-{latex-base,latex-recommends,lang-japanese} --no-install-suggests
$ tlmgr init-usertree
$ tlmgr option repository http://texlive.texjp.org/2023/tlnet/
$ tlmgr install fvextra upquote

2.5.4 Emacs(任意)

演習室を利用した講義では Emacs を使う場合がある. 自習環境でも練習のために利用したいのであれば,入れておくのもよいだろう.

以下,いずれかのコマンドでインストールできる

$ sudo apt install emacs       # 通常版のEmacs (GUIを含む) / 推奨
$ sudo apt install emacs-nox   # 必要最小限のEmacs / 低スペックPCの場合

なお,Emacs を起動してしまった場合,終了は C-x C-c である. yes/no の入力が求められているなら,そのメッセージに従えばよい. 入力が効かないようであれば,何回か C-g を押してから,もう一度終了コマンドを入力してみるとよい.

初期設定のままでは使いにくいので,初期設定もしておこう.まずは,以下を実行して,設定ファイルを準備する.

$ mkdir -p ~/.emacs.d/
$ touch ~/.emacs.d/init.el    # 空ファイルの作成,あるいは,既存ファイルの更新日付の更新

あとは,Emacsのカスタマイズ を参考に,まずは,推奨設定の内容ぐらいは入れておこう. これで,演習室の履修環境と,比較的近い初期設定になっているはずである.

注釈

Windows11では,GUI有りEmacsをインストールしていれば,Windows の スタートメニューに Emacs (GUI) (Ubuntu) のようなプログラムが登録される.

注釈

GUIを使う予定がないなら,最小限の emacs-nox で十分である. 通常版は,Emacsそのものというよりは,GUIに必要なファイルをダウンロードしてしまう. インストール後の容量は,emacs-nox が約 128 MB, emacs が約 273 MBである.

3. Windows Terminal

3.1. インストール(通常,作業は不要)

Windows 11 では,標準でインストール済みです. 参考として,Microsoft Store のページを示します.

3.2 起動方法

方法(1)

スタートメニューから「Windows Terminal」を選択する.

このとき,右側のパネルにおいて,Ubuntu-24.04 を選択すればよい.

../_images/windows_terminal_1.png

図 11 スタートメニューから Windows Terminal を起動

方法(2)

  • Windows 11 の Explorer で,所望のフォルダを開く

  • Explorerのウィンドウ内で,Shiftキーを押しながら右クリックする
    • 「Linuxシェルをここに開く(L)」を選択する.

注釈

Explorer とは,いわゆるフォルダなどを開いた際のウィンドウを司るプログラムのことである. Windowsユーザであれば,誰もが無意識のうちに使っているはず.

方法(3)

  • Windows 11 の Explorer で,所望のフォルダを開く

  • Explorerのウィンドウ内で,右クリックから Windows Terminal を起動する.

  • PowerShellかコマンドプロンプトが開くので,wsl コマンドでUbuntu on WSL2の環境に入る

方法(4)

起動した後に,さらにタブを追加することもできる.

../_images/windows_terminal_2.png

図 12 Windows Terminal の上部にある v 記号をクリックした後の様子

4. 逆引きリファレンス

Ubuntu on WSL2を使う際の,典型的な操作を,以下にまとめる.

4.1 WindowsからUbuntu on WSL2のホームディレクトリにアクセス

例えば,Ubuntu on WSL2の環境構築時に,ユーザ名 eduuser を作成したならば, 以下のディレクトリに,Explorerでアクセスすればよい.

\\wsl$\Ubuntu-24.04\home\eduuser\

注釈

Explorer の「ネットワークの場所」に追加しておくと, Windows側からのアクセスが楽になります.

../_images/wsl2_explorer_1.png

図 13 Explorer で PCを開き,右クリックすると現れるメニュー

4.2. Ubuntu on WSL2からWindowsの「ドキュメント」ディレクトリにアクセス

Windowsのログインユーザ名が,winuser であるならば, 以下のような方法で,ディレクトリにアクセスすればよい.

$ cd /mnt/c/Users/winuser/Documents

注釈

Windowsではいくつかの特殊なディレクトリは,表示だけ日本語にしている場合がある. 他には,「デスクトップ (Desktop)」,「ダウンロード (Downloads)」など.

4.3 Ubuntu on WSL2からWindowsのOneDriveにアクセス

Windowsのログインユーザ名が,winuser であるならば, 以下のような方法で,ディレクトリにアクセスすればよい.

$ cd /mnt/c/Users/winuser/OneDrive

注釈

環境によっては,OneDrive ではなく,OneDrive - 岡山大学 となっているかもしれない. そのような場合は,"OneDrive - 岡山大学" として,ダブルクオートで囲えばよい.(TABキーによる補完機能も利用しよう.)

なお,日本語を含むディレクトリ名は,後で別の問題が発生する場合もあるので注意すること.

4.4 Ubuntu on WSL2からWindowsのExplorerを開く

作業中のディレクトリについて,WindowsのExplorerを開きたいこともあるだろう. 以下のような方法で,Ubuntu on WSL2から Explorer で,カレントディレクトリを閲覧することができる.

$ wslview .

なお,. とは,カレントディレクトリの意味である.

注釈

コマンドが見つからない旨のメッセージが出る場合は,メッセージに従って wslu をインストールする. (ダウンロード量 40MB / ストレージ消費 160MB 程度)

5. WSL利用上の注意

5.1 文字コードと改行コードについて

Ubuntu on WSL2を含むLinuxでは,Windowsとは異なる文字エンコーディングや改行コードを用いている. 演習室での利用を鑑みて,できるだけ,以下のルールに統一して,ファイル等の作成をするように注意するとよい.

  • 文字エンコーディング: UTF-8 (BOM無し)

    • Windows の場合,Shift JIS (CP932) がよく用いられている.

  • 改行コード: LF (10)

    • Windows の場合,CR + LF (13 10) がよく用いられる.

Emacsの場合の扱い方は,文字コード・改行コード関連 を見よ.

また,改行コードについて,C言語でどのように扱っているのか,気になる者は, fopen()b オプション(K&R, プログラミング言語C, pp.302--303)について調べてみるとよい.

5.2 パスワードについて

Ubuntu on WSL2 のユーザとパスワードは,Windowsのアカウントとは別の管理体系である. パスワードを忘れないようにすること.

5.3 情報の収集と危険性

WSLに関する技術は,日々進化している. ウェブで検索して見つけた情報には,古くて役に立たないどころか,避けるべき操作をしているものも散見される. (最悪の場合,ネットワークに全くつながらなくなり,オンライン講義が受けられなくなることも...)

困ったことがあれば,探し出した情報を鵜呑みにするのではなく, 一次情報源から裏付けとなる情報をさらに探してみるとよい.

6. FAQ

►Q. Ubuntu on WSL2のパスワードを忘れてしまった.助けてほしい.

A. 以下の手順でパスワードを再設定する.

  1. コマンドプロンプトから,root ユーザとして Ubuntu on WSL2 を起動する.

  2. passwd コマンドにより,所望のユーザのパスワードを変更すればよい.

以下は,ユーザ名 eduuser の場合の例.行頭の # は, rootという特権ユーザにおける,Ubuntu のプロンプトである.

> wsl -u root

# passwd eduuser
New password:
Retype new password:
passwd: password updated successfully

# exit

password updated successfully が見えていれば,変更は成功しているはず.

Windows Subsystem for Linux のコマンド リファレンス | Microsoft Docs

►Q. 古い Windows を使っているのだが,どうすればよいか?

A. 推奨PCのスペックは,Windows 11のシステム要件を満たしているはずです. PCメーカーのサポートページを見たり,メーカーに問い合わせをして,Windows 11へのアップグレードをしてください.

本学の学生であれば,本学情報統括センターの マイクロソフト包括ライセンス を利用して,Windows 11 にアップグレードすることもできます.

古いWindowsはサポート切れになっている可能性もありますので,利用し続けることは推奨できません. (参考:サポート期限

►Q. WSL1でインストールした Ubuntu がある.WSL2にアップグレードするにはどうすればよいか?

A. 以下,管理者として実行されたコマンドプロンプトで作業する.

表示例も記載している.> はプロンプトであり,その右に書かれた文字列が実行するべきコマンドである.

(1) 仮想マシンの機能を有効にする

> dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

(2) PCを再起動する

(3) 仮想マシンのアップグレード

事前に,wsl --list -v でNAME列を確認する. 2つ目のコマンドで,引数に Ubunutu と記入しているのは, 1つ目のコマンドの実行結果のNAME列にある Ubunutu と対応している.

> wsl --list -v
  NAME      STATE           VERSION
* Ubuntu    Stopped         1

> wsl --set-version Ubuntu 2
変換中です。この処理には数分かかることがあります...
WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してください
変換が完了しました。

> wsl --list -v
  NAME      STATE           VERSION
* Ubuntu    Stopped         2

3つ目のコマンドで,VERSIONの欄が 2 になっていることを確認する.

2つ目のコマンド実行時に,『Windowsの仮想マシン・・・,BIOSで仮想化が有効・・・』 のようなエラーが出ている場合は, 「(1)仮想マシンの機能を有効にする」と「(2) PC再起動」をしてから,もう一度試して欲しい.

それでもエラーが出る場合は,BIOSの設定を確認する必要があると思われる. 生協でPCを購入している人は,生協にて相談するとよい.

参考:Microsoft公式のリファレンス

►Q. 昔インストールしたUbuntuを消して,新しくインストールし直したいが,どうすればよいか?

A. 手順は以下の通り.

消したい Ubuntu の NAME を確認する.

> wsl --list -v

先ほど確認した NAME を使って,以下のコマンドを実行する.以下の例はNAME=Ubuntu-24.04の場合.

> wsl --unregister Ubuntu-24.04

改めてインストールする

> wsl --install -d Ubuntu-24.04
►Q. sudo apt update でエラーが出るのだが,どうすればよいか?

A. まずは,エラーメッセージをよく見て,問題を把握してください.

  • E: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied) のようなメッセージが見える場合
    • sudo を先頭につけるのを忘れていないか?

  • いろんなサーバにアクセスしようとして,冒頭に 0% という文字が出るものの,全く進んでいない.connection timed out という文字も見える.
    • まずは,ネットワーク接続が正しく確立されているか,確認しよう.

    • ウィルス対策ソフトのファイアウォール機能の問題の可能性がある.ファイアウォール機能を一時的に解除してみよう. https://helpcenter.trendmicro.com/ja-jp/article/tmka-17649/

►Q. apt -help の最後に書いてある,意味深な This APT has Super COW Powers って何ですか?

A. 「モー」って鳴いてみればわかるかもー?

$ apt moo

参考:イースターエッグ

►Q. 色々調べたが解決しない.TAや教員に相談したいが,迷惑だろうか?

A. 講義に関係する限りは何らかのアクションをしてくれるはず.恐れず聞いてみるとよいでしょう.

とはいえ・・・まずは,公式のドキュメントを読み,自己解決できそうか考えてみてください.

なお,Ubuntu on WSL2に関連する質問をする際は,以下の実行コマンドの情報を含めておくと,トラブルシューティングしやすいです.

  1. Windowsのバージョン ※cmdコマンドプロンプトで ver コマンドを実行

  2. WSL2のバージョン情報 ※cmdコマンドプロンプトで wsl --status コマンドを実行

  3. Ubuntu on WSL2の情報1 ※cmdコマンドプロンプトで wsl --list -v コマンドを実行

  4. Ubuntuのバージョン情報 ※Ubuntu上で,lsb_release -a コマンドを実行

参考文献