WSL问题合集
WSL无法打开或者卡死
WSL无法打开或者卡死后,使用管理员权限打开终端(比如cmd),然后输入:
netsh winsock reset
最后,重启windows即可。
Sleeping for 1 second to let systemd settle nsenter: 打不开 /proc/31/ns/time: 没有那个文件或目录
WSL 普通用户登录出现问题:
Sleeping for 1 second to let systemd settle
nsenter: 打不开 /proc/31/ns/time: 没有那个文件或目录
解决方案
使用 root 用户登录,使用以下命令以 root 身份启动 wsl:
wsl --user root
登录系统后,使用下面的执行下面的脚本即可。
#!/bin/bash
self_dir=$(pwd)
echo "Uninstalling ubuntu-wsl2-systemd-script"
sudo rm -rf /usr/sbin/start-systemd-namespace
sudo rm -rf /usr/sbin/enter-systemd-namespace
sudo rm -rf /etc/sudoers.d/systemd-namespace
cd /var/tmp
if [ -f "/etc/bash.bashrc" ]; then
sudo grep -v "# Start or enter a PID namespace in WSL2
export USE_WSLG_SOCKET=false
export USE_WSLG_SOCKET=true
source /usr/sbin/start-systemd-namespace" /etc/bash.bashrc > tmpfile
sudo mv tmpfile /etc/bash.bashrc
fi
cd $self_dir
脚本来自 https://github.com/FiestaLake/ubuntu-wsl2-systemd-script/blob/master/uninstall.sh
处理完成就可以使用自己的用户登录了。
后续处理
若出现:
/etc/bash.bashrc: 行 3: /usr/sbin/start-systemd-namespace: 没有那个文件或目录
bash: /usr/sbin/start-systemd-namespace: 没有那个文件或目录
在这里插入图片描述
再次通过 root 登录,注释 /etc/bash.bashrc 的第三行即可。
WSL报错 未授予用户在此计算机上的请求登录类型。Error code: Wsl/Service/CreateInstance/CreateVm/0x80070569
可能是因为您的组策略设置。使用管理员权限打开命令提示符,然后运行以下命令:
gpupdate /force