建立本地YUM源的初衷是按照自己的需求打包rpm包并在内网装机时直接部署。所以先来介绍一下RPM包的打包工具,我选择的是FPM来打包。
FPM on github:https://github.com/jordansissel/fpm
FPM安装
1 2 3 4 5 6 7 8 9 10 11 12 13
| yum install ruby rubygems ruby-devel ruby-rdoc rpm-build gcc -y
gem sources --remove http://rubygems.org/ gem sources -a https://ruby.taobao.org/ gem sources -l *** CURRENT SOURCES ***
https://ruby.taobao.org
gem install fpm
|
FPM使用编译好的软件目录打包RPM,所以在打包之前,需要先编译好软件。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| FPM常用打包命令解析(更多命令请fpm --help): fpm -s dir \ -t rpm \ -n smm-nginx \ -v 1.8.0 \ --iteration 1 \ -d 'pcre >= 7.8' \ -d 'pcre-static >= 7.8' \ -d 'pcre-devel >= 7.8' \ -d 'openssl-perl >= 1.0.1e' \ -d 'openssl-static >= 1.0.1e' \ -d 'openssl >= 1.0.1e' \ -d 'openssl-devel >= 1.0.1e' \ -d 'openssl098e >= 0.9.8e' \ -m \ --vendor SMM IT \ --description SMM Nginx Version \ --url http://www.smm.cn \ --before-install pre-nginx.sh \ --after-remove \ --rpm-init nginx \ /usr/local/webserver/nginx/
|
有了自定义的RPM之后,就可以自建本地yum源了
1 2 3
| yum install createrepo -y createrepo -p -d -o /yum/Packages/ /yum/Packages/ createrepo --update /yum/Packages
|