我知道说它对我来说似乎没有帮助,但希望通过浏览我所做的,并将其与您的安装进行比较,我们可以发现可能会给您带来问题的差异.
在WSL2上新安装的Ubuntu 20.04(发行名为"Ubuntu")上:
sudo apt update && sudo apt upgrade -y
# Since you mention that you have set your user to be root:
sudo sh -c 'echo "[user]\ndefault=root" > /etc/wsl.conf'
wsl.exe -l -v
# Confirm your distribution name for the following command:
wsl.exe --terminate Ubuntu
重新启动WSL,用户现在是root:
# Use n version manager -- Just my personal preference:
curl -L https://raw.githubusercontent.com/tj/n/master/bin/n -o n
bash n 16.13.2
npm install -g npm@8.15.0
npm install -g npkill
npx npkill
它按预期工作.
如果您想在一个"干净"的发行版上测试它(不干扰您现有的发行版,您可以进行比较),您可以执行以下操作.首先,在管理PowerShell中:
Get-ChildItem -Recurse 'C:\Program Files\WindowsApps\*' |
Where-Object {$_.Name -eq 'install.tar.gz' } |
% { $_.FullName }
将分发路径复制到剪贴板以备将来使用.它应该是这样的:
C:\Program Files\WindowsApps\CanonicalGroupLimited.UbuntuonWindows_2004.2022.1.0_x64__79rhkp1fndgsc\install.tar.gz
回到"普通用户"PowerShell会话:
# Adjust paths/names as desired
mkdir $env:userprofile/WSL/instances/TestUbuntu
wsl --import TestUbuntu $env:userprofile/WSL/instances/TestUbuntu "<path_copied_above_in_quotes>" --version 2
wsl ~ -d TestUbuntu