#!/bin/bash
#redis的编译安装
redislevel=6.2.7
exist=$(whereis redis | awk '{print $2}')
fname=/root/redis-${redislevel}.tar.gz
#判断是否以root用户执行改脚本
if [ $UID -ne 0 ];
then
echo "请用root用户执行$0"
exit
fi
#判断是否安系统是否装过redis
if [ ! -z "${exist}" ];
then
echo "您的系统已经部署过redis了..."
echo "或您的系统还有redis残留文件..."
echo "可以使用 "whereis redis" 和 "find / -name redis" 查找清空掉残留文件..."
exit
fi
#检测网络通信情况
ping baidu.com -c 1 -i 0.1 -W 1 &>/dev/null
if [[ $? -ne 0 ]];
then
echo "请检查网络连接情况后在执行$0..."
exit
else
echo "网络连接检测..."
echo "OK!"
fi
echo "开始安装..."
#安装基础环境
yum install -y gcc wget
#判断目录下是否有这个文件没有就wget
if [[ ! -e ${fname} ]];
then
wget -P /root http://download.redis.io/releases/redis-${redislevel}.tar.gz
#判断下载是否成功
if [[ $? -ne 0 ]];
then
echo "=================redis软件包下载失败...================="
echo "=============请查看软件包版本配置是否正确==============="
echo ""
exit
fi
fi
#解压至指定目录下
tar -zxvf /root/redis-${redislevel}.tar.gz -C /root
sleep 3
cd /root/redis-${redislevel}
make && make install PREFIX=/usr/local/redis
#安装路径可以自定义
cp /root/redis-${redislevel}/redis.conf /usr/local/redis/bin/
#修改redis.conf配置文件允许后台启动
sed -i 's/daemonize no/daemonize yes/g' /usr/local/redis/bin/redis.conf
sleep 3
#加入系统启动项
echo "[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target" >/etc/systemd/system/redis.service
sleep 2
#删除无用的文件
rm -rf /root/redis-${redislevel} /root/redis-${redislevel}.tar.gz
#启动redis服务
systemctl daemon-reload
systemctl enable redis.service
systemctl start redis.service
if [[ $? -eq 0 ]];
then
echo ""
echo "===============redis安装完毕==============="
echo "================redis已启动================"
echo ""
else
echo ""
echo "=============redis安装失败请检查配置...==============="
echo ""
rm -rf /etc/systemd/system/redis.service
exit
fi
Linux部署redis的脚本
于 2022-06-15 13:32:13 首次发布