WSL2笔记

在中文中,只需要一种选项。请重新解释以下内容:

    • Windows10 21H1以降 (Windows11含む) 試しています。

 

    • Microsoft Storeで配布していないディストリビューションを使いたい。

 

    WSLg じゃない方法で GUI アプリを使いたい。

安装 WSL

wsl --install

执行此命令将安装以下功能。

    • 仮想マシン プラットフォーム

 

    • Linux 用 Windows サブシステム

 

    • WSL用Linuxカーネル

 

    • Ubuntu Linux

 

    Microsoft Store で配布している Ubuntu は2022年3月現在、無印 16.04 18.04 20.04 の4つがありますが、自動インストールされるのは無印の Ubuntu のようで、20.04 でした。

在Microsoft Store上安装分发的发行版。

wsl --list --online
wsl --install -d Ubuntu-20.04
wsl --list --verbose

安装图形用户界面(GUI)环境

安装桌面环境

Mateを使う場合

Mateのインストール
sudo apt update && sudo apt -y upgrade
sudo apt install -y ubuntu-mate-desktop
sudo apt-get install xrdp

XFceを使う場合

XFceインストール
sudo apt update && sudo apt -y upgrade
sudo apt -y install xfce4
sudo apt-get install xrdp

在安装过程中,会询问显示管理器的设置。暂时选择gdm3。

wsl_gui_select_display_manager.png

中文输入法

sudo apt install fcitx-mozc

Xsession的配置

如果不存在$HOME/.xsession文件,则创建它。

Mateを使う場合

$HOME/.xsession
# fcitx-mozc
export XMODIFIERS=”@im=fcitx”
export QT_IM_MODULE=fcitx
export GTK_IM_MODULE=fcitx
export DefaultIMModule=fcitx
fcitx-autostart

# Mate
mate-session

XFceを使う場合

$HOME/.xsession
# fcitx-mozc
export XMODIFIERS=”@im=fcitx”
export QT_IM_MODULE=fcitx
export GTK_IM_MODULE=fcitx
export DefaultIMModule=fcitx
fcitx-autostart

# XFce
xfce4-session

配置和启动xrdp

sudo cp /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.bak
sudo sed -i 's/3389/3390/g' /etc/xrdp/xrdp.ini
sudo sed -i 's/max_bpp=32/#max_bpp=32\nmax_bpp=128/g' /etc/xrdp/xrdp.ini
sudo sed -i 's/xserverbpp=24/#xserverbpp=24\nxserverbpp=128/g' /etc/xrdp/xrdp.ini
sudo service xrdp start

打开远程桌面后,连接到 localhost:3390 可以进入图形用户界面。

常见的问题吗?

RDP でログインしたら英語版
locale を設定していないとデフォルトの英語で表示されます。dpkg-reconfigure locales コマンド等で、locale に ja_JP.UTF8 を設定後、再度 RDP でログインすると日本語表示になるはずです。

RDP でログインするとき blueman が落ちる
たぶん Bluetooth 関係の何かだと思いますが、たぶん使わないのでアンインストールしても問題なさそうです。

blueman のアンインストール
sudo apt remove blueman

安装 Microsoft Store 以外的分发渠道

我看到了一篇看起来可以在WSL Ubuntu上完成的解释,但在我的电脑上无法实现。
我认为在虚拟机或其他地方安装Ubuntu Linux并进行工作会更加稳妥。

Rocky Linux8 洛基Linux8

    • 手順

 

    Import To WSL with WSL and rinse – Documentation

在Ubuntu Linux 20.04上的操作。

sudo apt-get update
sudo apt-get install rinse -y

RockLinux用 rinse 設定ファイル作成
CentOS8 の設定ファイルをコピーして、centos ⇒ rocky に変更します。

RockyLinux用rinse設定ファイル作成
sudo bash -c \
‘sed -e “s|centos|rocky|” /etc/rinse/centos-8.packages > /etc/rinse/rocky-8.packages’

rinse の設定ファイルの中に Red Hat Enterprise Linux の設定ファイルがありましたので、RHEL の場合は、この操作は不要だと思います。

glibc-langpack-en
libmodulemd
libzstd
passwd
sudo
cracklib-dicts
openssh-clients
python3-dbus
dbus-glib
glibc-langpack-ja
# Rocky Linux 8
[rocky-8]
mirror.amd64 = http://dl.rockylinux.org/pub/rocky/8/BaseOS/x86_64/os/Packages/

パッケージインストールスクリプトの作成

CentOS8用のスクリプトをコピー
sudo cp -pR /usr/lib/rinse/centos-8 /usr/lib/rinse/rocky-8

/usr/lib/rinse/rocky-8/post-install.sh の14行目に挿入
echo ” Extracting CA certs…”
$CH /usr/bin/update-ca-trust

rinse スクリプトの修正

/usr/sbin/rinse を -extract-over-symlinks で検索し、次の行に rocky を追加します。
修正前: if ( $file =~ /(fedora|centos|redhat|mandriva)-release-/ ) {
修正後: if ( $file =~ /(fedora|centos|rocky|redhat|mandriva)-release-/ ) {

mkdir rocky_rc
sudo rinse --arch amd64 --directory ./rocky_rc --distribution rocky-8
    • VMware Ubuntu Linux 20.04 では、/etc/rinse/rocky-8.packages のパッケージリストから ima-evm-utils を外さないとエラーになりました。

 

    Windows11 WSL2 Ubuntu Linux 20.04 では filesystem-3.8-6.el8.x86_64.rpmの展開でエラーになりました。
sudo tar --numeric-owner -c -C ./rocky_rc . -f rocky8.tar

随后,通过使用scp等手段将rocky8.tar文件复制到Windows上。

在Windows上的工作

创建Rocky Linux的WSL映像存储文件夹。本次将其设置为C:\WSL\rocky8。

wsl --import Rocky8 c:\WSL\rocky8 rocky8.tar
wsl -l -v

  NAME            STATE           VERSION
* Debian          Running         2
  Ubuntu-20.04    Running         2
  Rocky8          Stopped         2
wsl -d Rocky8

[root@winpc rocky8]# cat /etc/redhat-release
Rocky Linux release 8.5 (Green Obsidian)

进口后的调整

dnf update
dnf reinstall passwd sudo cracklib-dicts -y
adduser -G wheel hoge
echo -e "[user]\ndefault=hoge" >> /etc/wsl.conf
passwd hogehoge

Debian Linux 11 – Debian Linux11

在Ubuntu Linux 20.04上的工作

mkdir debian11
sudo apt install debootstrap
sudo debootstrap --verbose --variant=minbase --arch=amd64 \
    --include=sudo,locales,vim \
    bullseye ./debian11 http://ftp.jp.debian.org/debian
CodenameVersionbullseye11buster10stretch9

基本设置

sudo mount -t proc proc ./debian11/proc
sudo mount -o bind /dev ./debian11/dev
sudo chroot ./debian11/
echo "deb http://ftp.jp.debian.org/debian bullseye main contrib non-free" > /etc/apt/sources.list
echo "deb-src http://ftp.jp.debian.org/debian bullseye main contrib non-free" >> /etc/apt/sources.list
apt-get update
apt-get install -y console-data
# 1. Select keymap from arch list -> 4. qwerty -> 16. Japanese
dpkg-reconfigure tzdata
# 6. Asia -> 79. Tokyo
dpkg-reconfigure locales
# 285. ja_JP.UTF-8 UTF-8 -> 3. ja_JP.UTF-8
useradd -G users,sudo -d /home/hoge -m -s /bin/bash hoge
echo -e "[user]\ndefault=hoge" >> /etc/wsl.conf
passwd hogehoge
sudo umount ./debian11/proc
sudo umount ./debian11/dev
sudo tar --numeric-owner -c -C ./debian11 . -f debian11.tar

将debian11.tar在Windows的wsl环境中导入。

在Windows操作系统上的工作

创建Rocky Linux的WSL镜像存储文件夹。本次设置为C:\WSL\debian11。

wsl --import Debian11 c:\WSL\debian11 debian11.tar
wsl -l -v
wsl -d Debian11
广告
将在 10 秒后关闭
bannerAds