自己动手做的一个rpm包(分享)

6 篇文章 0 订阅
1 篇文章 0 订阅

1, linux软件管理氛围:

(ア)  RPM打包方式                  

①      Yum工具是采用这种打包方式;

②       操作系统:Redhat,Fedara,CentOS。

(イ)  DEBIAN打包方式

①      Apt-get工具是采用这种打包方式;

②      操作系统:Ubantu

    比较之后RPM打包比较容易,网络上参考的资料较多。比较倾向采用此打包方式

2, RPM包的制作:

(ア)  需要一些工具,参考网络。(可以用yum去安装,eg:yum installrpm-build

(イ)  RPM有五个文件夹是必须的。应该是系统默认的,一般在Redhat的/usr/src/redhat下有BUILD,RPMS,SOURCES,SPECS,SRPMS五个文件夹。我的默认的目录是在/root/rpmbuild

(ウ)   

①      五个文件夹的作用参照网络。其中SOURCES目录中放我们的压缩文件(eg:我这里的实例的话放置的是1.tar.gz压缩文件)

②      SPECS目录里存放.spec脚本,这个脚本是核心,记录rpm的安装方式。

③      BUILDROOT目录是在制作打包的过程中生成。这个目录很重要。相当于是一个虚拟的目录。下面的实例中会说明的。

④      实例:more 1.l #生成一个文件

⑤      tar zxvf 1.l 1.tar.gz #压缩文件

⑥      cp 1.tar.gz /root/rpmbuild/SOURCES #拷贝到指定文件夹

⑦      cd /root/rpmbuild/SPECS

vi1.spec

       ⑤  以下是1.spec的内容

#

# Examplespec file for nginx

#

Summary: highperformance web server

Name: 1

Version: 1

Release: 1.0

License:2-clause BSD-like license

Group:Applications/Server

Source: 1.tar.gz

URL: 1.tar.gz

Distribution:Linux

Packager:zhumaohai <admin@www.centos.bz>

 

%description

nginx [enginex] is a HTTP and reverse proxy server, as well as

a mail proxyserver

%prep

rm -rf$RPM_BUILD_DIR/1.tar.gz

zcat$RPM_SOURCE_DIR/1.tar.gz | tar -xvf -

echo"---------------------------"

mkdir $RPM_BUILD_ROOT[11] /home/zl[12] -p

%build

%install

install -m 755 1.l $RPM_BUILD_ROOT/home/zl[13] 

%preun

if [ -z"`ps aux | grep nginx | grep -v grep`" ];then

killall nginx>/dev/null

exit 0

fi

%files

/home/zl/1.l

(エ)  制作rpm的命令:rpmbuild –ba 1.spec

生成的rpm包放在RPMS这个目录中

(オ)  安装包得命令:rpm –ivh 1-1-1.0.i386.rpm

卸载的命令:rpm –e 1


 [11]这个就是上面所言的BUILDROOT目录

在打包的时候,它就相当于是系统的根目录。因为要把1.l安装在/home/zl目录下,所以,我的虚拟安装目录也应该有这个目录,否则会报错。

 [12]我想把1.l安装在/home/zl目录下。你可以换一个

 [13]安装在哪里


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值