如何在 Arch Linux 中降级软件包

您可能知道,Arch Linux 是一个滚动发行版和 DIY(自己动手)发行版。 因此,在经常更新它时必须小心,尤其是从 AUR 等第三方存储库安装或更新软件包。 如果您不知道自己在做什么,您可能会以损坏的系统告终。 让 Arch Linux 更稳定是你的责任。 然而,我们都会犯错。 很难一直小心翼翼。 有时,您想更新到最前沿,并且您可能会遇到损坏的软件包。 不要惊慌! 在这种情况下,您可以简单地回滚到旧的稳定包。 这个简短的教程描述了如何在 Arch Linux 及其变体(如 Antergos、Manjaro Linux)中降级软件包。

更新:

由于使用 yaourt 和非官方存储库 (archlinuxfr) 从 AUR 安装软件包有很多负面反馈和安全问题,我建议大家按照官方推荐的方式来降级软件包。 这是大多数读者在评论区和 Arch Linux sub-reddit 讨论论坛中建议的官方推荐方式。

  • 降级软件包

官方推荐的方法可能只有在 pacman 缓存没有被清理的情况下才有帮助。 如果您已经清除了缓存,您仍然可以使用以下方法进行降级。

在 Arch Linux 中,有一个实用程序叫做 “降级” 这可以帮助您将已安装的软件包降级到任何可用的旧版本。 此实用程序将检查您的本地缓存和远程服务器(Arch Linux 存储库)以查找所需软件包的旧版本。 您可以从该列表中选择任何一个旧的稳定包并安装它。

内容

  1. 在 Arch Linux 中安装降级工具
    1. 从 AUR 安装降级
    2. 从 archlinuxfr 存储库安装降级
  2. 在 Arch Linux 中降级软件包
    1. 那么,如何避免损坏包,让 Arch Linux 更稳定呢?

在 Arch Linux 中安装降级工具

此软件包在官方存储库中不可用。 您可以从 AUR 或非官方安装它 archlinuxfr 存储库。 首先,我们将了解如何从 AUR 安装它。

从 AUR 安装降级

降级包在 AUR 中可用,因此您可以使用任何 AUR 帮助程序安装它,例如 或者 .

使用

$ paru -S downgrade

使用

$ yay -S downgrade

从 archlinuxfr 存储库安装降级

提醒一句: 官方 Arch Linux 开发人员和受信任的用户不会执行任何类型的测试来验证非官方存储库的内容。 您必须决定是否信任他们的维护者,并且您对使用任何非官方存储库的任何后果承担全部责任。

要添加 archlinuxfr 存储库,请编辑 /etc/pacman.conf 文件:

$ sudo nano /etc/pacman.conf

添加以下行:

[archlinuxfr] Server = https://repo.archlinux.fr/$arch

Save 和 close 文件。

使用命令更新存储库:

$ sudo pacman -Syu

然后使用终端中的以下命令安装“降级”实用程序:

$ sudo pacman -S downgrade

在 Arch Linux 中降级软件包

“降级”命令的典型用法是:

$ sudo downgrade [PACKAGE, ...] [-- [PACMAN OPTIONS]]

假设您要降级 歌剧网络浏览器 到任何可用的旧版本。

为此,请运行:

$ sudo downgrade opera

此命令将列出本地缓存和远程镜像中所有可用版本的 Opera 包(新旧版本)。

样本输出:

Available packages:   1) opera-37.0.2178.43-1-x86_64.pkg.tar.xz (local)  2) opera-37.0.2178.43-1-x86_64.pkg.tar.xz (remote)  3) opera-37.0.2178.32-1-x86_64.pkg.tar.xz (remote)  4) opera-36.0.2130.65-2-x86_64.pkg.tar.xz (remote)  5) opera-36.0.2130.65-1-x86_64.pkg.tar.xz (remote)  6) opera-36.0.2130.46-2-x86_64.pkg.tar.xz (remote)  7) opera-36.0.2130.46-1-x86_64.pkg.tar.xz (remote)  8) opera-36.0.2130.32-2-x86_64.pkg.tar.xz (remote)  9) opera-36.0.2130.32-1-x86_64.pkg.tar.xz (remote)  10) opera-35.0.2066.92-1-x86_64.pkg.tar.xz (remote)  11) opera-35.0.2066.82-1-x86_64.pkg.tar.xz (remote)  12) opera-35.0.2066.68-1-x86_64.pkg.tar.xz (remote)  13) opera-35.0.2066.37-2-x86_64.pkg.tar.xz (remote)  14) opera-34.0.2036.50-1-x86_64.pkg.tar.xz (remote)  15) opera-34.0.2036.47-1-x86_64.pkg.tar.xz (remote)  16) opera-34.0.2036.25-1-x86_64.pkg.tar.xz (remote)  17) opera-33.0.1990.115-2-x86_64.pkg.tar.xz (remote)  18) opera-33.0.1990.115-1-x86_64.pkg.tar.xz (remote)  19) opera-33.0.1990.58-1-x86_64.pkg.tar.xz (remote)  20) opera-32.0.1948.69-1-x86_64.pkg.tar.xz (remote)  21) opera-32.0.1948.25-1-x86_64.pkg.tar.xz (remote)  22) opera-31.0.1889.174-1-x86_64.pkg.tar.xz (remote)  23) opera-31.0.1889.99-1-x86_64.pkg.tar.xz (remote)  24) opera-30.0.1835.125-1-x86_64.pkg.tar.xz (remote)  25) opera-30.0.1835.88-1-x86_64.pkg.tar.xz (remote)  26) opera-30.0.1835.59-1-x86_64.pkg.tar.xz (remote)  27) opera-30.0.1835.52-1-x86_64.pkg.tar.xz (remote)  28) opera-29.0.1795.60-1-x86_64.pkg.tar.xz (remote)  29) opera-29.0.1795.47-1-x86_64.pkg.tar.xz (remote)  30) opera-28.0.1750.51-1-x86_64.pkg.tar.xz (remote)  31) opera-28.0.1750.48-1-x86_64.pkg.tar.xz (remote)  32) opera-28.0.1750.40-1-x86_64.pkg.tar.xz (remote)  33) opera-27.0.1689.76-1-x86_64.pkg.tar.xz (remote)  34) opera-27.0.1689.69-1-x86_64.pkg.tar.xz (remote)  35) opera-27.0.1689.66-1-x86_64.pkg.tar.xz (remote)  36) opera-27.0.1689.54-2-x86_64.pkg.tar.xz (remote)  37) opera-27.0.1689.54-1-x86_64.pkg.tar.xz (remote)  38) opera-26.0.1656.60-1-x86_64.pkg.tar.xz (remote)  39) opera-26.0.1656.32-1-x86_64.pkg.tar.xz (remote)  40) opera-12.16.1860-2-x86_64.pkg.tar.xz (remote)  41) opera-12.16.1860-1-x86_64.pkg.tar.xz (remote)  select a package by number:

只需输入您选择的软件包编号,然后按 Enter 进行安装。

而已。 当前安装的软件包将降级为旧版本。

推荐阅读:

  • 如何在 Arch Linux 中将所有软件包降级到特定日期

那么,如何避免损坏包,让 Arch Linux 更稳定呢?

查看 Arch Linux 新闻论坛 在更新 Arch Linux 之前,看看是否有任何报告的问题。 在过去的几年里,我一直使用 Arch Linux 作为我的主要操作系统。 以下是我在一段时间内学到的一些简单技巧,可以避免在 Arch Linux 中安装不稳定的软件包。

  1. 避免部分升级。 这意味着永远不要运行“pacman -Sy <package-name>“ 或者 ”pacman -Sy“。此命令将在安装软件包时对您的系统进行部分升级。相反,首先使用 “pacman -Syu“更新系统然后使用”package -S <package-name>” 到安装包。
  2. 避免使用“pacman -Syu --force”命令。 --force flag 将忽略包和文件冲突,您最终可能会遇到损坏的包或损坏的系统。
  3. 不要跳过依赖检查。 这意味着不要使用“pacman -Rdd <package-name>“。这个命令将在删除包时避免依赖检查。如果你运行这个命令,另一个重要包需要的关键依赖也可能被删除。最终,它会破坏你的 Arch Linux。
  4. 定期进行总是一个好习惯 重要数据备份 和配置文件,以避免任何数据丢失。
  5. 从第三方和非官方存储库(如 AUR 或 archlinuxfr)安装软件包时要小心。 并且不要安装正在大量开发的软件包。

有关更多详细信息,请查看 Arch Linux 维护指南.

我不是 Arch Linux 专家,我仍在学习如何让它更稳定。 如果您有任何使 Arch Linux 稳定和安全的提示,请随时在下面的评论部分告诉我。 洗耳恭听。

资源:

  • 降级 GitHub 存储库

Arch LinuxAURDowngrade在 Arch LinuxEndeavourOSLinux 命令中降级一个包Linux howtoLinux 技巧Manjaro Linux包管理Pacman