正如你了解的, Arch Linux 是一个滚动版本和 DIY(自己动手)发行版. 因此, 在经常更新时必须小心, 特别是从 AUR 等第三方存储库安装或更新软件包. 如果你不知道自己在做什么, 那么最终很可能会破坏系统. 你有责任使 Arch Linux 更加稳定. 但是, 我们都会犯错误, 要时刻小心是很难的. 有时候, 你想更新到最新的版本, 但你可能会被破损的包卡住. 不要惊慌! 在这种情况下, 你可以简单地回滚到旧的稳定包. 这个简短的教程描述了如何在 Arch Linux 中以及它的变体, 如 Antergos,Manjaro Linux 中降级一个包,
在 Arch Linux 中降级一个包
在 Arch Linux 中, 有一个名为 "downgrade" 的实用程序, 可帮助你将安装的软件包降级为任何可用的旧版本. 此实用程序将检查你的本地缓存和远程服务器 (Arch Linux 仓库) 以查找所需软件包的旧版本. 你可以从该列表中选择任何一个旧的稳定的软件包并进行安装.
该软件包在官方仓库中不可用, 你需要添加非官方的 archlinuxfr 仓库.
为此, 请编辑 /etc/pacman.conf 文件:
$ sudo nano /etc/pacman.conf
添加以下行:
- [archlinuxfr]
- SigLevel = Never
- Server = http://repo.archlinux.fr/$arch
保存并关闭文件.
使用以下命令来更新仓库:
$ sudo pacman -Sy
然后在终端中使用以下命令安装 "Downgrade" 实用程序:
$ sudo pacman -S downgrade
示例输出:
resolving dependencies...
looking for conflicting packages...
- Packages (1) downgrade-5.2.3-1
- Total Download Size: 0.01 MiB
- Total Installed Size: 0.10 MiB
:: Proceed with installation? [Y/n]
"downgrade" 命令的典型用法是:
$ sudo downgrade [PACKAGE, ...] [-- [PACMAN OPTIONS]]
让我们假设你想要将 opera web 浏览器 降级到任何可用的旧版本.
为此, 运行:
$ sudo downgrade opera
此命令将从本地缓存和远程镜像列出所有可用的 opera 包(新旧两种版本).
示例输出:
- Available packages:
- ) opera-37.0.2178.43-1-x86_64.pkg.tar.xz (local)
- ) opera-37.0.2178.43-1-x86_64.pkg.tar.xz (remote)
- ) opera-37.0.2178.32-1-x86_64.pkg.tar.xz (remote)
- ) opera-36.0.2130.65-2-x86_64.pkg.tar.xz (remote)
- ) opera-36.0.2130.65-1-x86_64.pkg.tar.xz (remote)
- ) opera-36.0.2130.46-2-x86_64.pkg.tar.xz (remote)
- ) opera-36.0.2130.46-1-x86_64.pkg.tar.xz (remote)
- ) opera-36.0.2130.32-2-x86_64.pkg.tar.xz (remote)
- ) opera-36.0.2130.32-1-x86_64.pkg.tar.xz (remote)
- ) opera-35.0.2066.92-1-x86_64.pkg.tar.xz (remote)
- ) opera-35.0.2066.82-1-x86_64.pkg.tar.xz (remote)
- ) opera-35.0.2066.68-1-x86_64.pkg.tar.xz (remote)
- ) opera-35.0.2066.37-2-x86_64.pkg.tar.xz (remote)
- ) opera-34.0.2036.50-1-x86_64.pkg.tar.xz (remote)
- ) opera-34.0.2036.47-1-x86_64.pkg.tar.xz (remote)
- ) opera-34.0.2036.25-1-x86_64.pkg.tar.xz (remote)
- ) opera-33.0.1990.115-2-x86_64.pkg.tar.xz (remote)
- ) opera-33.0.1990.115-1-x86_64.pkg.tar.xz (remote)
- ) opera-33.0.1990.58-1-x86_64.pkg.tar.xz (remote)
- ) opera-32.0.1948.69-1-x86_64.pkg.tar.xz (remote)
- ) opera-32.0.1948.25-1-x86_64.pkg.tar.xz (remote)
- ) opera-31.0.1889.174-1-x86_64.pkg.tar.xz (remote)
- ) opera-31.0.1889.99-1-x86_64.pkg.tar.xz (remote)
- ) opera-30.0.1835.125-1-x86_64.pkg.tar.xz (remote)
- ) opera-30.0.1835.88-1-x86_64.pkg.tar.xz (remote)
- ) opera-30.0.1835.59-1-x86_64.pkg.tar.xz (remote)
- ) opera-30.0.1835.52-1-x86_64.pkg.tar.xz (remote)
- ) opera-29.0.1795.60-1-x86_64.pkg.tar.xz (remote)
- ) opera-29.0.1795.47-1-x86_64.pkg.tar.xz (remote)
- ) opera-28.0.1750.51-1-x86_64.pkg.tar.xz (remote)
- ) opera-28.0.1750.48-1-x86_64.pkg.tar.xz (remote)
- ) opera-28.0.1750.40-1-x86_64.pkg.tar.xz (remote)
- ) opera-27.0.1689.76-1-x86_64.pkg.tar.xz (remote)
- ) opera-27.0.1689.69-1-x86_64.pkg.tar.xz (remote)
- ) opera-27.0.1689.66-1-x86_64.pkg.tar.xz (remote)
- ) opera-27.0.1689.54-2-x86_64.pkg.tar.xz (remote)
- ) opera-27.0.1689.54-1-x86_64.pkg.tar.xz (remote)
- ) opera-26.0.1656.60-1-x86_64.pkg.tar.xz (remote)
- ) opera-26.0.1656.32-1-x86_64.pkg.tar.xz (remote)
- ) opera-12.16.1860-2-x86_64.pkg.tar.xz (remote)
- ) opera-12.16.1860-1-x86_64.pkg.tar.xz (remote)
- select a package by number:
只需输入你选择的包号码, 然后按回车即可安装.
就这样. 当前安装的软件包将被降级为旧版本.
另外阅读: 在 Arch Linux 中如何将所有软件包降级到特定日期 https://www.ostechnix.com/downgrade-packages-specific-date-arch-linux/
那么, 如何避免已损坏的软件包并使 Arch Linux 更加稳定?
在更新 Arch Linux 之前查看 Arch Linux 新闻 https://www.archlinux.org/news/ 和论坛 https://bbs.archlinux.org/ , 看看是否有任何已报告的问题. 过去几周我一直在使用 Arch Linux 作为我的主要操作系统, 以下是我在这段时间内发现的一些简单提示, 以避免在 Arch Linux 中安装不稳定的软件包.
避免部分升级. 这意味着永远不要运行
pacman -Sy <软件包名称>
. 此命令将在安装软件包时部分升级你的系统. 相反, 优先使用 pacman -Syu 来更新系统, 然后使用
package -S <软件包名称>
安装软件包.
避免使用 pacman -Syu -force 命令.-force 标志将忽略程序包和文件冲突, 并且可能会以破损的程序包或损坏的系统结束.
不要跳过依赖性检查. 这意味着不要使用
pacman -Rdd <软件包名称>
. 此命令将在删除软件包时避免依赖性检查. 如果你运行这个命令, 另一个重要的包所需的关键依赖也可以被删除. 最终, 它会损坏你的 Arch Linux.
定期备份重要数据和配置文件以避免数据丢失总是一个好习惯.
安装第三方软件包和 AUR 等非官方软件包时要小心. 不要安装那些正在经历重大发展的软件包.
有关更多详细信息, 请查看 Arch Linux 维护指南 https://wiki.archlinux.org/index.php/System_maintenance .
我不是 Arch Linux 专家, 我仍然在学习如何使它更稳定. 如果你有任何技巧让 Arch Linux 保持稳定和安全, 请在下面的评论部分保持稳定和安全告诉我, 我将洗耳恭听.
希望这可以有帮助. 目前为止这就是全部了. 我很快会再次在这里与另一篇有趣的文章. 在此之前, 请继续关注.
来源: http://os.51cto.com/art/201806/575849.htm