Windows 11やWindows 10では[WSL(Linux用Windowsサブシステム)]を使って「Windows上でUbuntuを起動する」と言うことができます。ただ、デフォルトでは[ターミナル(端末)]しか起動できませんが、【Ubuntu Desktop】をインストールすればマウスによるGUI操作が可能になります。
デスクトップを表示するまでの道のり
WSLでデスクトップを表示するのに、当初は「デスクトップ環境をインストールする」「Xサーバーで表示する」と言う手順を試みましたが、Windows 10では可能でもWindows 11では色々とエラー等が発生し表示させることができませんでした。
このため、「デスクトップ環境をインストールする」「リモートデスクトップ接続で表示する」を試してみたところ、今度は逆にWindows 11では可能でもWindows 10では表示させることができませんでした。
どちらか一方に寄せるべきでしたが最終的に、Windows 11では「リモートデスクトップ接続で表示する」、Windows 10では「Xサーバーで表示する」となっており、Windowsのバージョンによって異なるやり方を記載しているので注意してください。
Windows 11
WSLをインストールする
- コマンドラインツール(ターミナル/PowerShell/コマンドプロンプト)より以下のコマンドを実行します。
[Linux用Windowsサブシステム][仮想マシンプラットフォーム]のインストール、[x64 マシン用 WSL2 Linux カーネル更新プログラム パッケージ]のインストール、バージョンを[WSL 2]に切り替え、Ubuntuアプリのダウンロード&インストールが行われます。
wsl --install
インストール中: Linux 用 Windows サブシステム Linux 用 Windows サブシステム はインストールされました。 インストール中: Ubuntu Ubuntu はインストールされました。 要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。
WSLをアンインストールする場合は以下を実行します。wsl --uninstall
- 再起動後、Ubuntuアプリより新しい【ユーザー名】【パスワード】を入力します。
Enter new UNIX username:(ユーザー名) New password:(パスワード) Retype new password:(パスワード)
デスクトップ環境をインストールする
- Ubuntuアプリより以下のコマンドを順に実行します。
sudo apt update
sudo apt upgrade
- Ubuntuアプリより以下のコマンドを順に実行します。
sudo apt-mark hold acpid acpi-support
sudo apt install ubuntu-desktop-minimal
- Ubuntuアプリより以下のコマンドを実行し【.xsessionrc】に追記します。
デスクトップ環境の設定ファイルです。コマンドではnanoエディタを使用していますが任意で問題ありません。
nano ~/.xsessionrc
export GNOME_SHELL_SESSION_MODE=ubuntu export XDG_CURRENT_DESKTOP=ubuntu:GNOME export XDG_DATA_DIRS=/usr/share/ubuntu:/usr/local/share:/usr/share:/var/lib/snapd/desktop export WAYLAND_DISPLAY= export XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
RDPサーバーをインストールする
RDPとは「リモートデスクトッププロトコル」の略であり、Linuxでは主にフリーかつオープンソースの【xrdp】が使われます。
- Ubuntuアプリより以下のコマンドを実行し【RDPサーバー】をインストールします。
sudo apt install xrdp
- Ubuntuアプリより以下のコマンドを実行し【xrdp.ini】を変更します。
デフォルトの[ポート番号(3389)]で接続できない場合は変更します。
sudo nano /etc/xrdp/xrdp.ini
;port=3389 port=3390
- Ubuntuアプリより以下のコマンドを実行し【RDPサーバー】を再起動します。
sudo service xrdp restart
リモートデスクトップ接続する
Windows 10
WSLをインストールする
- コントロールパネル(大きいアイコン)より【プログラムと機能】をクリックします。
- プログラムと機能より【Windowsの機能の有効化または無効化】をクリックします。
- Windowsの機能の有効化または無効化より[Linux用Windowsサブシステム]と[仮想マシンプラットフォーム]をチェックし【OK】をクリックします。
更新プログラムをインストールする
- Webブラウザより以下のURLにアクセスします。
https://aka.ms/wsl2kernel
- 「Linux カーネル更新プログラム パッケージをダウンロードする」より【x64 マシン用 WSL2 Linux カーネル更新プログラム パッケージ】をクリックしてダウンロードします。
- ダウンロードした[wsl_update_x64.msi]を実行しインストールします。
バージョンを切り替える
- コマンドラインツール(ターミナル/PowerShell/コマンドプロンプト)を起動します。
Microsoft Windows [Version 10.0.19045.4651] (c) Microsoft Corporation. All rights reserved. C:\Users\name>
- 以下のコマンドを実行します。
wsl --set-default-version 2
WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してください この操作を正しく終了しました。
Ubuntuをインストールする
- Microsoft Storeより[Ubuntu]を検索し【任意のバージョン】をインストールします。
今回は【Ubuntu】をインストールしました(Ubuntu 22.04.4 LTS)。
- Ubuntuアプリより新しい【ユーザー名】【パスワード】を入力します。
Enter new UNIX username:(ユーザー名)
New password:(パスワード) Retype new password:(パスワード)
デスクトップ環境をインストールする
- Ubuntuアプリより以下のコマンドを順に実行します。
sudo apt update
sudo apt upgrade
- Ubuntuアプリより以下のコマンドを順に実行します。
sudo apt install libgl1-mesa-dev xorg-dev xbitmaps x11-apps
sudo apt install ubuntu-desktop-minimal
Xサーバーをインストールする
- Webブラウザより以下のURLにアクセスします。
https://sourceforge.net/projects/vcxsrv/
- VcXsrv Windows X Serverより【Download】をクリックしダウンロードします。
- ダウンロードした【vcxsrv-64.1.20.14.0.installer.exe】を実行してインストールします。
特に理由が無ければデフォルトで問題ありません。
Xサーバーを起動する
XLaunchの起動時に[Display settings]と[Disable access control]の設定を変更します。それ以外は特に理由が無ければデフォルトで問題ありません。
- XLaunchの[Display settings]より任意の項目を選択し【次へ】をクリックします。
今回は【One large window】を選択しました。
- Extra settiongsより[Disable access control]のチェックを加え【次へ】をクリックします。
最後に【完了】をクリックします。 - 「Windowsセキュリティの重要な警告」が表示された場合、[プライベートネットワーク][パブリックネットワーク]の両方をチェックし【アクセスを許可する】をクリックします。
誤って選択した場合には後から変更することができます。
Ubuntu Desktopを起動する
- Ubuntuアプリより以下のコマンドを実行します。
export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0.0
sudo service x11-common start
sudo service dbus start
gnome-shell --x11 -r
- XLaunchに[Ubuntu Desktop]が表示されます。
Windows 10でのやり方は以上です。