可以通过以下方式导入密钥:
rpm --import /path/to/key
但是以后如何知道是否已经导入了这个密钥?尝试重新导入它会失败并出现错误,我正在尝试避免这种情况,因为我正在使用 Puppet 安装密钥。
这是我为一所大学在实验室中推广 Linux 使用所做的设置。
我有一个共享位置,让我称之为/tp;我想在这个位置安装我所有的库和包,就像默认安装一样。这样做的原因是:我希望连接到此服务器的网络中的所有用户都将他们的程序链接到此特定位置,以获取程序库。
我最接近的是使用 (例如) yum install boost --installroot=/tp/。这不起作用,因为 yum 开始在此位置查找镜像列表。我希望安装在该位置完成/tp/
在逐步构建软件包时,好的旧 rpm 只是保留了 BuildRoot 的内容——这对我来说非常有用,因为如果某些软件难以创建,如果一切正常,我可以检查 BuildRoot。
现在,随着所有“改进”的 rpm - BuildRoot 的内容被自动删除,所以我不能真正深入研究它(安装步骤不是那么长)。
我知道的一个技巧是在安装阶段结束时向 rpm 规范添加某种睡眠。但这是丑陋的。
所以 -问题- 如何以良好的方式保留 BuildRoot 的内容 - 换句话说,如何永久禁用自动删除?
在哪里可以找到要卸载的 JDK 安装?@terdon 已经使用rpm类型下载进行了解释,因此卸载会更容易,但我找不到它。
我正在考虑一些类似Contents-<arch>.gzDebian 的问题。网络服务也还行。它存在吗?
简单阐述:例如,我们需要一个名为 的二进制文件exampletool,我们从其他发行版或操作系统中非常了解它。例如,我们想用 zypper 安装它。但是zypper只能安装一个包。为了找出我们可以在哪个包中找到所需的exampletool二进制文件,我们实际上需要进行搜索,最好是在当前未安装的文件列表中进行快速索引搜索,但在存储库中可用的包。在 debian 上,包存储库中有一个名为 的索引文件Contents-amd64.gz,我们可以在其中使用单个zgrep命令找到所需的包。我也在为 OpenSUSE 寻找一些类似的单命令解决方案。如果没有,Web 服务也可以用于相同的功能。
当我执行时less package.rpm,less 会向我显示有关包的各种元信息。什么不太准确 - 它是否内置了能够提取元信息的代码,或者是以第一部分看起来像文本文件的方式构建的 rpm?
我会假设前者,因为head在这里不是很有帮助。但要解决真正的问题:如果我想grep通过这个元数据少向我展示,我该如何做到这一点?
我使用 Fedora 并且我希望将所有包名称列在一个列表中,但只有我自己安装的那些,而不是默认的。
众所周知,yum 是一个建立在 rpm 之上的包管理系统。它也是一个命令行实用程序,它是 rpm 的(粗鲁地说)更广泛的版本,它解决了许多 rpm 不关心的问题(主要是明显的依赖关系)。当使用 rpm 命令比 yum 更合适时,是否有任何特殊情况?
假设我使用zypper ar. 然后,我已经从该存储库中安装了多个软件包,但现在我想删除所有这些软件包。
是否有一个命令允许我从该特定存储库中删除我安装的所有软件包?
RHEL7 提供的 tomcat 包通过创建目录和符号链接支持多个实例。一旦创建了这样的多个实例并将其打包为 RPM,由于 selinux 故障,额外的实例将无法启动。
解决方案是在 RPM 包装中正确配置 selinux,但是我正在努力寻找有关如何执行此操作的规范描述。
RHEL7安装tomcat时,selinux的配置从何而来?
编辑:在 RPM .spec 中设置 SELinux 上下文的正确方法是什么?,有没有人真正读过它,提到过时的 RHEL4 和 RHEL5 发行版,并且已经 7 岁了。正如这个问题中明确指出的,这是指 2018 年的 RHEL7。 7 年前的问题的答案,和这个问题的答案截然不同。