2017-10-25
编译简单源码包
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仓库。安装测试。
略!
评论
发表评论
姓 名: