我听说在 Ubuntu 新版本发布后等待几周通常是个好主意,所以我刚刚才开始尝试安装更新。结果当我尝试在sudo do-release-upgrade
笔记本电脑上安装更新时,我得到了以下信息:
Calculating the changes
Calculating the changes
Could not determine the upgrade
An unresolvable problem occurred while calculating the upgrade.
This can be caused by:
* Upgrading to a pre-release version of Ubuntu
* Running the current pre-release version of Ubuntu
* Unofficial software packages not provided by Ubuntu
If none of this applies, then please report this bug using the
command 'ubuntu-bug ubuntu-release-upgrader-core' in a terminal.
Restoring original system state
Aborting
Reading package lists... Done
Building dependency tree
Reading state information... Done
我觉得这太奇怪了,所以我搜索了一下,有人建议我运行一下grep Broken /var/log/dist-upgrade/apt.log
看看哪里出了问题。但运行后,我发现我的问题似乎并不简单。这是我的输出:
Broken curl:amd64 Depends on libcurl4:amd64 < none | 7.58.0-2ubuntu3.1 @un uH > (= 7.58.0-2ubuntu3.1)
Broken libopencv-imgcodecs3.1:amd64 Depends on gdal-abi-2-2-1:amd64 < none @un H >
Broken librubberband2:amd64 Conflicts on librubberband2v5:amd64 < 1.8.1-6ubuntu2 @ii mK Ib >
Broken libsmbios-c2:amd64 Conflicts on libsmbios2v5:amd64 < 2.3.1-0ubuntu2 @ii mK Ib >
Broken libopencv-videoio3.1:amd64 Depends on libopencv-imgcodecs3.1:amd64 < 3.1.0+dfsg1-1~exp1ubuntu3 @ii mR > (= 3.1.0+dfsg1-1~exp1ubuntu3)
Broken libopencv-highgui3.1:amd64 Depends on libopencv-videoio3.1:amd64 < 3.1.0+dfsg1-1~exp1ubuntu3 @ii mR > (= 3.1.0+dfsg1-1~exp1ubuntu3)
Broken libubuntu-app-launch4:amd64 Depends on libcurl4:amd64 < none | 7.58.0-2ubuntu3.1 @un uH > (>= 7.16.2)
Broken gnupg1:amd64 Conflicts on gnupg1-curl:amd64 < 1.4.22-1ubuntu1 @ii mK >
Broken gir1.2-spiceclientglib-2.0:amd64 Breaks on gir1.2-spice-client-glib-2.0:amd64 < 0.33-3.3 @ii mK > (< 0.34)
Broken gir1.2-totemplparser-1.0:amd64 Conflicts on gir1.2-totem-plparser-1.0:amd64 < 3.10.8-3ubuntu1 @ii mK >
Broken libdbusmenu-qt5-2:amd64 Breaks on libdbusmenu-qt5:amd64 < 0.9.3+16.04.20160218-0ubuntu1 @ii mK >
Broken gir1.2-ggit-1.0:amd64 Conflicts on gir1.2-git2-glib-1.0:amd64 < 0.24.4-1 @ii mK >
Broken libglib2.0-dev:amd64 Depends on libpcre3-dev:amd64 < none | 2:8.39-9 @un uH > (>= 1:8.31)
Broken libcurl4-openssl-dev:amd64 Depends on libcurl4:amd64 < none | 7.58.0-2ubuntu3.1 @un uH > (= 7.58.0-2ubuntu3.1)
Broken gir1.2-spiceclientgtk-3.0:amd64 Breaks on gir1.2-spice-client-gtk-3.0:amd64 < 0.33-3.3 @ii mK Ib > (< 0.34)
Broken libharfbuzz-dev:amd64 Depends on libglib2.0-dev:amd64 < none | 2.56.1-2ubuntu1 @un uH > (>= 2.19.1)
Broken libopencv-objdetect3.1:amd64 Depends on libopencv-highgui3.1:amd64 < 3.1.0+dfsg1-1~exp1ubuntu3 @ii mR > (= 3.1.0+dfsg1-1~exp1ubuntu3)
Broken libopencv-videostab3.1:amd64 Depends on libopencv-videoio3.1:amd64 < 3.1.0+dfsg1-1~exp1ubuntu3 @ii mR >
Broken libopencv-stitching3.1:amd64 Depends on libopencv-objdetect3.1:amd64 < 3.1.0+dfsg1-1~exp1ubuntu3 @ii mR > (= 3.1.0+dfsg1-1~exp1ubuntu3)
Broken libopencv-superres3.1:amd64 Depends on libopencv-videoio3.1:amd64 < 3.1.0+dfsg1-1~exp1ubuntu3 @ii mR > (= 3.1.0+dfsg1-1~exp1ubuntu3)
Broken libopenimageio1.6:amd64 Depends on libopencv-videoio3.1:amd64 < 3.1.0+dfsg1-1~exp1ubuntu3 @ii mR >
Broken libopencv-contrib3.1:amd64 Depends on libopencv-highgui3.1:amd64 < 3.1.0+dfsg1-1~exp1ubuntu3 @ii mR > (= 3.1.0+dfsg1-1~exp1ubuntu3)
Broken libopencv-features2d3.1:amd64 Depends on libopencv-highgui3.1:amd64 < 3.1.0+dfsg1-1~exp1ubuntu3 @ii mR > (= 3.1.0+dfsg1-1~exp1ubuntu3)
Broken url-dispatcher:amd64 Depends on libubuntu-app-launch4:amd64 < 0.12+17.04.20170404.2-0ubuntu4 | 0.12+17.04.20170404.2-0ubuntu6 @ii ugR > (>= 0.10)
Broken libicu-le-hb-dev:amd64 Depends on libharfbuzz-dev:amd64 < none | 1.7.2-1ubuntu1 @un uH >
Broken url-dispatcher-tools:amd64 Depends on url-dispatcher:amd64 < 0.1+17.04.20170328-0ubuntu3 | 0.1+17.04.20170328-0ubuntu4 @ii ugR > (= 0.1+17.04.20170328-0ubuntu4)
Broken libopencv-calib3d3.1:amd64 Depends on libopencv-features2d3.1:amd64 < 3.1.0+dfsg1-1~exp1ubuntu3 @ii mR > (= 3.1.0+dfsg1-1~exp1ubuntu3)
Broken unity-greeter-session-broadcast:amd64 Depends on url-dispatcher-tools:amd64 < 0.1+17.04.20170328-0ubuntu3 | 0.1+17.04.20170328-0ubuntu4 @ii ugR >
Broken libicu-dev:amd64 Depends on libicu-le-hb-dev:amd64 < none | 1.0.3+git161113-4 @un uH >
Broken icu-devtools:amd64 Breaks on libicu-dev:amd64 < 57.1-6ubuntu0.3 | 60.2-3ubuntu3 @ii umH > (< 60.2-3ubuntu3)
Broken libicu-dev:amd64 Depends on libicu-le-hb-dev:amd64 < none | 1.0.3+git161113-4 @un uH >
Broken icu-devtools:amd64 Breaks on libicu-dev:amd64 < 57.1-6ubuntu0.3 | 60.2-3ubuntu3 @ii umH > (< 60.2-3ubuntu3)
Broken libicu-dev:amd64 Depends on libicu-le-hb-dev:amd64 < none | 1.0.3+git161113-4 @un uH >
Broken icu-devtools:amd64 Breaks on libicu-dev:amd64 < 57.1-6ubuntu0.3 | 60.2-3ubuntu3 @ii umH > (< 60.2-3ubuntu3)
Broken libicu-dev:amd64 Depends on libicu-le-hb-dev:amd64 < none | 1.0.3+git161113-4 @un uH >
Broken icu-devtools:amd64 Breaks on libicu-dev:amd64 < 57.1-6ubuntu0.3 | 60.2-3ubuntu3 @ii umH > (< 60.2-3ubuntu3)
Broken libicu-dev:amd64 Depends on libicu-le-hb-dev:amd64 < none | 1.0.3+git161113-4 @un uH >
Broken icu-devtools:amd64 Breaks on libicu-dev:amd64 < 57.1-6ubuntu0.3 | 60.2-3ubuntu3 @ii umH > (< 60.2-3ubuntu3)
Broken libicu-dev:amd64 Depends on libicu-le-hb-dev:amd64 < none | 1.0.3+git161113-4 @un uH >
Broken icu-devtools:amd64 Breaks on libicu-dev:amd64 < 57.1-6ubuntu0.3 | 60.2-3ubuntu3 @ii umH > (< 60.2-3ubuntu3)
Broken libicu-dev:amd64 Depends on libicu-le-hb-dev:amd64 < none | 1.0.3+git161113-4 @un uH >
Broken icu-devtools:amd64 Breaks on libicu-dev:amd64 < 57.1-6ubuntu0.3 | 60.2-3ubuntu3 @ii umH > (< 60.2-3ubuntu3)
Broken libicu-dev:amd64 Depends on libicu-le-hb-dev:amd64 < none | 1.0.3+git161113-4 @un uH >
有人知道这是怎么回事吗?我该如何修复?重新安装不是此时的一个选项——我喜欢我的配置!
我检查过了,没有一个类似的问题似乎与我的问题有关。
其他系统信息:
- 我目前在 17.10 (artful aardvark)
- 我想升级到 18.04 (仿生海狸)
uname -a
:Linux <REDACTED> 4.13.0-43-generic #48-Ubuntu SMP Wed May 16 12:18:48 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
- 我正在使用 Unity 桌面,因为我非常不喜欢新的 gnome 桌面
- 我有一台英特尔 i7-7500U、英特尔高清显卡 620 r02、16GB RAM 和一台 AND 独立显卡。
- 可根据要求提供更多信息。
答案1
看来我已经成功解决了自己的问题。对于那些自己遇到此问题的人,以下是我用来解决问题的一些技巧。
读取输出grep Broken /var/log/dist-upgrade/apt.log
只是第一步。接下来,我使用
grep -C5 broken_package_name /var/log/dist-upgrade/apt.log
显示损坏的软件包名称周围的一些附加输出,以获取有关出错的更多信息。结合 的apt-cache
选项rdepends
,您可以开始找出可能导致问题的原因:
apt-cache rdepends --installed broken_package_name
还要注意的是 底部的附加输出/var/log/dist-upgrade/apt.log
。对于每个Broken
包,其中一些显示已由Fixed
依赖性问题解析器解决。这些通常可以忽略 - 并首先关注其他更重要的。
不要忘记sudo do-release-upgrade
在每次更改某件事时继续运行,以便获得有关更改内容的更新读数。
一旦确定了问题软件包,就可以更新它们(如果它们来自第三方),或暂时删除它们(如果它们来自第三方 PPA)并在稍后重新安装,因为所有第三方 PPA 都作为升级过程的一部分被禁用 - 因此,如果在您要升级到的 Ubuntu 版本的 PPA 中有所述软件包的更新版本(例如在我的情况下是 bionic),则会无意中导致问题,因为它看不到该更新版本并无法安装它。请注意,除非您使用 将其删除,否则您的设置将保留以供以后使用apt purge
。
答案2
对我来说,这似乎是因为 16.04 太 Qt 了。我不得不安装自定义 libqt5core,否则 Qt 的东西就很少了。所以,当然,当你删除核心时,它会毁掉一半有用的东西。耶,ubuntu 官方 Qt 支持!
The following packages will be REMOVED:
account-plugin-aim account-plugin-facebook account-plugin-flickr
account-plugin-google account-plugin-jabber account-plugin-salut
account-plugin-twitter account-plugin-yahoo appmenu-qt5 baloo-kf5
checkbox-converged checkbox-gui checkbox-qt dolphin eric eric-api-files
gimp-gmic hud k4dirstat kactivities kapptemplate kate kde-baseapps-bin
kde-runtime kde-style-breeze kde-style-breeze-qt4 kdevelop kinit kio kmag
kompare kpackagelauncherqml kpackagetool5 kpart5-kompare krdc krfb krusader
ktexteditor-katepart kubuntu-debug-installer kvpnc kwayland-integration
libaccount-plugin-1.0-0 libaccount-plugin-generic-oauth
libaccount-plugin-google libaccounts-qt5-1 libdee-qt5-3 libdolphinvcs5
libgsettings-qt1 libhud-client2 libkf5activities5 libkf5archive5
libkf5attica5 libkf5auth5 libkf5baloo5 libkf5balooengine5
libkf5baloowidgets-bin libkf5baloowidgets5 libkf5bookmarks5
libkf5calendarevents5 libkf5codecs5 libkf5completion5 libkf5config-bin
libkf5configcore5 libkf5configgui5 libkf5configwidgets5 libkf5coreaddons5
libkf5crash5 libkf5dbusaddons-bin libkf5dbusaddons5 libkf5declarative5
libkf5dnssd5 libkf5filemetadata-bin libkf5filemetadata3
libkf5globalaccel-bin libkf5globalaccel5 libkf5globalaccelprivate5
libkf5guiaddons5 libkf5i18n5 libkf5iconthemes-bin libkf5iconthemes5
libkf5idletime5 libkf5itemmodels5 libkf5itemviews5 libkf5jobwidgets5
libkf5kcmutils5 libkf5kdelibs4support5 libkf5kdelibs4support5-bin
libkf5kiocore5 libkf5kiofilewidgets5 libkf5kiontlm5 libkf5kiowidgets5
libkf5newstuff5 libkf5notifications5 libkf5package5 libkf5parts-plugins
libkf5parts5 libkf5plasma5 libkf5plasmaquick5 libkf5quickaddons5
libkf5service-bin libkf5service5 libkf5solid5 libkf5sonnetcore5
libkf5sonnetui5 libkf5style5 libkf5texteditor5 libkf5textwidgets5
libkf5threadweaver5 libkf5wallet-bin libkf5wallet5 libkf5waylandclient5
libkf5widgetsaddons5 libkf5windowsystem5 libkf5xmlgui-bin libkf5xmlgui5
libkomparediff2-5 libkompareinterface5 libkwalletbackend5-5
libonline-accounts-client1 liboxideqt-qmlplugin liboxideqtcore0
liboxideqtquick0 libphonon4qt5-4 libpolkit-qt5-1-1 libpoppler-qt5-1 libqapt3
libqapt3-runtime libqcustomplot1.3 libqt5clucene5 libqt5core5a libqt5dbus5
libqt5designer5 libqt5feedback5 libqt5gui5 libqt5help5 libqt5location5
libqt5multimedia5 libqt5network5 libqt5opengl5 libqt5organizer5
libqt5positioning5 libqt5printsupport5 libqt5qml-graphicaleffects libqt5qml5
libqt5quick5 libqt5quicktest5 libqt5quickwidgets5 libqt5scintilla2-12v5
libqt5script5 libqt5sensors5 libqt5sql5 libqt5sql5-odbc libqt5sql5-sqlite
libqt5svg5 libqt5test5 libqt5waylandclient5 libqt5webkit5
libqt5webkit5-qmlwebkitplugin libqt5widgets5 libqt5x11extras5 libqt5xml5
libsignon-extension1 libsignon-plugins-common1 libsignon-qt5-1 libu1db-qt5-3
libubuntugestures5 libubuntutoolkit5 libunity-action-qt1 libunity-webapps0
libunityvoice1 mcp-account-manager-uoa okular plasma-framework pyotherside
python-pyqt5 python-pyqt5.qtsql python3-multibootusb python3-pyqt5
python3-pyqt5.qsci python3-pyqt5.qtsql python3-pyqt5.qtwebkit qapt-batch
qml-module-io-thp-pyotherside qml-module-org-kde-activities
qml-module-org-kde-kquickcontrols qml-module-org-kde-kquickcontrolsaddons
qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings
qml-module-qtfeedback qml-module-qtgraphicaleffects
qml-module-qtquick-controls qml-module-qtquick-dialogs
qml-module-qtquick-layouts qml-module-qtquick-localstorage
qml-module-qtquick-privatewidgets qml-module-qtquick-window2
qml-module-qtquick2 qml-module-qttest qml-module-qtwebkit
qml-module-ubuntu-components qml-module-ubuntu-layouts
qml-module-ubuntu-onlineaccounts qml-module-ubuntu-onlineaccounts-client
qml-module-ubuntu-performancemetrics qml-module-ubuntu-test
qml-module-ubuntu-ui-extras-browser qml-module-ubuntu-web qmlscene
qtdeclarative5-accounts-plugin qtdeclarative5-dev-tools
qtdeclarative5-dialogs-plugin qtdeclarative5-localstorage-plugin
qtdeclarative5-online-accounts-client0.1
qtdeclarative5-privatewidgets-plugin qtdeclarative5-qtfeedback-plugin
qtdeclarative5-qtquick2-plugin qtdeclarative5-test-plugin
qtdeclarative5-u1db1.0 qtdeclarative5-ubuntu-settings-components
qtdeclarative5-ubuntu-ui-extras-browser-plugin
qtdeclarative5-ubuntu-ui-toolkit-plugin qtdeclarative5-ubuntu-web-plugin
qtdeclarative5-unity-action-plugin qtdeclarative5-window-plugin qtwayland5
signon-keyring-extension signon-plugin-oauth2 signon-plugin-password
signon-ui signon-ui-x11 signond smb4k sonnet-plugins sqlitebrowser
ubuntu-desktop unity-control-center-signon unity-scope-gdrive
unity-tweak-tool unity-voice-service unity-webapps-common
unity-webapps-facebookmessenger unity-webapps-qml unity-webapps-service
virtualbox-qt webapp-container webbrowser-app