思路:自动化脚本安装ngnix项目
1,判断本地yum 源安装情况。
2,判断与安装ngnix的依赖包 gcc gcc-c++ pcre-devel openssl-devel
3,判断 /root/下,是否有/ngnix-make 目录来存放nginx-1.10.2.tar.gz
如没有则需要创建,被下载ngnix安装源码包到该目录下。
4,正常编译安装ngnix 以及相关配置情况。
脚本代码如下:
#! /bin/bash
#author:小伟
#安装本地yum源
umount /dev/sr0 /media/cdrom &>/dev/null
mount /dev/sr0 /media/cdrom &>/dev/null
if [ $? -eq 0 ]; then
echo "yum已经被挂载,继续进行下面操作。。。。。。"
else
echo "请手机先挂载光盘" && exit
fi
yum -y install gcc gcc-c++ &>/dev/null
#安装ngnix
#安装ngnix依赖包pcre-devel openssl-devel
rpm -q pcre-devel &>/dev/null
[ $? -eq 0 ]&& echo "pcre-devel依赖包存在,无需安装" || yum -y install pcre-devel &>/dev/null
rpm -q openssl-devel &>/dev/null
[ $? -eq 0 ]&& echo "openssl-devel依赖包存在,无需安装" || yum -y install openssl-devel &>/dev/mull
#删除系统原有的nginx-1.10.2目录
cd /usr/local/
rm -rf nginx-1.10.2 &>/dev/null
#编译安装ngnix
cd /root
[ ! -d ngnix-make ] && mkdir ngnix-make && echo "nginx-1.10.2.tar.gz 安装包不存在,清先下载安装包" && exit || cd /root/ngnix-make
[ ! -f nginx-1.10.2.tar.gz ] && echo "安装包不存在" && exit || tar xf nginx-1.10.2.tar.gz -C/usr/local
useradd -s /sbin/nologin -M www &>/dev/null
sleep 5
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
if [ $? -eq 0 ]; then
echo "ngnix编译完成"
fi
ln -s /usr/local/nginx/sbin/* /usr/local/sbin/
cd /usr/local/nginx/conf/
egrep -v "#|^$" nginx.conf.default > nginx.conf
/usr/local/nginx/sbin/nginx &>/dev/null
if [ $? -eq 0 ]; then
echo "ngnix安装完成。"
else
echo "ngnix安装失败,即将退出" && exit
fi