编译简单源码包

yum插件、rpm组件、原码包编译。
一、yum插件
yum软件包管理器可使用插件扩展其功能。
 
这时使用 yum 命令的时候,yum 总是会向你显示已启用的插件信息。


二、rpm组件
rpm软件包由三基本组件组成:
元数据:软件包名称、版本、发布、构建程序、日期、依赖关系等。
文件:软件包提供的文件存档(包括文件属性)。一般存储为cpio存档。
       rpm2cpio命令可用于提取所要的目录。
 
脚本:安装、更新和或删除软件包时,执行这些脚本。
三、编译简单原码包
rpm--import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
rpm-qa |grep gpg
原码包的好处:可扩展性的好。原码包,转成rpm
方法一:rpmbuild--rebuild xxx.src.rpm 就会生成xxx.rpm
方法二:rpm-ivh xxx.src.rpm它会生成它原代码,修改原代码,再生成rpm包。
1.创建rpm包的原始文件:
 
2.构建编译原码包的基本环境
 
3.创建specs文件
 
4.生成rpm包,安装测试
 
5.gpg签名:   yum -y localinstall host-1.0-1.x86_64.rpm
Package host-1.0-1.x86_64.rpm is not signed  没签名,不给安装!!!
 
[yjc@desktop22 ~]$ cphost-1.0-1.x86_64.rpm /tmp/
[yjc@desktop22 ~]$ gpg--export -a F749DD9 > RPM-GPG-KEY_yjc 导出公钥
[yjc@desktop22 ~]$ cp RPM-GPG-KEY_yjc/tmp/

[yjc@desktop22 tmp]# rpm-ivh host-1.0-1.x86_64.rpm                 [有NOKEY报错,但能安装]
[yjc@desktop22 tmp]# yum -ylocalinstall host-1.0-1.x86_64.rpm  [还是不能安装]
[yjc@desktop22 tmp]# rpm--import RPM-GPG-KEY_yjc  [导入key,解密rpm包]
[yjc@desktop22 tmp]# yum -ylocalinstall host-1.0-1.x86_64.rpm    [可以安装了]

[yjc@desktop22 rpmbuilds]$ ls BUILD/hom/yjc/host-1.0/host.sh
[yjc@desktop22 rpmbuilds]$ ls BUILDROOT/
[yjc@desktop22 rpmbuilds]$ ls SOURCES/host-1.0-1.tar.gz
[yjc@desktop22 rpmbuilds]$ ls SPECS/host.spec
[yjc@desktop22 rpmbuilds]$ls RPMS/x86_64/host-1.0-1.x86_64.rpm   [rpm包]
[yjc@desktop22 rpmbuilds]$ls SRPMS/host-1.0-1.x86_64.src.rpm     [源码包]

6.放置到yum仓库。安装测试。
   略!


分割线
感谢打赏
江西数库信息技术有限公司
YWSOS.COM 平台代运维解决方案
 评论
 发表评论
姓   名:

Powered by AKCMS