rpm相关内容

确定是否使用Yum Python API安装了软件包?

TLDR ;我需要一个简单的Python调用,给出一个包名称(例如"make"),以查看它是否已安装;如果没有,请安装它(我可以做后一部分). 问题: 因此 http://yum.baseurl.org/wiki/YumCodeSnippets 中提供了一些代码示例,但是除了在ipython内浏览并猜测每种方法的作用之外,似乎没有任何有关yum的Python API的实际文档.显然所有 ..
发布时间:2020-05-01 09:57:46 服务器开发

创建Python RPM

我一直在阅读有关为Python 2.6.4创建RPM的信息.在此页面中: http://docs.python.org/distutils/builtdist.html它表示您可以使用python setup.py bdist_rpm创建当前Python的RPM.我的问题是: 您是否必须在Python安装目录中键入此命令? 此命令是否会将您已安装的所有模块打包到RPM中? 这是执行此操作 ..
发布时间:2020-05-01 09:41:19 服务器开发

检查RPM依赖性

在Ubuntu上使用.deb软件包安装程序时,可以使用 Ubuntu软件包搜索来检查软件包的依赖关系.例如,我可以从此处看到Wireshark的依赖关系.如您所见,依赖项由红色项目符号标记.如果您知道程序所依赖的所有软件包,则可以下载它们并安装dpkg. 是否有RPM软件包的替代网站?专门用于RHEL吗? 我知道我可以通过其他方法(例如,使用rpm -i安装RPM软件包时)获得这些软件 ..
发布时间:2020-05-01 09:37:58 服务器开发

$ RPM_BUILD_ROOT实际上是什么?

在构建RPM软件包的过程中,我必须指定BuildRoot,以后将在%install中使用它来侵害$ RPM_BUILD_ROOT.我一直认为$ RPM_BUILD_ROOT是RPM执行打包的假安装.然后,在使用RPM软件包进行安装时,它将安装到实际位置.例如: $RPM_BUILD_ROOT/usr/bin 我认为$ RPM_BUILD_ROOT仅用于打包过程,并且在某些方面,当用户执行 ..
发布时间:2020-05-01 09:25:53 服务器开发

确定yum软件包安装的路径

我已经在Redhat下使用yum安装了ffmpeg,但我很难确定将软件包安装到的位置(路径).是否有一种简便的方法可以确定这一点,而无需自己手动找到它? 解决方案 yum使用 RPM ,因此以下命令将列出已安装软件包的内容: $ rpm -ql package-name ..
发布时间:2020-05-01 09:19:53 服务器开发

如何提取rpm的内容?

我有一个rpm,我想像一个tarball一样对待它.我想将内容提取到目录中,以便检查内容.我熟悉已卸载软件包的查询命令.我不只是想要列出rpm的内容.即 $ rpm -qpl foo.rpm 我想检查rpm中包含的几个文件的内容. 我不想安装rpm.我也知道rpm可以在%post部分中进行其他修改,以及如何检查这些内容.即 $ rpm -qp --scripts foo.rpm ..
发布时间:2020-05-01 08:48:40 服务器开发

如何使用YUM列出包装内容?

我知道如何使用rpm列出软件包(rpm -qpil package.rpm)的内容.但是,这需要知道.rpm文件在文件系统上的位置.一个更优雅的解决方案是使用程序包管理器,在我的情况下是YUM. YUM如何用于实现这一目标? 解决方案 有一个名为yum-utils的程序包,它基于YUM构建,并包含一个可以执行此操作的名为repoquery的工具. $ repoquery --help ..
发布时间:2020-05-01 08:33:38 服务器开发

在RPM软件包中添加许可协议

是否可以在RPM软件包中添加许可协议? 当用户安装RPM时,它会提示您接受用户许可协议. 解决方案 出于技术和用户界面方面的考虑,这是一个糟糕的主意. 不仅因为在安装过程中可能没有显示,而且还因为在安装过程中甚至首次运行时可能没有 user ,或者提取rpm文件的机制可能根本不支持任何方法显示文本或接受输入. 本质上,如果您必须进行此操作,最坏的方法是执行Ignacio建议,这 ..
发布时间:2020-04-30 10:55:46 其他开发

在rpm规范文件中列出两次文件

我的规格文件的文件部分如下所示: %files %{prefix}/htdocs/ %config %{prefix}/htdocs/share/settings/config.inc.php 现在,由于配置文件已经包含在%{prefix}/htdocs/行中,因此我得到警告“文件列出两次". 一种解决方法是,列出%{prefix}/htdocs/中除配置文件之外的每个文件. ..
发布时间:2020-04-23 11:24:38 服务器开发

LSB中有RPM文件命名约定吗?

RPM是LSB中的软件包格式,但是LSB确实对RPM强制使用任何命名标准,类似于以下内容: http://www.rpm.org/max -rpm/ch-rpm-file-format.html 解决方案 在 为包裹添加lsb- 前缀 注册您的软件包名称的一部分,直到LANANA中的第一个连字符(或将其作为您的域名). 但是,标准的LSB打包工具包装makelsbpkg是生成 ..
发布时间:2020-04-23 11:04:11 服务器开发

rpm安装由于找不到依赖项/bin/sh而失败

我正在尝试使用rpm安装软件包,为此我使用rpmdb --initdb --dbpath $HOME/myrpmdb创建了一个不同的数据库,并在安装时在--dbpath中指定了该路径. 我遇到的错误是 root@jason:su rpm --dbpath $HOME/myrpmdb -ivh XXX.rpm error: Failed dependencies: /bin/sh is nee ..
发布时间:2020-04-23 10:43:21 服务器开发

如何在我的机器上同时安装多个版本的Java JDK?

背景 我的工作主要是Java和Scala,但我们的许多遗留代码尚未更新到最新的JDK。因此,我们必须在我们的开发机器上安装JDK版本5,6,7和8。直到最近,我一直在使用Arch Linux,但我刚刚切换到OpenSuse Tumbleweed。我用来安装JDK版本的方法是从Oracle网站下载RPM安装程序脚本,然后从1.5开始安装它们,然后以1.8的方式运行,以便 / usr / jav ..
发布时间:2019-01-08 20:38:29 Java开发

如何使用Redline RPM Java库创建RPM包?

我想为我的Java游戏(目前打包为JARs + JNLP文件)创建一个RPM包。我使用Ant作为构建工具。我不能使用依赖于平台的工具,因为使用我的源代码的少数开发人员使用多个操作系统,不一定是GNU Linux。 起初,我尝试使用 JDIC 但它的源代码多年来一直没有维护,我不得不修改大量的东西只是为了让它重新编译。而且,它只是调用本机RPM工具。然后,我找到了 RPM Ant任务,但它使用 ..
发布时间:2019-01-08 20:27:07 Java开发

如果specfile中没有满足某些条件,如何中止rpm包的安装?

还有一些 Requires 标记不满足的内容。 所以我写了一个脚本来验证这些东西,但我在哪里放置它们? 如果没有找到,那么我想退出安装,提示用户在再次尝试安装此rpm之前执行这些步骤。 写在%install 标记中退出1 无法使用rpmbuild构建rpm。 表示%install的退出代码不正确。 编辑:让我举个例子。我最初想要测试的是Oracle Java 6是否存在。如果没有 ..
发布时间:2018-12-21 20:54:41 Java开发

从Gradle上传一个RPM到Artifactory

如何使用Gradle将RPM文件上传到Artifactory? Gradle总是使用Maven风格的直接布局来上传文件,这对于YUM存储库是不合适的。 解决方案 Gradle坚持以maven风格的目录格式( group-id / version / artifact )上传所有内容,而yum存储库需要平面布局。这里有两种方法 - 使用Artifactory插件或Gradle更新的发布机制。我只能 ..
发布时间:2018-05-17 18:55:35 其他开发

收集所有rpm依赖项以部署项目

我需要将软件项目(打包为rpm)从开发者机器部署到服务器中。我正在使用Fedora 23以及dnf软件包管理器。在部署到服务器之前,我必须收集所有rpm的依赖关系。由于内部监管,服务器无法连接到互联网(但是我可以在其上安装ssh)。运行存储库镜像等不是一个选项。恐怕我只需要收集开发者机器上的所有依赖关系,并将它们scp(或可以)安装到服务器上,然后安装在服务器上。 我希望dnf中的 - in ..
发布时间:2017-05-09 21:34:05 其他开发

跟踪部署的应用程序的文件

你们在制作中部署和应用和跟踪他们的文件是什么?我的意思是跟踪文件是否没有直接在服务器上更改? 谢谢 解决方案 我已经使用Git 3年来在HPC生产集群上跟踪/ usr / local。 对于2.2G(主要是二进制文件),需要1分钟运行 git log -n 1; git状态(通过NFS!)来说服自己,部署后文件未被修改。在本地磁盘上,扫描将需要几秒钟。如果发生变化,我会看到哪些 ..
发布时间:2017-05-09 20:27:13 其他开发