前期环境准备:
关闭SELINUX  :   setenforce 0
关闭SELINUX  :   sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
停止防火墙    :     /etc/init.d/iptables stop 
停止防火墙开机启动:   chkconfig --level 3 off
更改为保存安装包   keepcache=1


调试命令:curl 10.0.0.3
启动命令:/application/nginx/sbin/nginx
可选安装:   yum -y iinstall lrzsz

mkdir -p /application/tools
  #创建目录
cd /application/tools            #进入目录




1. fpm安装:(因为fpm是用ruby写的,因此需要有ruby的系统环境,版本需要大于1.8.5)     ruby rubygems  ruby-devel 3个软件  需要安装
1. [root@localhost ~]# yum -y install ruby rubygems ruby-devel   ## 这里面貌似要安装1.8.7的ruby 

2. [root@localhost ~]# yum install lrzsz        //----如果系统没有安装这个软件就需要安装一下 

3    gem install fpm -v 1.3.3   ## 安装 fpm工具

4.  gem install json -v 1.8.3   ## 安装json

5.   gem install ffi -v 1.9.18  安装 ffi

6. find /var/cache/ -type f -name '*rpm' |xargs cp -t /tmp/   ## 临时包拷贝到 tmp

7. cd /tmp/ && tar zcf nginx_yum.tar.gz *.rpm   ### 打包位rpm包

8. sz nginx_yum.tar.gz   ## 下载到本地

2. 下载阿里云的源,更换新的源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo     ## 下载源

gem source -a http://mirrors.aliyun.com/rubygems/              ## 添加新yum源 (https中 http应该改成https)


gem source --remove http://rubygems.org/                          ## 移除老yum源


gem source --list                                   //查看源地址  gem命令无法使用请安装下面的ruby

3.创建用户
useradd nginx -M -s /sbin/nologin

cd /application/tools/

tar xf nginx-1.6.3.tar.gz



4. 编译安装nginx
1.    ./configure --prefix=/application/nginx-1.6.3 --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module

2.     make && make install


5. 创建软连接
ln -s /application/nginx-1.6.3/ /application/nginx

mkdir -p /server/scripts/



6.编写脚本,创建相关用户
cd /server/scripts/      ##脚本写学 该目录
vi nginx_rpm.sh


内容:
useradd nginx -M -s /sbin/nologin

ln -s /application/nginx-1.6.3/ /application/nginx



7. fpm 安装打包
fpm -s dir -t rpm -n nginx -v 1.6.3 -d 'pcre-devel,openssl-devel' --post-install /server/scripts/nginx_rpm.sh -f /application/nginx-1.6.3/



8. 下载到其他服务器安装后效果:

完成!!:

出现以下瑕疵待解决:

里程碑1: 能够一键执行后  创建用户和 软连接
yum -y localinstall nginx-1.6.2-1.x86_64.rpm
   ## 必须 使用 yum -y localinstall nginx-1.6.2-1.x86_64.rpm
  
里程碑2:   配置 chkconfig 和 安装完成后立即启动

待完成!

###里程碑1的思路
初步是想在创建用户的那个脚本里直接添加 创建用户领命和 软连接操作
以及完成yum安装这两个rpm包的操作

###l里程碑2的 chkconfig 思路 
在/etc/init.d/rc3.d/   创建一个名为 nginx 的文件 文件中写入: 
# chkconfig: 2345 100 200
# description: SSH is a protocol for secure remote shell access.
 . /application/nginx 

然后使用chkconfig --add  nginx   添加入系统服务中
那么他开机就会启动了

里程碑1和2  会在近期进行测试.完成后会在这个帖子中进行更新.  
2018年4月16日 2:06:46 



FPM包定制完成 (等待实现 里程碑 1 和 2) 2018年4月13日 2:18:32的更多相关文章

  1. [分享] 从定制Win7母盘到封装详细教程 By BILL ( 10月23日补充说明 )

    [分享] 从定制Win7母盘到封装详细教程 By BILL ( 10月23日补充说明 ) billcheung 发表于 2011-10-23 00:07:49 https://www.itsk.com ...

  2. pycharm2018.1.4激活破解方法与汉化包-2018年6月19日

    记录下来备用,顺便分享给大家,有能力的还是希望能够支持正版!支持正版!支持正版! 方法1:激活服务器,最简单快速(截止2018年6月19日可用) 在激活Jetbrains旗下任意产品的时候选择激活服务 ...

  3. FPM简介(定制rpm包)

    FPM简介 fpm是生成rpm包的工具.rpm包的制作,采用fpm工具完成,FPM非常易用,此命令可以把rpm包的安装.卸载做得更加优雅,在安装前可以做一些准备工作,安装后可以做一些收尾工作,在卸载前 ...

  4. RPM包定制

    概述 问题:当领导给你 100 台已经安装好系统的服务器,然后让优化,让你提出一个快速部署方案.解答: 1.tar 打包 先编译安装 打包-->分发-->解包(比如 mysql 打包后直接 ...

  5. 96、linux之rpm包定制

    96.1.rpm包定制介绍: 编译安装软件,优点是可以定制化安装目录.按需开启功能等,缺点是需要查找并实验出适合的编译参数,诸如MySQL之类的软件编译耗时过长. yum安装软件,优点是全自动化安装, ...

  6. Android ROM包定制(解包,增删模块,打包)

    1. 解包 假设有一个名为update.zip的ROM包,我们要在Ubuntu下对它进行定制.首先把system.transfer.list和system.new.dat.br(有些旧版的系统的镜像可 ...

  7. 4月8日 python学习总结 模块与包

    一.包 #官网解释 Packages are a way of structuring Python's module namespace by using "dotted module n ...

  8. 2019年9月3日安卓凯立德全分辨率(路况)夏季版C3551-C7M24-3K21J25懒人包

    拷贝懒人包NaviOne文件夹到机器根目录或内存卡根目录下:安装其中的apk程序 2019凯立德C3551-C7M24-3K21J25新组合懒人包 [分辨率]:自适应 [适用系统]:Android2. ...

  9. 连接池设置导致的“血案” 原创: 一页破书 一页破书 5月6日 这个问题被投诉的几个月了,一直没重视——内部客户嘛😿 问题现象: 隔几周就会出现 A服务调用B服务超时 脚趾头想就是防火墙的问题,A、B两服务之间有防火墙 找运维查看防火墙日志确实断掉了tcp连接,但是是因为B服务5分钟没有回包,下面这个表情就是我当时的心情——其实我们在防火墙、A服务、B服务都抓包了,几十个G的t

    连接池设置导致的“血案” 原创: 一页破书 一页破书 5月6日 这个问题被投诉的几个月了,一直没重视——内部客户嘛

随机推荐

  1. POJ1159:动态规划

    Palindrome Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 60290   Accepted: 20998 Desc ...

  2. svn-clearup 报错的处理(Cleanup failed to process the following paths...)

    在使用 svn 客户端执行操作失败后,执行 Clean up 操作也报错:Cleanup failed to process the following paths... ,一直不知道是什么原因.通常 ...

  3. install命令和cp命令的区别

    基本上,在Makefile里会用到install,其他地方会用cp命令. 它们完成同样的任务——拷贝文件,它们之间的区别主要如下: 1.最重要的一点,如果目标文件存在,cp会先清空文件后往里写入新文件 ...

  4. 网络监控之一:ss(Socket Statistics)

    ss是Socket Statistics的缩写. 顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容.但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的 ...

  5. CKEditor 自定义按钮插入服务端图片

    CKEditor 富文本编辑器很好用,功能很强大,在加上支持服务端图片上传的CKFinder更是方便, 最近在使用CKFinder的时候发现存在很多问题,比如上传图片的时候,图片不能按时间降序排列,另 ...

  6. unittest添加测试用例方法

    1. suite=unittest.TestLoader().loadTestsFromTestCase(changedTestHJ)unittest.TextTestRunner(verbosity ...

  7. Ubuntu中vi命令的使用

    指今说明: 进入 vi 的命令vi filename: 打开或新建文件,并将光标置于第一行首 vi +n filename: 打开文件,并将光标置于第n行首 vi + filename: 打开文件,并 ...

  8. Python的安装以及路径的设置(python的下载地址:www.python.org)

    在有的Python版本中在安装时,我们的可以再安装时选择Python路径的自动配备 在选择python的安装程序的时候,我们尽量选择python的2.版本,因为随着Python的更新,Python的数 ...

  9. windows python-mysql 安装

    https://www.cnblogs.com/gbx-bo/p/5993190.html

  10. css背景图片位置:background的position(转)

    css背景图片位置:background的position   position的两个参数:水平方向的位置,垂直方向的位置----------该位置是指背景图片相对于前景对象的 1.backgroun ...