看来我陷入麻烦了……
在运行 update-manager 或 synaptic 时我收到此消息
"E: The package sudo needs to be reinstalled, but I can't find an archive for it."
我搜索了解决方案,找到了几个。第一个是使用命令
sudo dpkg --remove --force-remove-reinstreq sudo
它失败并显示错误消息
dpkg: error: --remove needs at least one package name argument
Type dpkg --help for help about installing and deinstalling packages [*];
Use `dselect' or `aptitude' for user-friendly package management;
Type dpkg -Dhelp for a list of dpkg debug flag values;
Type dpkg --force-help for a list of forcing options;
Type dpkg-deb --help for help about manipulating *.deb files;
Options marked [*] produce a lot of output - pipe it through `less' or `more' !
我尝试添加依赖项,但又有其他东西依赖于它们。尝试几次后,我放弃了这种方法。
另一种方法是使用
# become root
sudo -i
cd /var/lib/dpkg/info
rm -rf sudo*
dpkg --remove --force-remove-reinstreq sudo
exit
这也失败了。
这两种方法都给出了Apt/Synaptic 需要重新安装包。我还有其他方法可以恢复此错误吗?
谢谢
答案1
尝试下载sudo
包并手动安装:
# for 64bit system
wget http://security.ubuntu.com/ubuntu/pool/main/s/sudo/sudo_1.8.5p2-1ubuntu1.1_amd64.deb
# for 32bit system
wget http://security.ubuntu.com/ubuntu/pool/main/s/sudo/sudo_1.8.5p2-1ubuntu1.1_i386.deb
sudo dpkg -i sudo_*.deb
如果您无法sudo
运行最后一个命令,请尝试在恢复模式下重新启动并以 root 用户身份执行它。