我尝试将我的 dist 从 Ubuntu 19.04 升级到 19.10。原来,我有一些软件包要升级:
libgl1-mesa-dri/bionic-security 19.2.8-0ubuntu0~18.04.2 amd64 [upgradable from: 19.0.8-0ubuntu0~19.04.1]
libgl1-mesa-dri/bionic-security 19.2.8-0ubuntu0~18.04.2 i386 [upgradable from: 19.0.8-0ubuntu0~19.04.1]
dist-upgrade
没有升级它们,所以我尝试手动进行,这发生了:
The following packages have unmet dependencies:
libgl1-mesa-dri : Depends: libsensors4 (>= 1:3.0.0) but it is not installable
E: Unable to correct problems, you have held broken packages.
试图手动安装它,但它抛出了这个:
marek@marek-GA-990XA-UD3:~$ sudo apt install libsensors4
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package libsensors4 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
libsensors4:i386 libsensors-config
E: Package 'libsensors4' has no installation candidate
更新信息:
grep "bionic" /etc/apt/sources.list /etc/apt/sources.list.d/*
/etc/apt/sources.list:# deb-src [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable
/etc/apt/sources.list:deb http://security.ubuntu.com/ubuntu bionic-security main
/etc/apt/sources.list.d/elastic-6.x.list:# deb https://artifacts.elastic.co/packages/6.x/apt stable main # wyłączony podczas aktualizacji do bionic
/etc/apt/sources.list.d/elastic-6.x.list.distUpgrade:# deb https://artifacts.elastic.co/packages/6.x/apt stable main # wyłączony podczas aktualizacji do bionic
/etc/apt/sources.list.d/elastic-6.x.list.save:# deb https://artifacts.elastic.co/packages/6.x/apt stable main # wyłączony podczas aktualizacji do bionic
/etc/apt/sources.list.d/heroku.list:# deb https://cli-assets.heroku.com/apt ./ # wyłączony podczas aktualizacji do bionic
/etc/apt/sources.list.d/heroku.list.distUpgrade:# deb https://cli-assets.heroku.com/apt ./ # wyłączony podczas aktualizacji do bionic
/etc/apt/sources.list.d/heroku.list.save:# deb https://cli-assets.heroku.com/apt ./ # wyłączony podczas aktualizacji do bionic
/etc/apt/sources.list.d/pgdg.list:# deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main # wyłączony podczas aktualizacji do cosmic
/etc/apt/sources.list.d/pgdg.list.distUpgrade:# deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main # wyłączony podczas aktualizacji do cosmic
/etc/apt/sources.list.d/pgdg.list.save:# deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main # wyłączony podczas aktualizacji do cosmic
另外,我找到了这个答案: Cannot upgrade 19.04 to 19.10 because of hold back packages: libsnmp30 并添加了这个 ppa 存储库:
sudo add-apt-repository ppa:oibaf/graphics-drivers
它有点工作,即我能够升级所有软件包等。所以我现在的问题是:我应该在尝试实际升级我的系统之前清理这个烂摊子吗?
如果您查看任一软件包的升级通知,您会发现这些软件包是由 Bionic Beaver (18.04) 的存储库提供的。但是由于您使用的是 Disco Dingo (19.04),因此保留其他版本的存储库可能会损害您的系统,并且有时会严重破坏操作系统。在这种特殊情况下,Bionic 仍然具有 libsensors4,但 Disco 和 Eoan Ermine (19.10) 具有 libsensors5,这显然会导致依赖性问题。您需要删除其他版本的存储库以避免依赖性问题并升级到较新的版本。为此,首先确定哪个文件具有这些条目。为此,您可以使用
grep
.并在这些行前面放置一个 pound(
#
) 以通过使用 nano 或 vi 编辑文件来注释/禁用这些行,无论您喜欢哪种编辑器。