Linux MintをWindows11(WSL2)上で動かしてみる (2025年版)

Mint
スポンサーリンク

前回まではWindows Subsystem for Linux 2 (WSL2)を使ってUbuntu 24.04LTSを動かす方法を紹介してきました。

今回は番外編としてLinux MintをWSL2で使ってみたいと思います。

ちなみに、2022年頃にLinux MintをWSL2で試したときの記事は下記になります。

Linux MintをWindows11(WSL2)上で動かしてみる
今回はWindows Subsystem for Linux (WSL2)に人気ディストリビューションのLinux Mintを導入してみます。WSL用のLinux Mintはインストーラが用意されているため、比較的簡単に導入することができます。一度導入してしまえば、Ubuntuと同じように設定できるので、使いやすいのではないかと思います。
スポンサーリンク

Linux Mintとは

Linux MintはUbuntuをベースとしたLinuxディストリビューションです。

Home - Linux Mint
Linux Mint is an elegant, easy to use, up to date and comfortable desktop operating system.
Linux Mint - Wikipedia

基本部分はUbuntuと同一ですが、デスクトップ環境が使いやすく(Windowsに近いといった方が良いかも)、一時期は本家のUbuntuよりも人気があるとも言われていました。

となると、Linux MintをWSL2で使いたいところですが、この記事の作成時点ではWSL2に導入可能なディストリビューションになっていません。

> wsl --list --online
インストールできる有効なディストリビューションの一覧を次に示します。
'wsl.exe --install <Distro>' を使用してインストールします。

NAME                            FRIENDLY NAME
Ubuntu                          Ubuntu
Debian                          Debian GNU/Linux
kali-linux                      Kali Linux Rolling
Ubuntu-18.04                    Ubuntu 18.04 LTS
Ubuntu-20.04                    Ubuntu 20.04 LTS
Ubuntu-22.04                    Ubuntu 22.04 LTS
Ubuntu-24.04                    Ubuntu 24.04 LTS
OracleLinux_7_9                 Oracle Linux 7.9
OracleLinux_8_7                 Oracle Linux 8.7
OracleLinux_9_1                 Oracle Linux 9.1
openSUSE-Leap-15.6              openSUSE Leap 15.6
SUSE-Linux-Enterprise-15-SP5    SUSE Linux Enterprise 15 SP5
SUSE-Linux-Enterprise-15-SP6    SUSE Linux Enterprise 15 SP6
openSUSE-Tumbleweed             openSUSE Tumbleweed
スポンサーリンク

準備

この記事ではWindows 11を利用していることを前提としています。

Windows 10でもWSL2が利用可能ですが、利用するためのステップが多かったりします。Windows 10のサポート期間も終わるので、Windows 11にアップグレードしておきましょう。

また、すでにWindows 11となっている場合にも、Windows Updateで最新の状態にしておきましょう。

Linux Mintの導入

それではLinux MintをWSL2に導入します。

実はLinux MintをWSLに対応させているプロジェクト(LinuxmintWSL)があるので、その成果を使わせてもらいます。

GitHub - sileshn/LinuxmintWSL2: Linux mint on wsl2 using wsldl
Linux mint on wsl2 using wsldl. Contribute to sileshn/LinuxmintWSL2 development by creating an account on GitHub.

まず下記のWebサイトにアクセスしてLinuxmintWSL.zipをダウンロードします。

Release LinuxmintWSL2-20250201 · sileshn/LinuxmintWSL2
Full Changelog: 2024120...2025020

私が試したときには「LinuxmintWSL-20250101」というバージョンでした。

ダウンロードするのは「LinuxmintWSL.zip」というファイルです。このファイルを展開すると「Mint.exe」と「root.tar.gz」が得られるはずです。

この「Mint.exe」と「root.tar.gz」を好きなフォルダーに移動します。重要なのは同じフォルダーにMint.exeとroot.tar.gzを入れることです。

また、この「Mint.exe」と「root.tar.gz」を格納してあるフォルダーにWSL2の仮想ディスクが展開されるので、デスクトップやダウンロードフォルダーなど一時的なデータ置き場は利用しないほうがよいでしょう。

私の場合はWSL2のデフォルトに合わせるため「%LOCALAPPDATA%\Packages\LinuxmintWSL\LocalState」以下に格納することにしました。

「%LOCALAPPDATA%\Packages」までは存在していますが、それ以降は存在していないと思うのでフォルダーを作成する必要があります。

ちなみにWSL2でUbuntuをインストールしている場合はこのフォルダーの「CanonicalGroupLimited.Ubuntu」で始まる名前のフォルダーにデータが格納されています。

次に「Mint.exe」を実行(ダブルクリック)しましょう。

次のようなメッセージが表示されたら「詳細情報」を選択します。

WindowsによってPCが保護されました

これで「実行」というボタンが現れるので、これを選択します。

実行ボタンを選択

あとは10秒ほど待って「Installation complete」と表示されればOKです。

インストール完了

このウィンドウでエンターキーを押すと自動的にウィンドウはクローズします。

これでMint.exeを格納したフォルダーにWSL2用の仮想ディスクであるext4.vhdxが作成されます。

作成された仮想ディスク

またwslコマンドを使ってみると、Mintが登録されていることがわかります。

> wsl -l
Linux 用 Windows サブシステム ディストリビューション:
Ubuntu (既定)
Debian
Mint

WSLに登録される名前は「Mint.exe」のファイル名から決まりますので、このファイル名を変えることで登録名も変更できます。

たとえば、登録名をLinuxMintとしたかったら、Mint.exeをLinuxMint.exeに改名してから、インストールを実行します。

ここまで来たら「Mint.exe」と「rootfs.tar.gz」は削除してもOKです。

Linux Mintの実行

インストールに成功したらLinux Mintを起動してみます。

無用なトラブルを避けるため、他のディストリビューションは停止しておくことをオススメします。

wsl --shutdown

他のWSL2用のLinuxディストリビューションと同様にwslコマンドで実行可能です。

wsl -D Mint

初回起動時は次のような表示になり、新しいユーザを作成するかどうかを聞いてきます。

初回起動

ユーザを作成するために「1」を入力します。するとユーザ名を要求するので入力します。

初期ユーザの作成

次にパスワードを設定します。

パスワードを設定

確認のため、もう一度パスワードを入力すると、次のようなメッセージが表示されます。

自動再起動

数秒ほど待つとWSL2が再起動して、作成したユーザでログインした状態でLinux Mintが立ち上がります。

作成したユーザでログインした状態

バージョンを確認するとUbuntu 24.04.01 LTSと表示されます。

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=24.04
DISTRIB_CODENAME=noble
DISTRIB_DESCRIPTION="Ubuntu 24.04.1 LTS"

Linux Mintのアップデート

パッケージの状態を最新にする前に、どこからデータをとってくるかを確認しておきます。

$ cat /etc/apt/sources.list.d/official-package-repositories.list
deb http://packages.linuxmint.com xia main upstream import backport

deb http://archive.ubuntu.com/ubuntu noble main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu noble-backports main restricted universe multiverse

deb http://security.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse
$ cat /etc/apt/sources.list.d/official-source-repositories.list
deb-src http://packages.linuxmint.com xia main upstream import backport

deb-src http://archive.ubuntu.com/ubuntu noble main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu noble-updates main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu noble-backports main restricted universe multiverse

deb-src http://security.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse

初期設定では「packages.linuxmint.com」「archive.ubuntu.com」「security.ubuntu.com」「archive.canonical.com」から取得することになっています。

データ通信を早くするために「packages.linuxmint.com」と「archive.ubuntu.com」を国内のミラーサーバに差し替えておきましょう。

sudo sed -i -e 's/http:\/\/archive.ubuntu.com/https:\/\/ftp.udx.icscoe.jp\/Linux\/ubuntu/g' /etc/apt/sources.list.d/official-package-repositories.list
sudo sed -i -e 's/http:\/\/archive.ubuntu.com/https:\/\/ftp.udx.icscoe.jp\/Linux\/ubuntu/g' /etc/apt/sources.list.d/official-package-repositories.list
sudo sed -i -e 's/http:\/\/packages.linuxmint.com/https:\/\/ftp.udx.icscoe.jp\/Linux\/linuxmint\/packages/g' /etc/apt/sources.list.d/official-package-repositories.list
sudo sed -i -e 's/http:\/\/packages.linuxmint.com/https:\/\/ftp.udx.icscoe.jp\/Linux\/linuxmint\/packages/g' /etc/apt/sources.list.d/official-source-repositories.list

あとはパッケージ一覧のデータベースを更新します。

$ sudo apt update
Ign:1 https://ftp.udx.icscoe.jp/Linux/linuxmint/packages xia InRelease
Get:2 https://ftp.udx.icscoe.jp/Linux/ubuntu/ubuntu noble InRelease [256 kB]
(中略)
Get:40 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [15.5 kB]
Fetched 30.1 MB in 3s (9745 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
103 packages can be upgraded. Run 'apt list --upgradable' to see them.

エラーがないことを確認して更新されたパッケージをアップデートします。

$ sudo apt upgrade
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
The following upgrades have been deferred due to phasing:
  libegl-mesa0 libegl1-mesa-dev libgbm1 libgl1-mesa-dri libglapi-mesa libglx-mesa0 mesa-vulkan-drivers
The following packages will be upgraded:
  alsa-ucm-conf aptkit bind9-dnsutils bind9-host bind9-libs bsdextrautils bsdutils debuginfod dnsutils gir1.2-xapp-1.0
  git git-man kmod libattr1 libblkid-dev libblkid1 libbsd0 libcap2 libcap2-bin libdebuginfod-common libdebuginfod1t64
  libdrm-amdgpu1 libdrm-common libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libdw1t64 libelf1t64 libfdisk1
  libgmp10 libgpg-error0 libidn2-0 libisl23 libjavascriptcoregtk-4.1-0 libkmod2 libmd0 libmount-dev libmount1 libmpc3
  libmpfr6 libnghttp2-14 libnl-3-200 libnl-genl-3-200 libnss-systemd libpam-cap libpam-systemd libpcre2-16-0
  libpcre2-32-0 libpcre2-8-0 libpcre2-dev libpcre2-posix3 libperl5.38t64 libpolkit-agent-1-0 libpolkit-gobject-1-0
  libpulse0 libpython3.12-minimal libpython3.12-stdlib libpython3.12t64 libpython3.12t64-dbg libselinux1
  libselinux1-dev libsmartcols1 libsqlite3-0 libsystemd-shared libsystemd0 libudev1 libunistring5 libuuid1
  libwebkit2gtk-4.1-0 libxapp-dev libxapp1 libxml2 libxml2-dev libxml2-doc linux-libc-dev mint-dev-tools mount perl
  perl-base perl-modules-5.38 policykit-1-doc polkitd python3.12 python3.12-dbg python3.12-minimal sublime-text
  systemd systemd-dev systemd-resolved systemd-sysv systemd-timesyncd tzdata util-linux uuid-dev xapps-common
96 upgraded, 0 newly installed, 0 to remove and 7 not upgraded.
Need to get 167 MB of archives.
After this operation, 1779 kB of additional disk space will be used.
Do you want to continue? [Y/n]

96個のパッケージに更新があるようです。問題がなければ「Y」を入力します。

更新が完了したら不要なファイルは削除しておきます。

sudo apt clean

ロケール

デフォルトでは英語ロケールしかサポートしていなくていろいろ困りそうです。

日本語のロケール(ja_JP.UTF-8)用のデータも生成するように設定します。

sudo dpkg-reconfigure locales

下記のような画面になったらカーソルキーで「ja_JP.UTF-8 UTF-8」を探し、スペースキーで「*」マークをつけます。

ロケールの選択

「*」マークをつけたらTABキーで「OK」を選択したらリターンキーを押します。

次にデフォルトのロケールを聞かれますが「None」のままとしておきます。

デフォルトのロケールの選択

あとはリターンキーを押せばロケールの選択画面が終了し、日本語のロケールデータが生成されます。

これでLANG環境変数を「ja_JP.UTF-8」にすればコマンド等の出力結果が日本語になります。

export LANG=ja_JP.UTF-8

たとえば、dateコマンドの場合は下記のように曜日が日本語で表示されるようになります。

$ date
2025年  2月  1日 土曜日 01:18:31 JST

問題がなければホームディレクトリの「.bashrc」に言語の設定を追加しておきましょう。

echo export LANG=ja_JP.UTF-8 >> ~/.bashrc

ついでに日本語関係のパッケージを入れておきます。

sudo apt-get install language-pack-ja-base language-pack-ja language-pack-gnome-ja-base language-pack-gnome-ja manpages-ja manpages-ja-dev

最小化を解除する

いろいろ試していて気づいたのですが、LinuxmintWSLで導入されるLinux Mintは、サーバ用あるいはコンテナー用のためか、一部コマンドが削除されているようです。

たとえばmanコマンドが使えません。

$ man man
This system has been minimized by removing packages and content that are
not required on a system that users do not log into.

To restore this content, including manpages, you can run the 'unminimize'
command. You will still need to ensure the 'man-db' package is installed.

このメッセージに書かれているように「unminimize」コマンドで復活させましょう。

$ sudo apt install unminimize
$ sudo unminimize
This system has been minimized by removing packages and content that are
not required on a system that users do not log into.

This script restores content and packages that are found on a default
Ubuntu server system in order to make this system more suitable for
interactive use.

Reinstallation of packages may fail due to changes to the system
configuration, the presence of third-party packages, or for other
reasons.

This operation may take some time.

Would you like to continue? [y/N]

ここで「y」を入力すると自動的にパッケージの導入が始まります。

unminimizeで導入(復活)されるパッケージはかなり多く時間がかかります。

プリンター・スキャナー関係など、余計なパッケージもかなり入るので、パッケージに詳しい方は削除しておいても良いでしょう。

Linux Mint化する

ここまでLinux Mintをインストールしてきたのですが、実はここまで入れた段階ではほぼほぼUbuntu 24.04.01 LTSです。

Linux Mint由来と思われるパッケージもほとんど入っていません。

$ dpkg -l | grep "Linux Mint"
ii  linuxmint-keyring                    2022.06.21                               all          GnuPG key of the Linux Mint repository
ii  mint-dev-tools                       1.4.8                                    all          A collection of tools to develop/compile Linux Mint projects
ii  mint-mirrors                         1.2.7                                    all          Linux Mint Repository mirrors

そこでmint-meta-coreというパッケージを使ってLinux Mint関連のパッケージを一気にインストールしてしまいましょう。

sudo apt install mint-meta-core

これで100個以上のパッケージがインストールされます。

インストール後に情報を表示させてみると「Linux Mint 22.1」となっていることがわかります。

$ cat /etc/linuxmint/info
RELEASE=22.1
CODENAME=xia
EDITION="Xfce"
DESCRIPTION="Linux Mint 22.1 Xia"
DESKTOP=Gnome
TOOLKIT=GTK
NEW_FEATURES_URL=https://www.linuxmint.com/rel_xia_whatsnew.php
RELEASE_NOTES_URL=https://www.linuxmint.com/rel_xia.php
USER_GUIDE_URL=https://www.linuxmint.com/documentation.php
GRUB_TITLE=Linux Mint 22.1 Xfce

Cinnamonデスクトップを使う

Linux Mintには「Cinnamon」「MATE」「Xfce」という3つのデスクトップ環境が用意されています。

一般に、デザイン重視なら「Cinnamon」、軽快さ重視なら「Xfce」、中間なら「MATE」となります。

今回は「Cinnamon」を使ってみます。

Linux Mint (WSL2)側の設定

まずは必要なパッケージを入れておきます。

sudo apt-get install mint-meta-core mint-meta-cinnamon

MATEを使いたい場合は「mint-meta-cinnamon」に変えて「mint-meta-mate」を、Xfceを使いたい場合は「mint-meta-xfce」を指定してみてください。

WSL2はWSLgという仕組みでLinuxのGUIアプリを実行できますが、残念ながらWSLgはデスクトップ環境を扱えません。

ここではWindowsからリモートデスクトップで接続し、リモートデスクトップでCinnamonデスクトップ環境を動かしてみましょう。

リモートデスクトップの接続を受け付けるためのxrdpパッケージを導入します。

sudo apt-get install xrdp

続いてxrdpの受信ポートを3390に変更します。

sudo sed -i -e 's/^port=3389/port=3390/g' /etc/xrdp/xrdp.ini

ここまで完了したらxrdpを起動しておきます。

sudo systemctl restart xrdp

ついでにLinxu Mint側でWindowsのフォントを参照できるようにしておきます。

sudo ln -s /mnt/c/Windows/Fonts/ /usr/share/fonts/windows
sudo fc-cache -fv

またCinnamonが日本語で動作するように「.xessionrc」というファイルで環境変数を設定しておきます。

echo "export LANG=ja_JP.UTF-8" > ~/.xsessionrc

Windows側の設定

Windowsのメニューから「リモートデスクトップ接続」を探して実行します。

次のようなウィンドウが出るので「オプションの表示」を選択しましょう。

リモートデクトップ接続

これでリモートデスクトップのオプションが設定できるので「画面」タブを選択します。

「画面の設定」のエリアでリモートデスクトップの画面サイズ(=WSL2のデスクトップ画面のサイズ)を設定できます。

リモートデクトップ画面サイズの設定

Windows画面全体をリモートデスクトップで覆われたくないときはここで画面サイズより小さい解像度を設定しておきます。

次に「全般」を選び「コンピューター」に「localhost:3390」と入力して「接続」を選択します。

接続先の設定

すると次のような警告が出るので、チェックボックスを選択してから「はい」を選択します。

リモートデクトップ接続の警告

これでリモートデスクトップ(xrdp)のログイン画面が表示されるはずです。

「Session」で「Xorg」になっていることを確認して、Linux Mit(WSL2)のユーザ名とパスワードでログインします。

リモートデクトップにログイン

これでCinnamonのデスクトップが表示されればOKです。

Cinnamonのデスクトップ画面

その他の設定

あとはUbuntuとほとんど同じです。WSL2を使うのに便利な設定をしておきます。

Ubuntu 24.04 LTSをWindows 11上で動かす その3 Windows Terminalの設定
今回はWindows Subsystem for LinuxのターミナルとしてWindows Terminalを導入します。MicrosoftがWSL用に推奨しているターミナルアプリケーションだけあって、導入も簡単です。UTF-8に対応しているので日本語の表示なども全く問題ないのもうれしいところです。何を使ったら良いのかわからない場合は、まずはWindows Terminalを試すと良いでしょう。
Ubuntu 24.04 LTSをWindows 11上で動かす その4 ターミナルを多重化する
今回はWindows Subsystem for Linux (WSL2)の使い勝手を向上すべく、byobuとtmuxを導入してターミナルを多重化してみます。Windows Terminalで起動しているシェルでbyobuを有効にして見たところ、全く問題なく使用することができました。Windows Terminalにもタブやペイン機能がありますが、byobuはそれとはまた違った便利さを提供してくれると思います。
Ubuntu 24.04 LTSをWindows 11上で動かす その5 SSHで接続する
今回はWindows Subsystem for Linux 2上のUbuntuにSSHサーバを導入して、SSHで接続できるようにします。WindowsからWSL2へはlocalhostを指定するとフォワーディングされるのでIPアドレスを気にせずにSSH接続できます。これで使い慣れたターミナルソフトPuTTYを使ってWSL2を操作できるようになります。ただ、手動でSSHサーバを起動しておく必要があるのが面倒な点です。
Ubuntu 24.04 LTSをWindows 11上で動かす その11 wsl.confによる設定
今回はWSL2の設定ファイルであるwsl.confを使った設定を紹介します。wsl.confには色々設定項目がありますがデフォルトのままでもほとんど問題なく使用できます。ただ、ホスト名は変更しておいたほうがわかりやすい気がします。
Ubuntu 24.04 LTSをWindows 11上で動かす その12 外部から接続する
今回はWindows Subsystem for Linux (WSL2)で導入したUbuntuに、外部のPCから接続する方法を紹介します。WSL1の頃は簡単にできたのですが、WSL2になってからネットワークの構成が変更になっているため、少々設定が複雑になっています。
Ubuntu 24.04 LTSをWindows11上で動かす その13 自動起動する
今回はWSL2で導入したUbuntuをWindowsの起動に合わせて自動実行する設定を紹介します。WSL2のLinuxを自動的に立ち上がるようにしておくと、SSHやリモートデスクトップでいつでも接続することができ、あたかもLinuxサーバーが起動しているように使うことができます。

まとめ

今回はWindows Subsystem for Linux (WSL2)に人気ディストリビューションのLinux Mintを導入してみました。

WSL用のLinux Mintはインストーラーが用意されているため、比較的簡単に導入できます。

一度導入してしまえば、Ubuntuと同じように設定できるので、使いやすいのではないかと思います。

コメント

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