いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

WSL で デフォルトユーザ を変更する方法

概要

ちょっと前に

devlights.hatenablog.com

という記事を書いたのですが、ちょこちょこ聞かれる質問が「上のやり方で仮想マシン入れたけど、やっぱり一般ユーザをデフォルトのユーザにしたい」というものでした。

これ、よくあるWSLの記事のように「仮想マシンが一つだけ」の場合は、めっちゃ簡単です。

PowerShell開いて

> ubuntu config --default-user xxxx

とやればオッケイです。

ですが、複数の仮想マシンをセットアップしていて、変更したい仮想マシンがデフォルトではない場合、上記のやり方ではうまく出来ません。エラーになります。

なので、以下のようにします。

仮想マシンに入る

まず、対象の仮想マシンに入ります。rootユーザで入ったほうが楽です。

wsl -d xxxx-env -u root

/etc/wsl.conf ファイルを作る

/etc/wsl.conf というファイルを作って、以下の内容で保存。

$ cat << EOF > /etc/wsl.conf
[user]
default=user-name
EOF

また、デフォルトではWindows側のPATHが自動的に $PATH に追加されるのですが、それをオフにしたい場合は

$ cat << EOF > /etc/wsl.conf
[user]
default=user-name
[interop]
appendWindowsPath = false
EOF

としましょう。

一旦仮想マシンを落とす

$ exit

> wsl -t xxxx-env

入り直す

> wsl -d xxxx-env

これで、先程指定したユーザがデフォルトユーザとなっています。

参考情報

askubuntu.com

blog.mktia.com

qiita.com


過去の記事については、以下のページからご参照下さい。

  • いろいろ備忘録日記まとめ

devlights.github.io

サンプルコードは、以下の場所で公開しています。

  • いろいろ備忘録日記サンプルソース置き場

github.com

github.com

github.com