博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux运维、架构之路-rpm定制、本地yum仓库搭建
阅读量:4712 次
发布时间:2019-06-10

本文共 2746 字,大约阅读时间需要 9 分钟。

一、定制rpm包

1、环境

[root@m01 ~]# cat /etc/redhat-release CentOS release 6.9 (Final)[root@m01 ~]# uname -r2.6.32-696.el6.x86_64[root@m01 ~]# /etc/init.d/iptables statusiptables: Firewall is not running.[root@m01 ~]# getenforce Disabled[root@m01 ~]# hostname -I172.19.5.61 172.16.1.61

2、安装FPM

yum install ruby rubygems ruby-devel -y #安装ruby模块gem sources -a http://mirrors.aliyun.com/rubygems/ #添加国内源gem sources --remove http://rubygems.org/          #移除原生的Ruby仓库gem install fpm                                    #安装fpmgem install fpm -v 1.4.0错误:Building native extensions.  This could take a while...Building native extensions.  This could take a while...ERROR:  Error installing fpm:解决:安装旧版本的fpmgem install fpm -v 1.4.0

3、FPM命令参数介绍

fpm --help-s 指定源类型-t 指定目标类型,既想要制作成什么包-n 指定包的名字-v 指定包的版本号-C 指定打包的相对路径-d 指定依赖于哪些包-f 第二次打包时目录下如果有同名安装包存在,则覆盖它-p 输出安装包的目录,不想放在当前目录下就需要指定 

二、FPM实战打包NMP

1、实战打包Nginx

fpm -s dir -t rpm -n nginx -v 1.10.3 -d 'pcre-devel,openssl-devel' --post-install /server/scripts/nginx_rpm.sh /application/nginx-1.10.3

2、实战打包PHP

fpm -s dir -t rpm -n php -v 5.5.32 -d 'zlib libjpeg freetype libpng gd curl zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel libjpeg-turbo-devel libcurl-devel libxslt-devel libmcrypt-devel mhash mcrypt' --post-install /server/scripts/php_rpm.sh -f /application/php-5.5.32/

3、实战打包MySQL

fpm -s dir -t rpm -n mysql -v 5.6.36 -d 'ncurses-devel libaio-devel cmake' --post-install /server/scripts/mysql_rpm.sh /application/mysql-5.6.36 /etc/init.d/mysqld /etc/my.cnf /etc/profile

4、脚本文件

#nginx_rpm.sh#useradd -s /sbin/nologin -M wwwln -s /application/nginx-1.10.3/ /application/nginxln -s /application/nginx/sbin/nginx  /usr/local/sbin/#php_rpm.sh##!/bin/shln -s /application/php-5.5.32/ /application/php#mysql_rpm.sh##!/bin/shuseradd -s /sbin/nologin -M mysqlln -s /application/mysql-5.6.36/ /application/mysqlchown -R mysql.mysql /application/mysql-5.6.36/

5、其它机子测试

yum localinstall nginx-1.6.2-1.x86_64.rpm -y

三、yum仓库搭建

1、安装createrepo

yum install createrepo -y #创建yum源软件

2、创建yum仓库目录并初始化repodata索引文件

mkdir -p /application/yum/centos6.9/x86_64/cd /application/yum/centos6.9/x86_64/ #拷贝rpm包到此目录createrepo -pdo /application/yum/centos6.9/x86_64/ /application/yum/centos6.9/x86_64/

3、提供yum服务

python -m SimpleHTTPServer 80 &>/dev/null & #python的http模块

4、如果有新的rpm包放入必须更新

createrepo --update /application/yum/centos6.9/x86_64/

5、客户端修改yum源

cd /etc/yum.repos.d/vi local.repo[onlylady]name=Serverbaseurl=http://172.19.5.61enable=1gpgcheck=0yum clean all  #清除本地缓存yum --enablerepo=local --disablerepo=base,extras,updates list #显示本地yum源列表#安装nginx为例#yum --enablerepo=local --disablerepo=base,extras,updates,epel install nginx -y

6、yum命令参数

转载于:https://www.cnblogs.com/yanxinjiang/p/8109933.html

你可能感兴趣的文章
u-boot启动第一阶段
查看>>
MySQL批量SQL插入性能优化
查看>>
定义列属性:null,default,PK,auto_increment
查看>>
用户画像展示
查看>>
C#中StreamReader读取中文出现乱码
查看>>
使用BufferedReader的时候出现的问题
查看>>
批处理文件中的路径问题
查看>>
hibernate出现No row with the given identifier exists问题
查看>>
为什么wait()和notify()属于Object类
查看>>
配置NRPE的通讯
查看>>
匹配两个空格之间的字符。。。
查看>>
CSS 文字溢出 变成省略号 ...
查看>>
Spring事务
查看>>
java编程基础(三)流程控制语句
查看>>
让数据库跑的更快的7个MySQL优化建议
查看>>
jquery 取id模糊查询
查看>>
解决在vue中,自用mask模态框出来后,下层的元素依旧可以滑动的问题
查看>>
PAT(B) 1014 福尔摩斯的约会(Java)
查看>>
PAT甲级题解-1123. Is It a Complete AVL Tree (30)-AVL树+满二叉树
查看>>
项目开发总结报告(GB8567——88)
查看>>