kongxx的专栏

本文链接:

今天为了测试搭建自己的yum仓库并安装升级软件包,因此需要一个rpm包来做测试,所以就想到了自己来做一个最简单rpm,因为仅仅就是做一个测试所以没有添加需要编译的文件,,而是只使用了一个shell文件来输出可爱的Hello World。

1. 首先需要下载安装rpm包制作工具$ sudo yum install -y rpm-build rpmdevtools2. 运行 rpmdev-setuptree 来生成一个 rpm 包的骨架目录$ rpmdev-setuptreerpmdev-setuptree命令默认将再当前用户的根目录下创建一个RPM构建根目录结构 ~/rpmbuild/ 3. 生成源代码包mkdir -p ~/rpmbuild/SOURCES/helloworld-1.0.0touch ~/rpmbuild/SOURCES/helloworld-1.0.0/helloworldchmod 755 ~/rpmbuild/SOURCES/helloworld-1.0.0/helloworldecho "#!/bin/sh" >> ~/rpmbuild/SOURCES/helloworld-1.0.0/helloworldecho "echo Hello World!" >> ~/rpmbuild/SOURCES/helloworld-1.0.0/helloworldcd ~/rpmbuild/SOURCES; tar zcvf helloworld-1.0.0.tar.gz helloworld-1.0.04. 在 ~/rpmbuild/SPECS 目录下用 rpmdev-newspec 来生成一个 spec 骨架文件$ rpmdev-newspec helloworld.spec编辑 helloworld.spec 文件,内容如下Name:helloworldVersion:1.0.0Release:1%{?dist}Summary:helloworldGroup:Development/ToolsLicense:GPL#URL:Source0:%{name}-%{version}.tar.gz#BuildRequires: #Requires:%description%prep%setup -q%buildmkdir -p $RPM_BUILD_ROOT/usr/bincp $RPM_BUILD_DIR/%{name}-%{version}/helloworld $RPM_BUILD_ROOT/usr/bin/%install%cleanrm -rf $RPM_BUILD_ROOT%files%defattr(-,root,root,-)%doc/usr/bin/helloworld%changelog5. 打包rpmbuild -ba SPECS/helloworld.spec6. 测试6.1 安装测试sudo yum install ~/rpmbuild/RPMS/x86_64/helloworld-1.0.0-1.el6.x86_64.rpm6.2 升级测试修改 helloworld.spec 文件,将其中 Release 修改为Release:2%{?dist}然后运行 "rpmbuild -ba SPECS/helloworld.spec" 打包最后运行使用下面的命令来升级 rpm 包sudo yum update ~/rpmbuild/RPMS/x86_64/helloworld-1.0.0-2.el6.x86_64.rpm

世界上那些最容易的事情中,拖延时间最不费力。

kongxx的专栏

相关文章:

你感兴趣的文章:

标签云: