一键安装Nginx

脚本 install_nginx.sh #!/bin/bash

#Use: 使用Shell脚本一键安装Nginx

#Author: wl_it

#Date: 2020.05.07

# 1. yum安装编译工具及库文件

yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel

if [[ "$?" -ne 0 ]]; then

echo -e "\033[33m 安装编译工具和库文件失败\033[0m"

exit

fi

# 2. 安装pcre让Nginx支持Rewrite功能。安装到 /usr/local/src/目录下

cd /usr/local/src/ && wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz && tar zxvf pcre-8.35.tar.gz && cd pcre-8.35 && ./configure && make && make install && pcre-config --version

if [[ "$?" -ne 0 ]]; then

echo -e "\033[33m 安装pcre失败\033[0m"

exit

fi

# 3. 安装Nginx。安装到 /usr/local/src/

cd /usr/local/src/ && wget http://nginx.org/download/nginx-1.16.0.tar.gz && tar zxvf nginx-1.16.0.tar.gz && cd nginx-1.16.0 && ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35 && make && make install && /usr/local/webserver/nginx/sbin/nginx -v

if [[ "$?" -ne 0 ]]; then

echo -e "\033[33m 安装Nginx失败\033[0m"

else

echo -e "\033[32m 安装Nginx成功\033[0m"

fi

mysql数据库备份脚本

编写脚本 #!/bin/bash

#Use: mysql按天自动备份脚本

#Author: wl_it

#Date: 2020.05.06

#备份目录

BAK_DIR=/data/backup/`date +%Y%m%d`

#数据库名称

MYSQL_DB=study_cloudalibaba_db

#备份专用数据库登陆名

MYSQL_USER=backup

#备份专用数据库登陆密码

MYSQL_PWD=123456

#Mysql备份命令

MYSQL_CMD=/usr/bin/mysqldump

#该脚本必须以root用户执行

if [ $UID -ne 0 ];then

echo "该脚本必须以root执行"

exit

fi

#如果备份目录不存在则创建

if [ ! -d $BAK_DIR ];then

mkdir -p $BAK_DIR

echo -e "\033[32m备份目录$BAK_DIR创建成功\033[0m"

else

echo "备份目录$BAK_DIR已存在"

fi

#执行Mysql备份命令

$MYSQL_CMD -u$MYSQL_USER -p$MYSQL_PWD -d $MYSQL_DB --skip-lock-tables > $BAK_DIR/$MYSQL_DB.sql

#判断上面的备份命令是否成功

if [ $? -eq 0 ];then

echo -e "\033[32m备份$MYSQL_DB成功\033[0m"

else

echo -e "\033[31m备份$MYSQL_DB失败,请检查\033[0m" #31m表示输出红色前景色

fi

当一切都正确时 执行脚本 输出

​ /bin/bash -n auto_backup_mysql.sh 检查脚本语法是否正确 没有输出表示正确

​ 如果有语法错误会报错,类似下面这样

系统备份

输出当前时间 echo `date +%Y-%m-%d\ %H:%M`

全量备份命令 tar -g /tmp/snapshot -czvf /tmp/20200517_full_shell.tar.gz /root/shell/

# -g 创建一个快照

#全量备份/root/shell/ 目录下的文件到 /tmp/20200517_full_shell.tar.gz 中

增量备份命令 tar -g /tmp/snapshot -czvf /tmp/20200517_add_shell.tar.gz /root/shell/

#在原来快照的基础上 增量备份新增或修改的文件

#和上面的命令是一样的 只是备份压缩的文件名不同

#其实在第一次执行备份时 在/tmp/目录下创建了一个名为snapshot的文件

#所以两次执行备份指令的区别就是 如果不存在/tmp/snapshot文件 就执行全量备份 否则在上次备份的基础上执行增量备份

自动化脚本实现 每周日执行全量备份,其余每天执行增量备份 #!/bin/bash

#Use: Shell脚本实现系统的全量和增量备份 每天执行一次 如果是周末 则执行全量备份 否则执行增量备份

#Author: wl_it

#Date: 2020.05.17

#必须指定备份的目录

if [ -z $1 ]; then

echo -e "\033[31m必须指定备份的目录\033[0m"

exit

fi

#日期

DATE=`date +%Y-%m-%d`

#星期几

WEEK=`date +%u`

#备份的目的地址

BACK_DIR="/tmp/back/"

TARGET_DIR=$1

#全量备份函数

function full_backup() {

if [ "$WEEK" -eq "7" ];then

mkdir -p $BACK_DIR

rm -f ${BACK_DIR}snapshot

tar -g ${BACK_DIR}snapshot -czvf ${BACK_DIR}${DATE}-full-data.tar.gz $TARGET_DIR

echo -e "\033[32m全量备份完成!!\033[0m"

fi

}

#增量备份函数

function add_backup(){

if [ "$WEEK" -ne "7" ];then

mkdir -p $BACK_UP

tar -g ${BACK_DIR}snapshot -czvf ${BACK_DIR}${DATE}-add-data.tar.gz $TARGET_DIR

echo -e "\033[32m增量备份完成!!\033[0m"

fi

}

#执行函数

full_backup

add_backup

文章来源

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。