通过定时任务+sh脚本方式实现服务器日志文件异机备份

需求:

等保要求服务器A日志(服务器、数据库、后端、nginx、redis等)备份在另外一台服务器B上

实现原理

通过定时任务+sh脚本+scp命令,实现定时执行脚本,将文件备份到另外一台服务器上

例子:

step1、准备工作

服务器A ipA
服务器B ipB

step2、脚本命令backup.sh

服务器A上,以nginx日志为例

#! /bin/sh
DATE=`date +%Y%m%d`
BAK_NAME=nginx_error_${DATE}.out
scp -P 22 /usr/local/nginx/logs/error.log root@ipB:/data/bak/nginx/${BAK_NAME}

step3、配对秘钥

由于直接执行上述命令需要与服务器B建立连接,还需要输入密码操作,所以要解决SCP命令输入密码的问题
同样在服务器A中:
①主机A生成配对秘钥,在root目录下执行:

ssh-keygen -t rsa

②将 .ssh 目录中的 id_rsa.pub 文件复制到 主机B 的 ~/.ssh/ 目录中,并改名为 authorized_keys:

scp ~/.ssh/id_rsa.pub ipB:/root/.ssh/authorized_keys

step4、设置定时任务:

crontab -e
00 17 * * * /backup.sh >> /backup.txt 2>&1 &
crontab -l

出现问题:
①无权限:

sudo chmod +777 /Map/social_control/social_control.sh

②/bin/sh^M: bad interpreter: No such file or directory
编码格式问题,通过vi backup.sh | :set ff=unix(回车)| :wq 系列命令即可解决

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值