Linux定时备份文件夹到另一台Linux服务器

问题:

  1. Linux定时每天备份目的文件到目标Linux服务器位置

思路:

依赖sshpass和crontab

  1. 建立.sh文件完成备份操作

  1. 定时使用contab启动此.sh文件

操作:

1.建立如下.sh文件

#!/bin/sh
#设置备份的源文件夹
backup_source=自己填充
#设置目的服务器地址 
remote_username=自己填充
remote_ip=自己填充
remote_password=自己填充
remote_folder=自己填充


#创建备份的缓存文件夹backup_home
backup_home=/home/backup_home
if [ ! -d ${backup_home} ];then
    mkdir ${backup_home}
    if [ $? -eq 0 ]; then
        echo "缓存文件夹创建成功"
    else
        echo "缓存文件夹创建失败"
        exit 1
    fi
else
    echo "缓存文件夹已经存在"
fi

#压缩文件到backup_home
date=$(date +%Y%m%d)
zip -q -r ${backup_home}/${date}.zip ${backup_source}
if [ $? -eq 0 ]; then
    echo "文件压缩成功"
else
    echo "文件压缩失败"
    exit 1
fi

#从本地复制到远程
sshpass -p ${remote_password} scp ${backup_home}/${date}.zip ${remote_username}@${remote_ip}:${remote_folder} 
if [ $? -eq 0 ]; then
    echo "从本地复制到远程成功"
else
    echo "从本地复制到远程失败"
    exit 1
fi

#删除backup_home下超过7天的zip文件
find ${backup_home} -mtime +7 -name "*.zip" -exec rm -rf {} \;

2. 在命令行敲入

crontab -e

3. 选择你自己喜欢的编辑工具

4. 在crontab设置文件中加入

0 2 * * * 刚才的sh文件地址 >> /home/backup_home/log.txt

5. 重启crontab

service cron restart
  • 15
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值