最近一段时间学了shell,分享一下自己写的nginx安装脚本
1 #!/bin/bash
2 # * Author :
3 # * Email :
4 # * Create time : 2022-05-18 17:53
5 # * Filename : nginx_install.sh
6 # * Description :
7
8 #define variable
9 nginx_pak_file="nginx-1.2.9.tar.gz"
10 nginx_source_file=`echo $nginx_pak_file | cut -d "." -f1-3`
11 nginx_install_local="/usr/local/nginx"
12 nginx_user="www"
13 nginx_group="www"
14
15 #check envirnment
16 check () {
17 #check permission
18 if [ $USER != 'root' ];then
19 echo -e "\033[31m No permission implement $0 ,Need root permission!\033[0m"
20 exit 1
21 fi
22
23 #check wget implement
24 if [ ! -x /usr/bin/wget ];then
25 echo "install wget..."
26 if yum install -y wget 1> /dev/null;then
27 echo -e "install wget\033[32msuccess\033[0m"
28 else
29 echo -e "install wget\033[31mfail\033[0m"
30 exit 1
31 fi
32 fi
33 #check network
34 if ping -c4 baidu.com 1> /dev/null;then
35 echo -e "\033[32m Network normal\033[0m"
36 else
37 echo -e "\033[32mNetwork no normal\033[0m"
38 exit 1
39 fi
40 }
41 check
42 #install prepare
43 install_prc () {
44 #install depend
45 if yum install -y gcc-* pcre-devel zlib-devel elinks 1>/dev/null;then
46 echo -e "\033[32mSUCCESS\033[0m:yum install success"
47 else
48 echo -e "\033[31mERROR\033[0m:yum install fail"
49 exit 1
50 fi
51
52 #wget nginx package
53 if wget https://nginx.org/download/$nginx_pak_file 1>/dev/null;then
54 tar -zxf $nginx_pak_file
55 if [ ! -d $nginx_source_file ];then
56 echo -e "tar $nginx_pak_file \033[31mfail\033[0m"
57 exit 1
58 fi
59 else
60 echo -e "wget $nginx_pak_file \033[31mfail\033[0m"
61 exit 1
62 fi
63
64 }
65 install_prc
66 #install nginx
67 install_nginx () {
68 useradd -r -s /sbin/nologin www
69 cd $nginx_source_file
70 echo -e "\033[36m configure....\033[0m"
71 if ./configure --prefix=$nginx_install_local --user=$nginx_user --group=$nginx_group 1> /dev/null;then
72 echo -e "configure \033[32msuccess\033[0m"
73 if make 1>/dev/null;then
74 echo -e "make \033[32msuccess\033[0m"
75 if make install 1> /dev/null;then
76 echo -e "maker install \033[32msuccess\033[0m"
77 else
78 echo -e "\033[31mERROR\033[0m:make install fail"
79 exit 1
80 fi
81 else
82 echo -e "\033[31mERROR\033[0m:make fail"
83 exit 1
84 fi
85 else
86 echo -e "\033[31mERROR\033[0m:configure fail"
87 exit 1
88 fi
89 }
90 install_nginx
91 #test nginx
92 nginx_test () {
93 if $nginx_install_local/sbin/nginx;then
94 echo -e "nginx start \033[32msuccess\033m[0m"
95 elinks http://localhost -dump
96 else
97 echo -e "nginx start \033[31mfail\033m[0m"
98 fi
99
100 }
101 nginx_test