在命令终端输入:

wsl

启动wsl2后发现默认用户不是一开始创建的用户:

这里登录的是root@Mjc用户,而不是我一开始创建的用户,因为我的conda环境都在里面。

deepseek分析:

原因分析

  1. 默认以 root 用户登录
    WSL 某些发行版(如 Ubuntu)在首次安装时默认以 root 用户启动,尤其是未在初始化阶段设置普通用户时。

  2. 未配置默认用户
    如果安装时跳过了用户创建步骤,或未手动修改默认用户配置,系统会始终以 root 身份登录。

  3. 启动命令强制使用 root
    若通过 wsl -u root 或类似命令启动,会直接进入 root 用户环境。

解决方法:

步骤 1:确认是否存在你的用户名xxx

在 WSL 中执行以下命令,检查是否已创建该用户:

cat /etc/passwd | grep xxx # xxx是你一开始创建的用户名

我发现返回结果存在。

步骤2.设置xxx为默认登录用户

在 WSL 中执行以下命令(需 root 权限):

echo -e "[user]\ndefault=xxx" >> /etc/wsl.conf # xxx为用户名
步骤 3:重启 WSL 使配置生效

1.​退出当前 WSL 会话

exit

2.​在 Windows PowerShell 中重启 WSL:

wsl --shutdown
wsl # 重新启动

验证是否生效:

启动 WSL 后,用户名应变为 xxx@Mjc,路径显示为 /home/xxx(而非 /mnt/c/...)。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐