两台服务器之间备份目录或文件的shell脚本

#!/bin/bash

# get now date and set date path,datetime
    _DATEPATH=$(date +%Y-%m-%d)

# set backup base path must end of "/"
    _BASEPATH="/data/backup/"

# set log path
    _LOGFILE=${_BASEPATH}"log.txt"

# set some path
    _SITEDATA=${_BASEPATH}"siteData/"${_DATEPATH}
    _SITEAPP=${_BASEPATH}"siteApp/"${_DATEPATH}
    _SITEDB=${_BASEPATH}"siteDb/"${_DATEPATH}
    _SITEMYSQL=${_BASEPATH}"siteMysql/"${_DATEPATH}

# set host address
    _HOSTA = '192.168.10.100';
    _HOSTB = '192.168.10.200';
    

#check base dir
if [ ! -d $_BASEPATH ];then
    mkdir -p $_BASEPATH
fi

#check log file
if [ ! -f $_LOGFILE ];then
    touch $_LOGFILE
fi

#create base dir
    mkdir -p $_SITEDATA
    mkdir -p $_SITEAPP
    mkdir -p $_SITEDB
    mkdir -p $_SITEMYSQL

#fun
function writeLog()
{
    echo $1 >> $_LOGFILE
    return 1
}

#run
function run()
{
    #backup begin
    writeLog "["$(date +%Y-%m-%d-%H-%M-%S)"] ------------------BACKUP Start"
    #begin
    writeLog "["$(date +%Y-%m-%d-%H-%M-%S)"] Copy data dir : HOST $_HOSTA  to HOST $_HOSTB"
    scp -r -4 -B root@$_HOSTA:/www-data $_SITEDATA >> $_LOGFILE
    writeLog "["$(date +%Y-%m-%d-%H-%M-%S)"] Copy app dir : HOST $_HOSTA to HOST $_HOSTB"
    scp -r -4 -B root@$_HOSTA:/www-cmsapp $_SITEAPP >> $_LOGFILE
    writeLog "["$(date +%Y-%m-%d-%H-%M-%S)"] Copy db dir : HOST $_HOSTA to HOST $_HOSTB"
    scp -r -4 -B root@$_HOSTA:/www-sql $_SITEDB >> $_LOGFILE
    writeLog "["$(date +%Y-%m-%d-%H-%M-%S)"] Copy mysql dir : HOST $_HOSTA to HOST $_HOSTB"
    scp -r -4 -B root@$_HOSTA:/usr/local/mysql/ $_SITEMYSQL >> $_LOGFILE
    # end
    writeLog "["$(date +%Y-%m-%d-%H-%M-%S)"] ------------------BACKUP End"
}

run();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值