【Linux】使用 apt-get 查询并安装指定版本的软件

这是一个陷阱,不要使用apt-get安装非官方版本。

使用apt-get install package version来安装指定版本。

使用 madison apt-cache 包查找所有可用版本。

apt-cache 策略包查看版本详细信息。

apt-cache showpkg 软件包显示软件包源。

安装前,首先使用 apt-get install -s package 检查依赖关系。

使用 apt-show-versions 和 -u 包查找更新。

实用提醒:安装前请确认来源及软件版本稳定性。

自己定制的linux系统没有apt-get,如何安装apt-get包

RedHat系列使用yum,Debian系列使用apt-get。
百胜命令: 百胜检查更新 yum 安装程序包 百胜更新包 yum 删除软件包
apt-get 命令: apt-get安装包 apt-get 更新 apt-get 升级 apt-get 删除软件包
就是这样。

如何强制重新安装Linux软件包 yum reinstall和apt-get --reinstall

话虽如此,强制重装Linux软件包取决于你使用的是什么系统。
我首先在 CentOS 上完成此操作,然后切换到 Ubuntu。
操作确实不一样。

我们先来说说CentOS。
我一开始用的是yum,后来DNF出来了。
功能基本相同,只是命令不同。
如果您是 CentOS 老用户,您可能对 yum 很熟悉。
要强制重新安装软件包,您需要使用 suodyam reinstall package_name 等命令。
如果您使用的是 dnf,那就是 sudodnf reinstall package_name。
这两个命令都告诉系统您要重新安装此软件包并让它从存储库下载最新版本以覆盖现有版本。

有趣的是,在这个过程中,如果你之前更改过配置文件,比如Nginx配置文件,那么当你重新安装时,系统会保留你原来的修改,只覆盖新版本。
但它会为你留下一个备份文件。
例如,rpm 将生成一个 .rpmnew 文件。
这样您就可以比较新旧文件并查看需要合并哪些差异。

我们来谈谈像Ubuntu这样的Debian系统。
这里使用 apt-get --reinstall install package_name 命令。
这个命令有点不同,因为它检查依赖关系,下载新包并智能地处理配置文件。
如果你改变了配置,dpkg会让你选择如何处理,比如保留旧的,使用新的。
使用它们或查看它们之间的区别。

在恢复场景中,最常见的场景可能是文件损坏。
例如,如果服务器突然断电或磁盘出现问题,软件包中的文件可能会损坏。
或者有时软件安装不完整,或者安装脚本失败,留下半成品。
有时候,程序会出现一些奇怪的问题,而日志中却没有明显的错误。
此时,您也可以尝试重新安装软件包。

如果重新安装后问题仍未解决,您将需要开始故障排除。
首先,您需要阅读日志。
使用journalctl -exe读取系统日志,或者直接进入/var/log/目录查找相关日志文件。
查找任何错误消息或警告,这可能会给您一些线索。

然后验证依赖关系,使用ldd检查程序依赖的共享库。
对于Python和Node.js等解释性语言,还需要检查相应的包管理器(例如pip、npm)中是否安装了正确的模块。

检查环境因素也很重要,例如内存、磁盘空间、网络连接,以及 SELinux 或 AppArmor 策略是否过于严格,导致程序无法运行。

一般来说,重新安装软件包是一个很常见的操作,但是当遇到问题时,需要一步步排查,找到根本原因。
我自己没试过。
我请记住,数据约为 X,但我建议您检查一下。