Files
2017-05-30 22:09:10 +08:00

114 lines
2.0 KiB
Bash

#!/bin/bash
# this is a setup scripts for nginx
# author: luoning
# date: 09/05/2014
# setup nginx
NGINX_PATH_7=http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
NGINX_PATH_6=http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
print_hello(){
echo "==========================================="
echo "$1 nginx for TeamTalk"
echo "==========================================="
}
check_user() {
if [ $(id -u) != "0" ]; then
echo "Error: You must be root to run this script, please use root to install nginx"
exit 1
fi
}
check_os() {
OS_VERSION=$(less /etc/redhat-release)
OS_BIT=$(getconf LONG_BIT)
#echo "$OS_VERSION, $OS_BIT bit..."
if [[ $OS_VERSION =~ "CentOS" ]]; then
if [ $OS_BIT == 64 ]; then
return 0
else
echo "Error: OS must be CentOS 64bit to run this script."
exit 1
fi
else
echo "Error: OS must be CentOS 64bit to run this script."
exit 1
fi
}
check_run() {
ps -ef | grep -v 'grep' | grep nginx
if [ $? -eq 0 ]; then
echo "Error: nginx is running."
exit 1
fi
}
clean_yum() {
YUM_PID=/var/run/yum.pid
if [ -f "$YUM_PID" ]; then
set -x
rm -f YUM_PID
killall yum
set +x
fi
}
install_nginx() {
#yum -y install yum-fastestmirror
clean_yum
CENTOS_VERSION=$(less /etc/redhat-release)
if [[ $CENTOS_VERSION =~ "7" ]]; then
rpm -ivh $NGINX_PATH_7
else
rpm -ivh $NGINX_PATH_6
fi
yum -y install nginx
if [ $? -eq 0 ]; then
echo "yum install nginx successed";
else
echo "Error: yum install nginx failed";
exit 1;
fi
service nginx start
if [ $? -eq 0 ]; then
echo "test to start nginx successed";
else
echo "Error: test to stop nginx failed";
exit 1;
fi
service nginx stop
}
print_help() {
echo "Usage: "
echo " $0 check --- check environment"
echo " $0 install --- check & run scripts to install"
}
case $1 in
check)
print_hello $1
check_user
check_os
check_run
;;
install)
print_hello $1
check_user
check_os
check_run
install_nginx
;;
*)
print_help
;;
esac