在稳定的发行套件上,当不添加新的 APT 源时,很少会面临更改的依赖项,因此通常apt full-upgrade不需要或不应用任何额外的升级apt upgrade,除了 Linux 映像包升级。Linux 镜像包通常作为元包发布,例如linux-image-amd64,然后取决于实际版本化的包,例如linux-image-4.19.0-9-amd64。使用apt upgrade时,Linux 映像元包通常不会升级,因为它需要安装新版本的 Linux 映像包。跑步apt full-upgrade另一方面,将进行升级,此外,如果新版本定义了相关的冲突,它可能会删除旧版本的包(这通常不是 Linux 映像包的情况,就像示例一样!)。
由于可以通过 删除已安装的软件包的性质,apt full-upgrade不应以非交互方式调用它。我个人在测试新的 Raspbian 测试套件时遇到了一些情况,由于未解决的依赖关系或存储库更新冲突,整个 Web 服务器堆栈将被删除。我需要等到存储库的不一致问题得到解决,然后才能在不造成破坏的情况下进行升级。然而,在稳定的套房上,我从未遇到过这样的问题。
以供参考:
apt upgrade
将升级所有可以升级的软件包,而无需安装其他软件包或删除任何冲突的已安装软件包。基本上它将应用所有不包括更改依赖项的包升级。apt full-upgrade
apt-get dist-upgrade
如果需要安装新包或删除有冲突的已安装包,( 的正确等效项)也适用包升级。基本上它会应用所有的包升级,包括那些依赖改变的包。在稳定的发行套件上,当不添加新的 APT 源时,很少会面临更改的依赖项,因此通常
apt full-upgrade
不需要或不应用任何额外的升级apt upgrade
,除了 Linux 映像包升级。Linux 镜像包通常作为元包发布,例如linux-image-amd64,然后取决于实际版本化的包,例如linux-image-4.19.0-9-amd64。使用apt upgrade
时,Linux 映像元包通常不会升级,因为它需要安装新版本的 Linux 映像包。跑步apt full-upgrade
另一方面,将进行升级,此外,如果新版本定义了相关的冲突,它可能会删除旧版本的包(这通常不是 Linux 映像包的情况,就像示例一样!)。由于可以通过 删除已安装的软件包的性质,
apt full-upgrade
不应以非交互方式调用它。我个人在测试新的 Raspbian 测试套件时遇到了一些情况,由于未解决的依赖关系或存储库更新冲突,整个 Web 服务器堆栈将被删除。我需要等到存储库的不一致问题得到解决,然后才能在不造成破坏的情况下进行升级。然而,在稳定的套房上,我从未遇到过这样的问题。这里有一个全面的解释。
https://askubuntu.com/questions/194651/why-use-apt-get-upgrade-instead-of-apt-get-dist-upgrade
我只是在我的 Kali 机器上使用 sudo apt-get update 然后升级。它偶尔会询问我是否希望删除旧包(是),大约每月我运行 sudo apt-get autoremove 来删除旧包。
我的 Linux 机器都运行良好,我让它们保持最新状态。