问题:
我有这两个包裹held back for weeks now
,我无法摆脱它们,
The following packages have been kept back:
odbcinst odbcinst1debian2
看这里:
[10:53:34][kristjan] ~ ~↓↓$↓↓ sudo apt upgrade --with-new-pkgs
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
odbcinst odbcinst1debian2
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
[10:53:44][kristjan] ~ ~↓↓$↓↓ sudo apt-get upgrade --with-new-pkgs
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
odbcinst odbcinst1debian2
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
[10:53:53][kristjan] ~ ~↓↓$↓↓ sudo apt dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
odbcinst odbcinst1debian2
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
[10:55:08][kristjan] ~ ~↓↓$↓↓ sudo apt install odbcinst odbcinst1debian2
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
amarok-common amarok-utils apper apper-data avogadro-data cdparanoia cdrdao clamz debconf-kde-data debconf-kde-helper dvd+rw-tools espeak-ng-data festival festival-freebsoft-utils festlex-cmu festlex-poslex festvox-kallpc16k
gnome-orca gnugo growisofs icoutils k3b-data kalzium-data kate-data kde-baseapps-data kde-runtime-data kdegames-card-data kdegames-mahjongg-data ktorrent-data ktouch-data kwrite libakonadiprotocolinternals1 libatk-adaptor
libavogadro1 libdebconf-kde1 libdiscid0 libdmtx0a libdotconf0 libespeak-ng1 libestools2.4 libgadu3 libgpgme++2v5 libgpod-common libgpod4 libgpod4-nogtk libjs-mootools libkactivities6 libkcalcore4 libkcmutils4 libkcompactdisc4
libkdeclarative5 libkdesu5 libkdnssd4 libkexiv2-11 libkexiv2-data libkidletime4 libkimap4 libkjsapi4 libkjsembed4 libkldap4 libkmime4 libkntlm4 libkonq5-templates libkpty4 libkresources4 libkrosscore4 libksane0 libkunitconversion4
liblastfm1 liblimba0 libloudmouth1-0 libmariadbd18 libmeanwhile1 libmediastreamer-base3 libmusicbrainz5cc2v5 libmygpo-qt1 libntrack-qt4-1 libntrack0 libopenbabel4v5 libortp9 libotr5 libpcaudio0 libperl4-corelibs-perl libphonon4
libpolkit-qt-1-1 libpoppler-qt4-4 libprison0 libqaccessibilityclient0 libqca2 libqca2-plugin-ossl libqca2-plugins libqimageblitz4 libqjson0 libqmobipocket1 libqrencode3 libqtassistantclient4 libqtscript4-core libqtscript4-gui
libqtscript4-network libqtscript4-sql libqtscript4-uitools libqtscript4-xml libqtwebkit4 libsgutils2-2 libsolid4 libsonic0 libspeechd2 libtag-extras1 libthreadweaver4 ntrack-module-libnl-0 oxygen-icon-theme palapeli-data phonon
phonon-backend-gstreamer phonon-backend-gstreamer-common polkit-kde-1 python-attr python-avogadro python-click python-colorama python-constantly python-incremental python-openssl python-pam python-pyasn1-modules python-qt4
python-qt4-sql python-serial python-service-identity python-sip python-twisted-bin python-twisted-core python-zope.interface python3-brlapi python3-louis python3-pyatspi python3-speechd qhull-bin qtdeclarative4-kqtquickcharts-1
sound-icons sound-theme-freedesktop speech-dispatcher speech-dispatcher-audio-plugins speech-dispatcher-espeak-ng speech-dispatcher-festival vcdimager xbrlapi
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
amarok dolphin4 jovie juk k3b k3b-i18n kaccessible kajongg kalzium katepart kcachegrind kchmviewer kde-baseapps kde-baseapps-bin kde-config-cddb kde-full kde-games-core-declarative kde-plasma-desktop kde-runtime kde-standard
kdeaccessibility kdeadmin kdeedu kdegames kdegraphics kdegraphics-mobipocket kdelibs-bin kdelibs5-plugins kdemultimedia kdenetwork kdepasswd kdepimlibs-kio-plugins kdesdk kdesdk-kio-plugins kdesdk-misc kdesudo kdeutils kdewebdev
kdoctools kfilereplace kfind kget kgoldrunner kgpg kigo kimagemapeditor kio-audiocd kio-mtp klinkstatus kmag kmousetool kmouth kmtrace kolf kommander konq-plugins konqueror konqueror-nsplugins konquest kopete kpart-webkit kpartloader
kppp kremotecontrol kreversi ksaneplugin kscd ksirk ksnakeduel kspaceduel ksudoku ktorrent ktouch kubrick kuiviewer kuser libakonadi-contact4 libakonadi-kde4 libakonadi-kmime4 libiodbc2 libk3b6 libk3b6-extracodecs libkabc4
libkatepartinterfaces4 libkcddb4 libkde3support4 libkdegames6abi1 libkdegamesprivate1abi1 libkdewebkit5 libkemoticons4 libkfile4 libkhtml5 libkio5 libkmediaplayer4 libknewstuff2-4 libknewstuff3-4 libknotifyconfig4 libkonq-common
libkonq5abi1 libkonqsidebarplugin4a libkopete4 libkparts4 libkpimidentities4 libkpimtextedit4 libkpimutils4 libkprintutils4 libkrossui4 libktexteditor4 libktorrent-l10n libktorrent5 libkxmlrpcclient4 libmailtransport4 libnepomuk4
libnepomukquery4a libnepomukutils4 libokularcore7 libplasma3 libreoffice-kde libsoprano4 libsyndication4 lskat okular palapeli plasma-scriptengine-javascript python-kde4 soprano-daemon svgpart sweeper task-kde-desktop
The following packages will be upgraded:
odbcinst odbcinst1debian2
2 upgraded, 0 newly installed, 129 to remove and 0 not upgraded.
Need to get 147 kB of archives.
After this operation, 231 MB disk space will be freed.
Do you want to continue? [Y/n]n
我试过的:
根据debian-administration.org上的一篇文章,
If the dependencies have changed on one of the packages you have installed so that a new package must be installed to perform the upgrade then that will be listed as "kept-back".
谨慎的解决方案1:
根据Pablo 的回答,您可以运行sudo apt-get --with-new-pkgs upgrade
,它会安装保留的软件包。
这样做的好处是不会将保留的软件包标记为“手动安装”,这可能会迫使更多的用户干预(见评论)。
如果 Pablo 的解决方案适合您,请点赞。如果没有,请评论出了什么问题。
谨慎的解决方案2:
谨慎的解决方案是运行sudo apt-get install <list of packages kept back>
。在大多数情况下,这将为保留的软件包提供成功升级所需的内容。
激进的解决方案:
更激进的解决方案是 run sudo apt-get dist-upgrade
,这将强制安装这些新的依赖项。
但dist-upgrade
可能非常危险。与升级不同,它可能会删除软件包以解决复杂的依赖情况。与您不同,APT 并不总是足够聪明,无法知道这些添加和删除是否会造成严重破坏。
因此,如果您发现自己处于“谨慎解决方案”不起作用的地方,dist-upgrade
可能会起作用......但是您最好了解更多有关 APT 的知识并通过安装和删除“手动”解决依赖问题根据具体情况打包。
把它想象成修理汽车......如果你有时间并且可以用扳手方便,通过阅读和自己修理你会得到一些安心。如果你觉得幸运的话,你可以把你的车交给你的表妹dist-upgrade
,希望她知道她的事情。
我也试过:
[11:06:55][kristjan] ~ ~↓↓$↓↓ sudo aptitude safe-upgrade
Resolving dependencies...
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 2 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.
问题:
如何解决这个问题并摆脱这个恼人的警告?
apt policy odbcinst odbcinst1debian2
节目
odbcinst:
Installed: 2.3.4-1
Candidate: 2.3.7
Version table:
2.3.7 500
500 https://packages.microsoft.com/debian/9/prod stretch/main amd64 Packages
*** 2.3.4-1 500
500 http://deb.debian.org/debian stable/main amd64 Packages
100 /var/lib/dpkg/status
odbcinst1debian2:
Installed: 2.3.4-1
Candidate: 2.3.7
Version table:
2.3.7 500
500 https://packages.microsoft.com/debian/9/prod stretch/main amd64 Packages
*** 2.3.4-1 500
500 http://deb.debian.org/debian stable/main amd64 Packages
100 /var/lib/dpkg/status
您已经添加了 Microsoft 存储库,其中包含更新版本的
odbcinst
软件包,以及与 KDE 冲突的那些(它们“破坏”libiodc2
,KDE 需要通过soprano-daemon
和libsoprano4
)。所以你需要选择:要么保留 KDE,要么升级到新的
odbcinst
软件包;你不能两者兼得。要摆脱“警告”,您可以将 Microsoft 存储库固定到严格低于 100 的优先级,如下所示:
并插入: