Ubuntu出现"E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。"的正确解决姿势

如题

网上有许多方法都在教你用aptitude作为包管理工具,但是当我尝试安装aptitude的时候,发现出现了同样的错误

那没办法,找找其他的方法吧

于是我疯狂搜索,还用我的塑料英语看了好几篇StackOverflow,解决方法有手动下载deb包,更新内核,换源...

等等,换源?

本人的习惯是Linux装好之后直接手动修改/etc/apt/sources.list文件,将软件包下载源改为国内源,也没出过什么问题,但是问题在于,不同Ubuntu版本使用的软件源是不一样的!

那么问题就出现了,装的是20.04.4focal版,硬要去用16.04xenial版的软件源,不出问题才怪

正确的更换apt源的步骤如下:

1,查看版本号和代号

lsb_release -a

 

 codename就是你的Ubuntu版本的代号

2,备份

养成改系统文件要备份的好习惯

sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak

3,修改sources.list

sudo nano /etc/apt/sources.list

将以下代码粘贴到文件中

deb http://mirrors.aliyun.com/ubuntu/ $Codename main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ $Codename-security main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ $Codename-updates main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ $Codename-proposed main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ $Codename-backports main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ $Codename main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ $Codename-security main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ $Codename-updates main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ $Codename-proposed main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ $Codename-backports main restricted universe

然后将$Codename替换为你刚才查到的版本代号

 

 快捷键下面有写

另,本人是vim重度受害者,搞不懂为什么好多Linux教程都在让人用反人类的vim或者vi,明明有nano这样的更适合占电脑用户人群大多数的前Windows使用者的习惯的编辑器

4,更新apt缓存

sudo apt update

 

posted @ 2022-04-08 14:00  Isakovsky  阅读(4303)  评论(1编辑  收藏  举报