升级到18.04,现在有许多破坏的软件包和未满足的依赖项

我做了一个可怕的错误并升级到18.04而没有通过以下方式在不同的分区中进行备份:

sudo apt update sudo apt upgrade sudo apt dist-upgrade sudo apt-get autoremove sudo apt install update-manager-core sudo do-release-upgrade -d 

然后我重启后更新并升级命令。 现在有很多关于未满足的依赖关系和破坏的包的问题, sudo apt-get -f install命令无法修复。 更新 sudo apt install -f错误日志输出的第一部分是:

  Reading package lists... Building dependency tree... Reading state information... Correcting dependencies... failed. The following packages have unmet dependencies: gnome-calendar : Depends: gsettings-desktop-schemas (>= 3.21.2) but 3.18.1-1ubuntu1 is installed gnome-session : Depends: gnome-shell (>= 3.25.91-0ubuntu4~) but it is not installed Depends: gnome-session-bin (>= 3.28.1-0ubuntu2) but 3.18.1.2-1ubuntu1.16.04.2 is installed Depends: gnome-session-common (= 3.28.1-0ubuntu2) but 3.18.1.2-1ubuntu1.16.04.2 is installed Depends: xwayland but it is not installed Recommends: fonts-cantarell but it is not installed Recommends: adwaita-icon-theme-full Recommends: gnome-themes-extra but it is not installed gnome-settings-daemon : Depends: libgnome-desktop-3-17 (>= 3.17.92) but it is not installed Depends: gsettings-desktop-schemas (>= 3.20) but 3.18.1-1ubuntu1 is installed hplip : Depends: python3 (< 3.6) but 3.6.5-3 is installed libc-dev-bin : Depends: libc6 (= 1.7.0) but 1.6.0-1 is installed libreoffice-avmedia-backend-gstreamer : Depends: libreoffice-core (= 1:5.1.6~rc2-0ubuntu1~xenial3) but 1:6.0.3-0ubuntu1 is installed libreoffice-base-core : Depends: libreoffice-core (= 1:5.1.6~rc2-0ubuntu1~xenial3) but 1:6.0.3-0ubuntu1 is installed libreoffice-calc : Depends: libreoffice-base-core (= 1:6.0.3-0ubuntu1) but 1:5.1.6~rc2-0ubuntu1~xenial3 is installed Depends: liborcus-0.13-0 (>= 0.13.3) but it is not installed libreoffice-core : Depends: libgpgmepp6 (>= 1.10.0) but it is not installed Depends: liborcus-0.13-0 (>= 0.13.3) but it is not installed Depends: libpoppler73 (>= 0.62.0) but it is not installed Depends: libxmlsec1 (>= 1.2.25) but it is not installed Depends: libxmlsec1-nss (>= 1.2.25) but it is not installed libreoffice-gnome : Depends: libreoffice-gtk3 but it is not installed libreoffice-gtk : Depends: libreoffice-gtk2 but it is not installed libreoffice-math : Depends: libreoffice-core (= 1:5.1.6~rc2-0ubuntu1~xenial3) but 1:6.0.3-0ubuntu1 is installed libreoffice-writer : Depends: libreoffice-base-core (= 1:6.0.3-0ubuntu1) but 1:5.1.6~rc2-0ubuntu1~xenial3 is installed Depends: libabw-0.1-1 but it is not installed Depends: libepubgen-0.1-1 (>= 0.1.0) but it is not installed libtotem0 : Depends: libgnome-desktop-3-17 (>= 3.17.92) but it is not installed libwayland-egl1-mesa : Depends: libegl1 but it is not installed libwebkitgtk-1.0-0 : Depends: libjavascriptcoregtk-1.0-0 (= 2.4.11-0ubuntu0.1) but 2.4.11-3ubuntu3 is installed Depends: libwebkitgtk-1.0-common (>= 2.4.11) but it is not installable nautilus : Depends: libgnome-desktop-3-17 (>= 3.18.1) but it is not installed python3-brlapi : Depends: python3 (< 3.6) but 3.6.5-3 is installed python3-cffi-backend : Depends: python3 (< 3.6) but 3.6.5-3 is installed python3-crypto : Depends: python3 (< 3.6) but 3.6.5-3 is installed 

 E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages. 

尝试在Synaptic中修复损坏的包会产生以下错误消息:

 E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages. 

它看起来与sources.list文件没有任何问题,并且在我尝试安装时似乎已经更新了。 我几乎不知道自己在做什么,很乐意提供有关错误消息的更多详细信息。 如果有一种方法可以在xterm中启用向上滚动,这是我现在使用的,因为无法打开Gnome终端。

我想删除所有47个破损的包并保存包,正确地重新安装它们或者暂时不安装它们,如果这是一个选项(例如,对于像LibreOffice这样的东西,这不是当前的需要),并且能够使用Gnome终端。

我正在寻找如何解决所有这些问题的初学者步骤。 有没有关于如何开始的指南? 我在搜索答案时错过了一个明显的post? 我认为这篇文章正朝着正确的方向前进,但它有点过头了。 任何帮助深表感谢。 我想知道从新的16.04安装开始是否真的更容易。

我有同样的问题。 我不得不去编辑/var/lib/dpkg/status并从抱怨的软件包中清除整个Depends:行。
我不确定可能导致的其他问题,但这是唯一让apt-get install -f再次运行的问题。

这里有几件事要尝试。

方法一:

这是最容易尝试的。 而不是使用sudo apt-get install PACKAGENAME,其中PACKAGENAME是您尝试使用apt系统安装的软件包,请使用sudo apt-get install -f。 -f参数将尝试更正已断开依赖关系的系统,之后您将能够安装有问题的程序包。

打开终端并输入:

 sudo apt-get install -f 

然后按ENTER键。

现在输入:

 sudo dpkg --configure -a 

然后按ENTER键。

现在又一次:

 sudo apt-get install -f 

方法二:

Aptitude是apt-get的替代品,您可以将其用作更高级别的包管理器。 您可以使用它来尝试使用它来安装包,而不是apt-get,但首先需要安装aptitude。

打开终端并输入:

 sudo apt-get install aptitude 

然后按ENTER键。

现在输入:

 sudo aptitude install PACKAGENAME 

然后按ENTER键。

PACKAGENAME是您正在安装的软件包。 这将尝试通过aptitude而不是apt-get来安装软件包,这应该可能修复未满足的依赖项问题。

如果这些不起作用

破损的包裹很可能被锁定,需要删除。 要删除锁定的文件,请打开终端并输入:

 sudo rm /var/lib/apt/lists/lock 

然后按ENTER键。

锁定的文件也可能需要在缓存目录中删除。 为此,请打开终端并输入:

 sudo rm /var/cache/apt/archives/lock 

我从16.04升级并且遇到了很多不同的问题。 我发现进行全新安装要容易得多。 在我看来,清新或干净的装置始终是我的选择。

希望这可以帮助,

我想通过说使用软件更新程序升级到18.04并遇到问题解决方案是打开终端并键入:

 sudo apt-get autoremove 

接着是最初导致事情出错的原因导致了这个讨论,如下所示:

 sudo apt update sudo apt upgrade sudo apt dist-upgrade sudo apt-get autoremove sudo apt install update-manager-core sudo do-release-upgrade -d 

“如果有办法在xterm中启用向上滚动”,因为无法向上滚动,您可以使用以下命令将所有输出发送到文件:

 sudo apt install -f > output.log 

然后编辑output.log并将消息复制到您的问题。 通过更多信息,您获得良好答案的机会有所改善。


在升级到18.04之前,其他任何想要将数据复制到备份分区的人都是从这个答案借来的命令: Bash脚本将Ubuntu克隆到新分区以测试18.04 LTS升级

 rsync -haxAX --stats --delete --info=progress2 --info=name0 /* "$TargetMnt" \ --exclude={/dev/*,/proc/*,/sys/*,/tmp/*,/run/*,/mnt/*,/media/*,/lost+found} 

在运行命令之前,您需要创建备份分区并进行安装。 安装后设置:

 TargetMnt=/mnt/my_backup_partition_name 

当然,更简单的方法就是运行上面链接的脚本。 它不仅提供备份分区的交互式选择,还提供validation和修改grub以便您可以根据需要引导到备份分区。

PS我很遗憾听到你的问题以及自18.04发布以来我在Ask Ubuntu中阅读的许多其他问题。 不幸的是,每个新版本都会出现类似问题。 希望有一天Conical强调在升级之前首先备份和/或测试克隆分区的重要性。 特别是在2018年7月26日发布的18.04.1的第一个点之前。

事实上,我从Xubuntu 16.04升级到18.04时遇到了太多问题。 我不得不从系统中完全删除gstreamer(不使用pulseaudio,这表现得非常奇怪),除了与此帖无关的许多其他问题(nvidia,netplan,baloo)。 在管理台式机和服务器的多年中,这是我最难的迁移。 因此,在建议稳定分配之前,我不建议升级到18.04。

如果您有无法登录的系统,请通过cltr + alt + F1键登录到您的帐户tty1登录并尝试使用sudo apt-get install -f dist-upgrade如果要求特定解决方案应用Y / n键入“。”使用其他选项。 对于其他解决方案,您将与其他解决方案一起列出以完全升级您的系统。 如果有任何问题,请告诉我