rpm文件怎么弄到linux,如何在Linux中创建RPM包?

在网上看到了创建RPM包的方法,经过自己的测试后,发现了一些错误,先将方法纠正过来。

我用的linux版本是红帽企业的5.5。这个版本创建的RPM包默认是在/usr/src/RedHat/目录中,所以在这个目录测试。RPM包包含两个文件:一个shell脚本以及一个README文件,README文件描述了如何使用该shell脚本。如果你能创建有两个文件的软件包,那么你也可以创建更大的软件包。

创建简单RPM包的过程

1.创建一个目录结构,把RPM包所需要的文件包含进去。这个结构的名字通常以RPM包的名字命名,包括它的版本号。。我们把这个目录命名为test-1.0。下面的命令告诉你如何创建并命名这个目录,已经如何把所需要的文件放在里面:$ cd /usr/src/redhat

$ mkdir test-1.0

$ cd test-1.0

$ echo echo this is a test > test.sh

$ chmod +x test.sh

$ echo just launch the script > README

2.现在,RPM包所需要的全部文件都在这里了。下一步就是创建一个包含RPM文件的.tar.gz文件。这个 目录还让创建档案文件更加简单。该.tar.gz文件需要位于名为rpmbuild/SOURCES的目录下。你还需要一个.specs文件,这个文件包含所有建立RPM包的规范说明。该.specs文件是RPM包的核心组件,里面包括全部文件的 指示,RPM包中的文件按照这些指示进行安装。该.specs文件应该放置在一个SPECS目录下。

第一个cd命令确保rpmbuild目录位于当前用户的home目录下。请以普通用户身份执行以下命令:$ cd

$ mkdir -p rpmbuild/SOURCES

$ mkdir -p rpmbuild/SPECS

$ tar -cvzf rpmbuild/SOURCES/test-1.0.tar.gz test-1.0

3.现在文件都各就各位,请以普通用户身份创建一个说明文件。Rpmbuild 命令将会找到所有需要的指示来创建该文件。在最近的Red Hat和衍生版本中,创建说明文件很容易:只需要用vim编辑器创建一个包含所有内容的文件,扩展名设为.spec即可。下面是test-1.0rpm包 中该文件的样子(模板改变的地方已用粗体标出):

Name:test

Version:1.0

Release:1%{?dist}

Summary:A test package

Group:Test Packages

License:GPL

URL: http://test.example.com

Source0:%{name}-%{version}.tar.gz

BuildRoot:%(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)

BuildRequires: /bin/rm, /bin/mkdir, /bin/cp

Requires: /bin/bash, /bin/date

%description

部署单一文件包的演示%prerp

%setup –q

%build

#configure

#make %{? _smp_mflags}

%install

rm -rf $RPM_BUILD_ROOT

#make install DESTDIR=$RPM_BUILD_ROOT

mkdir -p $RPM_BUILD_ROOT/usr/local/bin

cp /usr/src/redhat/test-1.0/test.sh $RPM_BUILD_ROOT/usr/local/bin

%clean

rm -rf $RPM_BUILD_ROOT

%files

#%defattr(-root,root,-)

#%doc

%attr(0755,root,root)/usr/local/bin/test.sh

#%changelog

#* Today

#- Creation of initial RPM

现在.spec文件创建完成,是时候完成最终的工作了。请使用根目录用户身份安装rpmbuild命令。在Red Hat中,请用yum install rpm-build完成这项工作。接下来,请确保所有的文件都呆在正确的地方。Tar存档文件必须位于创建软件包的当前用户帐户的~/rpmbuild /SOURCES 目录下,demo.spec文件必须位于~/rpmbuild/SPECS目录下。现在你可以用rpmbuild -ba test.spec命令来创建软件包了。这会在/usr/src/redhat/RPMS目录下创建你的RPM文件。0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值