为什么在安装新软件之前应该更新 Linux 软件包存储库
每个有经验的 Linux 用户都建议在安装新软件包之前更新软件存储库。但为什么?
Linux 发行版最好的事情之一是它们使用包管理器从中央存储库安装软件,这是其他操作系统刚刚开始学习的概念。
但如果您不经常更新这些存储库,您的系统在安装新软件包时可能会遇到问题。原因如下。
软件包依赖于其他软件包
Linux 应用程序以及更广泛的开源程序大量使用共享代码库。由于 Linux 程序如此广泛地使用这些库,因此 Linux 发行版以与可执行程序相同的方式打包这些库是有意义的。
这种方法的缺点是程序及其库的更新时间表可能不同。开发人员可能会对程序或库进行更改,从而显着改变其行为。
使不同的更新计划变得复杂的是,每个 Linux 发行版都有自己的软件发布方法,像 Arch 这样的滚动发行版会在上游开发人员推出其版本后立即发布软件包。
如果您不更新会发生什么
如果您尚未更新软件包存储库,则在安装或运行依赖于系统上安装的过时库的新程序时可能会遇到问题。 Linux 上损坏的软件包就是过时软件包的影响之一。
不过这个问题并不是 Linux 所独有的。 “DLL hell”是 Windows 用户遇到的类似问题。
如何在 Linux 中更新软件包存储库
现在您知道在安装新程序之前需要更新软件包存储库,是时候学习如何执行此操作了。执行此操作的命令将根据您使用的发行版而有所不同。
在 Debian 或 Ubuntu 系统上,您可以使用 APT 更新存储库列表并升级已安装的软件包:
sudo apt update && sudo apt upgrade
在 Red Hat 衍生发行版上,YUM 将更新软件包存储库与安装升级软件包结合起来:
sudo yum upgrade
OpenSUSE 使用 Zypper 包管理器。要查看哪些软件包需要更新,请键入:
sudo zypper lp
要更新所有过时的软件包,请键入:
sudo zypper patch
要更新 Arch Linux 系统,请使用 Pacman:
sudo pacman -Syu
现在您的软件安装将会顺利进行
既然您知道如何在安装新软件包之前更新系统,那么在 Linux 系统上安装新程序时应该会遇到更少的问题。
Linux 发行版之间的主要区别在于包管理器。它们都有自己的优点和缺点,因此您应该选择最适合您的工作风格的一种。您应该使用 APT、YUM 还是 Zypper?或者完全是别的什么?由你决定。