标签:命令 路径 evel etc 安装完成 pen sync uninstall compress
版权归属原作者,原文转自:https://www.cnblogs.com/saneri/p/5265661.html
date:2018-10-12 18:48:25
支持的源类型包:
支持的目标类型包:
FPM的安装:
安装ruby环境和gem命令:
|
1
|
yum -y install ruby rubygems ruby-devel |
gem命令是从rubygem仓库安装软件类似yum从yum仓库安装软件
查看当前源:
|
1
2
3
|
[root@localhost~]# gem source list*** CURRENT SOURCES ***http://rubygems.org/ |
添加国内源:
|
1
|
[root@localhost~]# gem sources -a http://mirrors.aliyun.com/rubygems/ |
移除国外源:
|
1
|
[root@localhost~]# gem sources --remove http://rubygems.org/ |
安装FPM工具:
|
1
|
[root@localhost~]# gem install fpm |
|
1
|
[root@loaclhost~]#sed -i ‘s#keepcache=0#keepcache=1#g‘ /etc/yum.conf //开启yum缓存 |
FPM常用参数:
-s:指定源类型 -t:指定目标类型,即想要制作为什么包 -n:指定包的名字 -v:指定包的版本号 -C:指定打包的相对路径 -d:指定依赖于哪些包 -f:第二次包时目录下如果有同名安装包存在,则覆盖它 -p:输出的安装包的目录,不想放在当前目录下就需要指定 --post-install:软件包安装完成之后所要运行的脚本;同--offer-install --pre-install:软件包安装完成之前所要运行的脚本;同--before-install --post-uninstall:软件包卸载完成之后所要运行的脚本;同--offer-remove --pre-uninstall:软件包卸载完成之前所要运行的脚本;同—before-remove
安装遇到问题:
|
1
2
3
4
5
6
7
|
1.Need executable ‘rpmbuild‘ to convert dir to rpm {:level=>:error}解决方法:[root@localhost]# yum install -y rpm-build2.如果里面有gcc make的错误.解决方法:yum install -y gcc |
fpm打包实例:
1.fpm打包Nginx
|
1
2
3
4
|
[root@localhost opt]# fpm -s dir -t rpm -n nginx -v 1.6.1 -d ‘pcre-devel,openssl-devel‘ --post-install /opt/nginx_rpm.sh -f /opt/nginx/ <br>no value for epoch is set, defaulting to nil {:level=>:warn}no value for epoch is set, defaulting to nil {:level=>:warn}Created package {:path=>"nginx-1.6.1-1.x86_64.rpm"} |
2.fpm相对路径打包:
|
1
2
3
4
|
[root@localhost~]# fpm -s dir -t rpm -n opt -v 1.1.1.1 -d ‘gcc,gcc+‘ -C ../opt/ no value for epoch is set, defaulting to nil {:level=>:warn}no value for epoch is set, defaulting to nil {:level=>:warn}Created package {:path=>"opt-1.1.1.1-1.x86_64.rpm"} |
3.使用fpm将生成包指定到/tmp下:
|
1
2
3
4
5
|
[root@bogon ~]# fpm -s dir -t rpm -n ansible-v 1.1.1.1 -d ‘gcc,gcc+‘ -f ansible-p /tmp/no value for epoch is set, defaulting to nil {:level=>:warn}no value for epoch is set, defaulting to nil {:level=>:warn}Created package {:path=>"/tmp/ansible-1.1.1.1-1.x86_64.rpm"} |
查看rpm包信息:
1.查看rpm执行的脚本
|
1
2
3
4
|
[root@localhost opt]# rpm -qp --scripts nginx-1.6.1-1.x86_64.rpm postinstallscriptlet (using /bin/sh):#!/bin/bashuseraddnginx -M -s /sbin/nologin |
2.查看rpm包的依赖
|
1
2
3
4
5
|
[root@localhost opt]# rpm -qpR nginx-1.6.1-1.x86_64.rpm openssl-devel/bin/shrpmlib(PayloadFilesHavePrefix) <= 4.0-1rpmlib(CompressedFileNames) <= 3.0.4-1 |
3.查看rpm包中的内容:
|
1
|
rpm -qpl zabbix-3.0-1.x86_64.rpm |
镜像同步公网YUM源:
|
1
2
3
4
|
centos官方标准源:rsync://mirrors.ustc.edu.cn/centos/6/os/x86_64/rsync://mirrors.ustc.edu.cn/centos/6/extras/x86_64/rsync://mirrors.ustc.edu.cn/centos/6/updates/x86_64/ |
epel源:
|
1
|
rsync://mirrors.ustc.edu.cn/epel/6/x86_64/ |
命令:reposync
标签:命令 路径 evel etc 安装完成 pen sync uninstall compress
原文地址:https://www.cnblogs.com/kaishirenshi/p/9780156.html