#author("2023-07-15T14:00:58+00:00","default:mogamin","mogamin")
#author("2023-07-15T14:13:26+00:00","default:mogamin","mogamin")
* WSL [#u23f8978]

** systemd を使う [#l18e2ac6]

最新の WSL では systemd がサポートされているが、Windows 10 に標準で入っている WSL はバージョンが古く、アップデートが必要な場合がある。
`wsl --update` を打ち込む手もあるけれど、ストアアプリを入れると自動アップデートされるので楽かも。

バージョンを確認((古いバージョンの wsl は、--version をサポートしていないことがある。))。

 C:\>wsl --version
 WSL バージョン: 1.2.5.0
 カーネル バージョン: 5.15.90.1
 WSLg バージョン: 1.0.51
 MSRDC バージョン: 1.2.3770
 Direct3D バージョン: 1.608.2-61064218
 DXCore バージョン: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
 Windows バージョン: 10.0.19045.2965

当該のディストリを起動し、/etc/wsl.conf に設定を追記

 # /etc/wsl.conf
 
 [boot]
 systemd=true

WSL を再起動。

 C:\> wsl --shutdown

当該のディストリを起動し、systemctl を確認。

 $ systemctl | grep ssh
  ssh.service
                                                    loaded active running   OpenBSD Secure Shell server

*** thanks to [#bea337ef]

【WSL2】systemdがサポートされたようなので試してみた | しきゆらの備忘録
https://shikiyura.com/2022/11/systemd_supported_in_wsl/

** デフォルトのユーザを変更する [#g1055bc5]

デフォルトユーザを変更したいディストリビューションのシェルで

 $ cat /etc/passwd 

を打ち込み、デフォルトにしたいユーザの uid を確認する。

 # /etc/passwd
 
 mogamin:x:1001:1002:,,,:/home/mogamin:/bin/bash
 # 1001

レジストリの

 HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss\(UUID)

から当該のディストリを探す。DistributionName キーにディストリ名があるので、これで判別する。
当該ディストリの DefaultUid キーの値を上で確認した uid に変更する。

 DefaultUid (REG_DWORD): 3e9 (1001)

WSL を再起動。

 C:\> wsl --shutdown

** command snippet [#command]

*** ディストリのインポート [#s281caec]

 wsl --import (DIST_NAME) path\to\distro path\to\archive.tar --version 2

 wsl --import (DIST_NAME) path\to\distro path\to\archive.vhd --version 2 --vhd

path\to\distro 配下に .vhdx を作成する。
WSL2 環境の場合は --version を指定する必要がある。

*** ディストリのエクスポート [#b33630d4]

 wsl --export (DIST_NAME) path\to\archive.tar

"archive.tar" までを指定しないと、パーミッションエラーになる。





トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS