ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

使用shell脚本自动安装web服务

2021-05-24 15:29:46  阅读:126  来源: 互联网

标签:脚本 web shell redis dev echo usr mysql local


脚本内的配置文件是我提前配置好方便使用的

#!/bin/bash
echo "防火墙,selinux自己手动关闭"
ip=`ifconfig | sed -n 2p|awk -F ' ' '{print $2}'`
echo "本机ip是:"$ip
useradd -s /sbin/nologin www -M
echo "创建nginx用户成功"
yum -y install gcc  gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel &> /dev/null
while :
do
    if [ $? -ne 0 ];then
        echo "gcc  gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel安装未成功请重新安
装"
        yum -y install gcc  gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel &> /dev/null
    else
        echo "gcc  gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel安装成功"
    fi
        break
done
cd /root/package
tar xzvf nginx-1.19.6.tar.gz &> /dev/null
cd nginx-1.19.6
./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module &> /dev/null
if [ $? -eq 0 ];then
    echo "nginx编译成功"
else
    echo "nginx没有编译失败,请检查配置"
fi

make &> /dev/null
make install &> /dev/null
if [ $? -eq 0 ];then
    echo "nginx安装成功"
else
    echo "nginx安装失败,请检查配置"

fi
mv /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak
cp -r /root/package/nginx.conf /usr/local/nginx/conf/
sed -i "s/47.94.229.237/"${ip}"/g" /usr/local/nginx/conf/nginx.conf
/usr/local/nginx/sbin/nginx
if [ $? -eq 0 ];then
    echo "nginx启动成功"
else
    echo "nginx启动失败,请检查配置"
fi
cd /root/package
tar xzvf rarlinux-x64-6.0.1.tar.gz &> /dev/null
cd rar
make &> /dev/null
make install &> /dev/null
if [ $? -eq 0 ];then
    echo "rar安装成功"
else
    echo "rar安装失败,请检查配置"
fi
echo "rar压缩解压包安装成功"
cd /root/package
mv webs /opt/
cp -r  static /opt/
echo "尝试访问web:端口有81 85 86 92"
yum -y remove mysql-libs &> /dev/null
echo "mysql-libs卸载成功"
mkdir /usr/local/mysql
tar xvf mysql-8.0.15-1.el7.x86_64.rpm-bundle.tar -C /usr/local/mysql/ &> /dev/null
if [ $? -eq 0 ];then
    echo "mysql解压成功"
else
    echo "mysql解压失败,请检查配置"
fi
cd /usr/local/mysql
rpm -ivh mysql-community-common-8.0.15-1.el7.x86_64.rpm &> /dev/null
if [ $? -eq 0 ];then
    echo "mysql-community-common-8.0.15-1.el7.x86_64.rpm安装成功"
else
    echo "mysql-community-common-8.0.15-1.el7.x86_64.rpm安装失败,请检查配置"
fi

rpm -ivh mysql-community-libs-8.0.15-1.el7.x86_64.rpm &> /dev/null
if [ $? -eq 0 ];then
    echo "mysql-community-libs-8.0.15-1.el7.x86_64.rpm安装成功"
else
    echo "mysql-community-libs-8.0.15-1.el7.x86_64.rpm安装失败,请检查配置"
fi

rpm -ivh mysql-community-client-8.0.15-1.el7.x86_64.rpm &> /dev/null
if [ $? -eq 0 ];then
    echo "mysql-community-client-8.0.15-1.el7.x86_64.rpm安装成功"
else
    echo "mysql-community-client-8.0.15-1.el7.x86_64.rpm安装失败,请检查配置"
fi

rpm -ivh mysql-community-server-8.0.15-1.el7.x86_64.rpm &> /dev/null
if [ $? -eq 0 ];then
    echo "mysql-community-server-8.0.15-1.el7.x86_64.rpm安装成功"
else
    echo "mysql-community-server-8.0.15-1.el7.x86_64.rpm安装失败,请检查配置"
fi

rpm -ivh mysql-community-devel-8.0.15-1.el7.x86_64.rpm &> /dev/null
if [ $? -eq 0 ];then
    echo "mysql-community-devel-8.0.15-1.el7.x86_64.rpm安装成功"
else
    echo "mysql-community-devel-8.0.15-1.el7.x86_64.rpm安装失败,请检查配置"
fi

systemctl start mysqld
if [ $? -eq 0 ];then
    echo "mysql启动成功"
else
    echo "mysql启动失败"
fi
systemctl enable mysqld
echo "数据库加入自启成功"
mysql_password=`cat /var/log/mysqld.log | grep root@localhost | awk '{ print $13 }'`
mysql --connect-expired-password -uroot -p$mysql_password -e "set global validate_password.policy=LOW;" &> /dev/null
mysql --connect-expired-password -uroot -p$mysql_password -e "set global  validate_password.length=6;" &> /dev/null
mysql --connect-expired-password -uroot -p$mysql_password -e "ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';" &> /dev/null
echo "mysql修改策略和密码成功,下面查看mysql密码策略"
mysql --connect-expired-password -uroot -p123456 -e " SHOW VARIABLES LIKE 'validate_password%';"
cd /root/package
tar xzvf redis-5.0.9.tar.gz -C /usr/local/ &> /dev/null
if [ $? -eq 0 ];then
    echo "redis解压成功"
else
    echo "redis解压失败"
fi
mv /usr/local/redis-5.0.9/ /usr/local/redis

cd /usr/local/redis &> /dev/null
echo "正在编译安装,请稍等......"
make  &> /dev/null
if [ $? -eq 0 ];then
    echo "redis编译成功"
else
    echo "redis编译失败"
fi
make install &> /dev/null
if [ $? -eq 0 ];then
    echo "redis编译安装成功"
else
    echo "redis编译安装失败"
fi
cd /root/package
cp -rf redis_cluster /usr/local/
cd /usr/local/redis_cluster
sed -i "s/172.17.114.177/"${ip}"/g" /usr/local/redis_cluster/6380/redis.conf
sed -i "s/172.17.114.177/"${ip}"/g" /usr/local/redis_cluster/6381/redis.conf
sed -i "s/172.17.114.177/"${ip}"/g" /usr/local/redis_cluster/6382/redis.conf
sed -i "s/172.17.114.177/"${ip}"/g" /usr/local/redis_cluster/6383/redis.conf
sed -i "s/172.17.114.177/"${ip}"/g" /usr/local/redis_cluster/6384/redis.conf
sed -i "s/172.17.114.177/"${ip}"/g" /usr/local/redis_cluster/6385/redis.conf
cp -rf /usr/local/redis/src/ /usr/local/redis_cluster/6380/
cp -rf /usr/local/redis/src/ /usr/local/redis_cluster/6381/
cp -rf /usr/local/redis/src/ /usr/local/redis_cluster/6382/
cp -rf /usr/local/redis/src/ /usr/local/redis_cluster/6383/
cp -rf /usr/local/redis/src/ /usr/local/redis_cluster/6384/
cp -rf /usr/local/redis/src/ /usr/local/redis_cluster/6385/
chmod 777 start-all.sh
./start-all.sh
cp /usr/local/redis/src/redis-cli /usr/local/redis_cluster/
echo "正在创建集群,请稍等......"
echo "yes" | ./redis-cli  -a 123456 --cluster  create  $ip:6380 $ip:6381 $ip:6382 $ip:6383 $ip:6384  $ip:6385 --cluster-replicas 1 &> /dev/null
if [ $? -eq 0 ];then
    echo "redis集群创建成功"
else
    echo "redis集群创建失败,请检查配置"
fi
echo "下面查看redis进程"
ps -ef | grep redis
if [ $? -eq 0 ];then
    echo "redis启动成功"
else
    echo "redis启动失败,请检查配置"
fi

cd /root/package
rpm -ivh jdk-8u261-linux-x64.rpm &> /dev/null
if [ $? -eq 0 ];then
    echo "java安装成功"
else
    echo "java安装失败,请检查配置"
fi
sed -i '$a\export JAVA_HOME=/usr/java/jdk1.8.0_261-amd64' /etc/profile
sed -i '$a\export NODE_HOME=/usr/local/share/node-v14.15.1' /etc/profile
sed -i '$a\export PATH=$PATH:$JAVA_HOME/bin:$NODE_HOME/bin:/usr/local/nginx/sbin' /etc/profile
source /etc/profile
if [ $? -eq 0 ];then
    echo "java环境使用成功"
else
    echo "java环境使用失败,请检查配置"
fi
echo "java版本如下"
java -version


标签:脚本,web,shell,redis,dev,echo,usr,mysql,local
来源: https://blog.csdn.net/mazhiwb/article/details/117224367

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有