Arch Linux pacman指定软件包版本


12

我知道我可以pacman按照手册中的说明定义所需的软件包版本pacman -S "bash>=3.2"。但是我怎么知道可用的版本呢?

我也知道pacman在同步.db文件中的时正在创建镜像的副本/var/lib/pacman/sync/,但是这些文件不是人类可读的。

如果我想安装一些版本什么virtualbox例如,我希望在镜子的地方,这将不需要的新版本linux(如设定IgnorePkgpacman.conf比我已经安装了(因为)nvidia驱动程序)?我怎么知道它是什么版本,是否可用?


“但是我怎么知道可用的版本呢?” 还pacman -Si package_name不够吗
Braiam 2013年

@Braiam不,这只为您提供最新版本。
子午线

在此期间,我从Arch Rollback Machine手动从seblu.net/a/arm下载了所需的软件包,但是这种方法需要手动下载并尝试安装所需的软件包,这确实很耗时。
Meridius 2013年

Answers:


11

您不能轻易指定一个pacman仅作为最新版本发布的版本。安装某些内容时,该软件包将存储在计算机的/var/cache/pacman/pkg/目录中,因此,如果您想降级一个版本或指定另一个版本,则必须pacman -U在缓存中使用该软件包的名称。人们在那里只是存储旧软件包的地方有“时间机器”存储库,您可以下载所需的版本并用于pacman -U安装它。

请注意,如果您不想更新该程序包,则必须“阻止”该程序包的更新,以查看操作方法,请在pacman页面或此https://wiki.archlinux.org/index.php中查看Wiki。/Downgrading_Packages#Q:_I_cannot_downgrade_a_package.2C_because_of_dependencies


我知道pacman -U和以前安装的软件包,也知道Arch Rollback Machines。我的问题确实是关于如何简化搜索正确软件包版本的过程。
子午线

@meridius您在问一个错误的问题:Arch是一个滚动版本,对于所有意图来说,软件包的唯一版本是当前版本。不支持部分升级
jasonwryan 2013年

2
“作为滚动版本,pacman将只提供最新版本。” 错误!滚动发布并不暗示这一点。您可以发布支持较旧软件包的滚动版本。
Rok Kralj 2014年

@meridius我将该pacman -U选项与所需软件包的完整URL一起使用,位于archive.archlinux.org/packages。另外,您可能想将该特殊程序包添加到忽略列表中,否则它将被覆盖。@jasonwryan,滚动发布有很多好处,但是somethins附带了一些技巧,您必须保留一些“不是那个新的”版本:D,直到应用补丁为止。
m3nda
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.