🔄
WSLのユーザーを変更(rename)する方法
概要
usermod → groupmod でできますが、少しコツが要ります。
やり方
起動中のwslをシャットダウンする
目的:変更したいユーザーのプロセスが残っていると変更できないので一度落とす。
# 管理者 @powershell
wsl --shutdown
ディストリビューションへのrootログイン
目的:直接rootでログインすることで、変更対象ユーザーのプロセスを起動しない。
# 管理者 @powershell
wsl -u root
必要であればオプションでディストリビューションを指定すること。
ログインユーザーの情報変更
目的:名前・グループを変えた上で、ファイルも移動させる
# root @wsl
usermod -l ${after_name} -d /home/${after_name} -m ${before_name}
groupmod -n ${after_name} ${before_name}
デフォルトユーザー変更
目的:wslへのデフォルトログインユーザーを変える
方法A コマンド実行
コマンドはディストリビューションごとに異なります。以下、Ubuntu-22.04の場合
# 管理者 @powershell
ubuntu2204 config --default-user ${after_name}
方法B ファイル編集
/etc/wsl.conf に以下を記述
[user]
default=${after_name}
→ wsl --shutdown して再起動で反映
Discussion