解决实例
问题:大概意思是、安装的 app版本号高于所需的版本号。
原理:将有问题的包卸载;直到没有问题为止。
- sudo apt update
- sudo apt autoremove xxx问题包
- sudo apt upgrade
首先运行了下面 3句;但可能不需要的吧 ?
sudo apt update
sudo apt clean
sudo apt autoremove
摘录:错误:The following packages have unmet dependencies
https://blog.csdn.net/qq_41566366/article/details/121244177
背景
执行安装软件包命令sudo apt-get install packagename时,提示:The following packages have unmet dependencies
The following packages have unmet dependencies,看起来是依赖项的问题,
ubuntu - How do I resolve `The following packages have unmet dependencies` - Stack Overflow
https://stackoverflow.com/questions/26571326/how-do-i-resolve-the-following-packages-have-unmet-dependencies/49041818#49041818
中第一高赞说安装aptitude即可,它管理所有依赖。
但是安装这个依赖依然会提示缺少依赖项,安装管理依赖的软件需要先安装依赖? 你搁这儿搁这儿呢
解决方案
按照ubuntu - How do I resolve `The following packages have unmet dependencies` - Stack Overflow https://stackoverflow.com/questions/26571326/how-do-i-resolve-the-following-packages-have-unmet-dependencies/49041818#49041818 第二高赞的回答
先执行
sudo apt-get update
sudo apt-get clean
sudo apt-get autoremove
如果不行再执行
sudo apt --fix-broken install /修复系统中已安装的软件包依赖关系的错误,尝试下载并安装缺失的依赖软件包,并解决其他软件包冲突问题。
sudo apt-get update && sudo apt-get upgrade //这回更新所有软件到最新版本,建议不要使用
sudo dpkg --configure -a //重新配置未成功安装的软件包。
sudo apt-get install -f //修复已安装的软件包依赖关系错误。当某些软件包在安装或卸载过程中出现问题时,可能会导致软件包依赖关系错误,此时可以执行该命令以修复依赖关系错误。需要注意的是,该命令并不会安装新的软件包,它只会修复已安装的软件包依赖关系错误。如果需要安装新的软件包,应该使用 sudo apt-get install 命令。
我的步骤
sudo apt-get update
之前已经update了,就三行信息
这里如果报错镜像的,可以考虑更换成其他镜像
清华镜像:ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
阿里镜像 :ubuntu镜像-ubuntu下载地址-ubuntu安装教程-阿里巴巴开源镜像站 (aliyun.com)
安装的时候注意根据服务器版本选择对应镜像,比如16.04版本镜像地址后面为xenial,18.04镜像后面地址为bionic
sudo apt-get clean
sudo apt-get autoremove
可以看到autoremove还是会提示缺少依赖
接着执行
sudo apt --fix-broken install
当执行 sudo apt --fix-broken install 命令时,apt 将会扫描系统中所有已安装的软件包,并尝试修复其中存在的依赖关系错误。如果它发现某个软件包依赖的其他软件包没有安装,则会尝试下载并安装这些软件包。如果它发现系统中存在软件包冲突,则会尝试解决这些冲突。
执行了好几次,都直接Abort了
我尝试了四五次,终于成功了
再次执行安装脚本,成功!
原文链接:https://blog.csdn.net/qq_41566366/article/details/121244177