文章目录
- 问题描述
- 解决方法
- 使用强制移除
问题描述
Ubuntu22.04系统,在终端中执行apt insatll安装或dpkg .deb安装时如果强制关闭终端会导致安装失败(安装包会变成iu状态或ru状态,安装成功的应该是ii状态)
此时,无论是尝试卸载/重新安装未完成的安装包,终端都会提示以下类似的错误:
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or s..
如果尝试apt --fix-broken install
后仍然无法解决问题,请继续往下看。
解决方法
使用强制移除
sudo dpkg --remove --force-remove-reinstreq package_name
例如:
sudo dpkg --remove --force-remove-reinstreq cuda-12-4
如果提示使用purge,则改为:
sudo dpkg --purge --force-remove-reinstreq cuda-12-4
如果提示Dependecy Error,则是存在依赖问题,使用sudo dpkg -l |grep packagename
列出安装包相关的依赖,例如:
sudo dpkg -l |grep cuda
需要尝试更换卸载顺序,使用强制移除指令先卸载能卸载掉的,之后你会发现先前无法卸载的包现在可以卸载掉了。
如果经过上述方法卸载掉所有能卸载的,还是有些无法卸载,此时可以先尝试apt remove
,
例如:
sudo apt remove packagename
然后再dpkg --purge --force-remove-reinstreq
或dpkg --remove --force-remove-reinstreq
就可以卸载干净了。