很傻,看了下面,我看到来自Beorat的解决方案:
为了避免sudo tty问题和其他问题,在运行do-release-upgrade之前,请运行以下命令:
sudo -S apt-mark hold sudo
sudo -S apt-mark hold procps
sudo -S apt-mark hold strace
如果您已经升级,请运行以上命令,然后手动降级到Trusty包:
sudo -S wget http://mirrors.kernel.org/ubuntu/pool/main/s/sudo/sudo_1.8.9p5-1ubuntu1.1_amd64.deb
sudo -S wget http://mirrors.kernel.org/ubuntu/pool/main/p/procps/procps_3.3.9-1ubuntu2_amd64.deb
sudo -S wget http://mirrors.kernel.org/ubuntu/pool/main/s/strace/strace_4.8-1ubuntu5_amd64.deb
sudo -S dpkg -i sudo_1.8.9p5-1ubuntu1.1_amd64.deb
sudo -S dpkg -i procps_3.3.9-1ubuntu2_amd64.deb
sudo -S dpkg -i strace_4.8-1ubuntu5_amd64.deb
更多信息在这里:https://github.com/Microsoft/BashOnWindows/issues/482
WSL使用lxrun可执行文件在Windows上进行管理:
lxrun -h
Usage:
/install - Installs the subsystem
Optional arguments:
/y - Do not prompt user to accept
/uninstall - Uninstalls the subsystem
Optional arguments:
/full - Perform a full uninstall
/y - Do not prompt user to accept
/setdefaultuser - Configures the subsystem user that bash will be launched as. If the user does not exist it will be created.
Optional arguments:
username - Supply the username
/y - If username is supplied, do not prompt to create a password
/update - Updates the subsystem's package index
鉴于此,您可以使用 lxrun /setdefaultuser root
命令。我认为有必要指出这一点,因为在尝试升级到Xenial后遇到与您相同的问题时,我需要使用该命令。我可以确认,在运行此命令后,再运行 wget / dpkg 命令,我的问题得到了解决。
我使用的命令:
wget http://mirrors.kernel.org/ubuntu/pool/main/s/sudo/sudo_1.8.9p5-1ubuntu1.4_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/main/p/procps/procps_3.3.9-1ubuntu2_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/main/s/strace/strace_4.8-1ubuntu5_amd64.deb
dpkg -i sudo_1.8.9p5-1ubuntu1.4_amd64.deb
dpkg -i procps_3.3.9-1ubuntu2_amd64.deb
dpkg -i strace_4.8-1ubuntu5_amd64.deb
最后,如果你遇到了 The following packages have unmet dependencies [xxx] but it is not going to be installed
的问题,你可能需要运行 sudo apt-get install -f
do-release-upgrade
之后遇到了这个问题。一旦我运行了lxrun /setdefaultuser root
,我就能够打开一个bash shell并运行visudo
来恢复我的用户帐户的sudo权限。之后我回到powershell,运行了lxrun /setdefaultuser <user>
,现在回到了我在do-release-upgrade
之前的设置状态。 - Jakemy_user ALL=(ALL:ALL) ALL
。 - Rahil Wazir我通过将/etc/hosts移动到/etc/hosts.bu来解决错误。关闭并重新打开shell后,/etc/hosts会重新创建并添加计算机名称。错误已经消失(对我而言)。
sudo
的下载位置已经出现404错误。 - ckittelsudo -S dpkg -i libprocps3_3.3.9-1ubuntu2_amd64.deb```
- scott_ri