美文网首页
linux下定时任务--记一次禅道备份数据到远程服务器

linux下定时任务--记一次禅道备份数据到远程服务器

作者: 十三_0223 | 来源:发表于2021-11-25 10:38 被阅读0次

    最近出了件大事,一大早被领导三番催促,原来是部署在我们机房机器上的禅道莫名挂了,所有用户均无法正常登陆,怀疑是机房机器变动导致部分数据丢失,好在禅道每天有备份,尝试使用备份数据重新覆盖安装,也是失败,最后检查是服务器磁盘满了。。。但也提醒了我这些数据的重要性(数据包已经有6G了,所有开发任务和缺陷、用例全在上面),于是着手把数据远程备份一次。

    大致思路:

    • 1.通过crontab定时任务打包数据
    • 2.scp免密传输到指定服务器
    • 3.删除本地压缩包

    1.编写简单的备份脚本

    [root@rzve1bjr /]# vim opt/zentao_cp.sh
    #!/bin/bash
    
    tar -czvf /zentao_cp/zentao_bk.$(date +%y%m%d-%H%M).tar.gz /zentao_bk/*
    
    exit $?
    
    [root@rzve1bjr /]#
    

    2、安装 crontabs服务并设置开机自启

     yum install crontabs
     systemctl enable crond
    systemctl start crond
    

    我使用的机器是Centos7,不同机器命令不太一样,如果使用的是Centos6及以下版本,sytemctl需要换成service

    3.配置定时任务

    vim /etc/crontab
    
    crontab

    上方是给出的注释,从左往右依次是分、时、日、月、周,我设置的是每天凌晨2点半执行打包脚本,3点半把压缩包传至另一个服务器,4点则删除该压缩包,脚本比较简单

    4.任务重载

    crontab /etc/crontab
    

    5.设置scp免密远程传输

    使用RSA非对称加密算法,将禅道服务器的公钥放到备份服务器的authorized_keys中

    • 在禅道服务器上,通过RSA算法生成公钥(.pub)和私钥(公钥用于加密,私钥用于解密)
    • 将该公钥放至备份服务器的authorized_keys中
    1.生成密钥对
    ssh-keygen -t rsa
    

    公钥/root/.ssh/id_rsa.pub
    秘钥/root/.ssh/id_rsa

    2.将公钥放至远程服务器.ssh目录(通过cd ~/.ssh访问)下的authorized_keys当中

    可以通过lszrz工具将公钥上传至B服务器中。
    尝试一下:
    scp test.txt root@47.94.36.78:/root/

    大功告成

    相关文章

      网友评论

          本文标题:linux下定时任务--记一次禅道备份数据到远程服务器

          本文链接:https://www.haomeiwen.com/subject/ujjatrtx.html