源码包安装和快捷的管理nginx,自定义命令管理服务
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了源码包安装和快捷的管理nginx,自定义命令管理服务相关的知识,希望对你有一定的参考价值。
安装线上的生产服务器软件包时大多会用源码安装,这是因为源码安装可以选择最新的软件包,而Linux系统自带的软件包一般都是最稳定的版本,但不能保证是最新的。源码安装还可以自行调整编译参数,最大化地定制安装结果。相对而言,源码安装的性能是最优异的。但该源码装的软件不能使用 systemctl 管理,启动,关闭,查看状态,重启比较麻烦,现在编写一个启动脚本,可以简单快捷的管理该软件
环境Red Hat Enterprise Linux Server release 7.0
安装源码包nginx-1.8.0.tar.gz放在/下
说明:nginx 是与 httpd 类似的 web 服务器软件,使用源码编译的方式安装该软件,该软件有几个依赖包:gcc,zlib-devel,pcre-devel
一.新建一个脚本
vim /root/test.sh
二.编写脚本内容
#!/bin/bash #脚本声明使用哪种解释器
yum -y install gcc pcre-devel openssl-devel #安装依赖包
tar -xf /root/nginx-1.8.0.tar.gz #解压源码包到当前文件夹
cd /root/nginx-1.8.0 #进入目录
./configure #对即将安装的软件进行配置
make #编译成二进制文件
make install #安装
执行脚本后校验结果:
检查/usr/local/nginx/目录是否有安装好的程序,在关闭 httpd 的情况下,执行如下命令启动 nginx 服务:
# /usr/local/nginx/sbin/nginx
客户端使用浏览器可以访问到默认的网站页面firefox 127.0.0.1
三.定义开启服务的函数,,新建一个脚本
提示: 上面安装的 nginx 软件,可以使用如下命令管理服务:
/usr/local/nginx/sbin/nginx
//启动服务,启动服务后会自动产生/usr/local/nginx/logs/nginx.pid 文件
/usr/local/nginx/sbin/nginx -s stop //关闭服务,关闭服务后/usr/local/nginx/logs/nginx.pid 文件会被自动删除
但该源码装的软件不能使用 systemctl 管理,启动,关闭,查看状态,重启比较麻烦,现在编写一个启动脚本,可以简单快
捷的管理该软件
vim /root/test1.sh
脚本内容
#!/bin/bash
PID=/usr/local/nginx/logs/nginx.pid
start(){
if [ -f
$PID ];then
echo "服务已经启动"
else
/usr/local/nginx/sbin/nginx
fi
}
#定义关闭服务的函数
stop(){
if
[ ! -f $PID ];thenecho "该服务已经关闭"
else
/usr/local/nginx/sbin/nginx -s stop
fi
}
#定义查看状态的函数
status(){
if [ -f
$PID ];then
echo "该服务已启动"
else
echo "该服务已经关闭"
fi
}
#定义主代码,判断用户的位置参数,根据用户的不同参数,执行不同的函数代码
case $1 in
start)
start;;
stop)
stop;;
restart)
stopstart;;
status)
status;;
*)
echo "用法$0 [start|stop|restart|status] "
Esac
四.验证脚本:
/root/test1.sh start
/root/test1.sh stop
/root/test1.sh restart
/root/test1.sh status
以上是关于源码包安装和快捷的管理nginx,自定义命令管理服务的主要内容,如果未能解决你的问题,请参考以下文章