Articles of rpm

新的命令行工具:唯一的名称

我想写一个新的命令行工具。 名字应该简短,不应该与现有的名字冲突。 如何知道其他命令行工具没有这个名字? 只是检查我的系统不是一个解决scheme。 该名称应该是唯一的: Ubuntu的 Debian的 红帽 SUSE

RHEL 6.5 RPM依赖 – 为什么我得到一个关于已经安装的RPM依赖的错误?

我试图从nscd-2.12-1.132.el6.x86_64升级到nscd-2.12-1.149.el6.x86_64,因为有一个bug。 glibc RPM有几个依赖关系。 这里是已经安装的glibc包: [tim@host]~/nscd% rpm -qa | grep glibc glibc-common-2.12-1.132.el6.x86_64 glibc-2.12-1.132.el6.i686 glibc-2.12-1.132.el6.x86_64 glibc-utils-2.12-1.132.el6.x86_64 这里是我试图用来升级的RPM: [tim@host]~/nscd% ll total 35212 -rw-r—– 1 tim appeng 145372 Jan 16 21:04 gd-2.0.35-11.el6.x86_64.rpm -rw-r—– 1 tim appeng 3993348 Jan 16 19:29 glibc-2.12-1.149.el6_6.4.x86_64.rpm -rw-r–r– 1 tim appeng 14871492 Jan 17 01:14 glibc-common-2.12-1.149.el6_6.4.i686.rpm -rw-r—– 1 tim appeng 14883600 Jan 16 19:31 glibc-common-2.12-1.149.el6_6.4.x86_64.rpm […]

RPM包签名是强制性的?

签署RPM是强制性的吗? 不签署RPM会导致分发或上传到中央存储库的任何问题?

RPM包规格本地化

我需要为俄罗斯当地市场打包专有程序。 要构buildRPM包,我使用了这个指南: https : //stackoverflow.com/a/1165200/1794089 所以,我需要将RPM软件包描述翻译成俄语,即将其本地化。 我用Googlesearch该方法: https : //www.redhat.com/archives/rpm-list/2004-January/msg00062.html 但是它不起作用:在Fedora 21 x64软件安装中心仍然以英文显示软件包摘要/描述 – 而系统区域设置为ru_RU.UTF-8。 我究竟做错了什么? SPEC文件片段: … Summary: Test Summary(ru): Тест … License: Proprietary … %description Test application %description -l ru Тестовое приложение

在RPM CentOS规范文件中使用自定义的configure / make构build多个源文件

我正在使用CentOS 7.我需要制作一个RPM软件包。 我有3个tarball文件,如aa-1.0.tar.gz bb-1.2.tar.gz和cc-3.0.tar.gz。 我需要使用不同的configuration选项构build所有的configuration选项,比如第一个configuration选项是tarball: ./configure –prefix=/opt/proxy 如何在build立或设置macros下的SPEC文件中指定此项? 我知道在tar中的单个源文件,我们可以指定./configure….under%构build选项,但我不知道如何build立3个不同的源文件,并用不同的configuration构build它们。 你如何build议在rpmbuild的SOURCE目录下保存这3个不同的tar文件: 作为一个包含3个焦油球 在SOURCE目录中有3个不同的焦油球作为3个源

使用–quiet选项标志运行rpmbuild命令将导致广泛的debugging信息

我希望最小化我的rpm构build过程的输出。 我运行以下命令: rpmbuild -ba –quiet "/tmp/yaneeve/kit/linux/rpm_spec" 我的系统是: Linux yaneeve-lnx-82-5 2.4.21-47.ELsmp #1 SMP Wed Jul 5 20:38:41 EDT 2006 i686 i686 i386 GNU/Linux rpmbuild版本是: RPM version 4.2.3 我的rpm spec文件的%prep部分是: %prep . $LOGGER_FUNC_FILE_LOCATION/logger.sh SCRIPT_NAME='rpm_spec-prep' SOURCE_DIR=`readlink -f -n %{_sourcedir}` PACKAGE_DIR=`readlink -f -n %{_pkg_script_dir}` BUILD_PRODUCT_DIR=`readlink -f -n %{_build_product_dir}` RESOURCE_DIR=`readlink -f -n %{_resource_dir}` log $SCRIPT_NAME INFO "In the prep stage […]

在升级过程中,%preun的值为0到$ 1

我有一个已安装在系统中的rpm包。 我想用不同的软件包名称replace旧软件包。 “rpm -Uvh [软件包名称]”应该足以将旧软件包replace为新软件包。 在网上做了一些研究之后,我发现“Obsoletes”是用来废弃一个旧的包,并用一个不同的名称replace成一个新的包。 我在我的rpm spec文件中使用了“Obsoletes”,但是当我试图从旧软件包升级时,旧软件包的%preun被$ 1 = 0调用,我预期$ 1 = 1。 如果我在任何地方出错,请纠正我。 这个问题有没有更好的解决办法? 谢谢

如何在.spec文件中将文件复制到用户的主目录

您好我正在使用Fedora 10 Linux。 我已经创build了一个.spec文件,现在我想写一些能够使我能够复制文件并存储在用户的桌面上的东西。 那么如何做到这一点。 感谢Sunil Kumar Sahoo

rpmbuild:如何在不安装%install的情况下构build包?

我试图build立一个转速,但不幸的是在我的生成机器,我只有限制权限,这意味着%安装的操作不能在生成机器内完成。 如何在不运行%install部分的情况下构build包(.rpm文件)? 看起来没有可用于此目的的选项: http://www.rpm.org/max-rpm-snapshot/ch-rpm-b-command.html 我的bu.spec文件: Summary: xxxx Name: xx Version: 1.0 Release: 1 Group: Applications/Sound License: Share %description %prep echo "prep" %build %install echo "install" mkdir -p /opt/xcp_src/ cp scripts.tgz /opt/xcp_src/ %files /tmp/xcp_src/scripts.tgz %post cd /opt/xcp_src/ tar zxvf scripts.tgz

Linux:包装PHP – RPM中的MySQL应用程序

我有多个PHP-MySQL应用程序,我经常向客户发货。 在每次升级时,我都需要给他们PHP脚本和MySQL SQL文件。 事情搞砸了,通常的问题是版本不匹配或文件权限不匹配或部分升级。 我对RPM有基本的了解,如果需要,我可以创build一个RPM样例。 这些应用程序的主机是Cent OS 6.2, httpd和mysql-server 。 我应该用RPM包装我的内容吗? 我看到下面的好处: 轻松升级 – #rpm -Uvh app.rpm 可以在线主持回购,我的客户可以#yum升级应用程序 更自动化,更less的人为错误的变化。 我应该这样做吗?