zoukankan      html  css  js  c++  java
  • rsync+ssh同步备份文件

    定期对web代码或重要的文件做同步异地服务器备份,防止服务器故障严重磁盘损坏时文件丢失的问题。


    备份服务器:192.168.200.134

    目标服务器:192.168.201.65


    rsync同步命令:

    rsync -avz -e 'ssh -p <ssh端口,默认是22>' <本地待备份目录> 192.168.200.134:<目标目录>

    会提示需要输入远端服务器登陆账号的密码才可以执行下去,为了免密码输入而可以定期自动让其运行,需要配置ssh免密登陆方式;


    备份服务器本地执行 ssh-keygen -t rsa 命令,生成ssh rsa私钥 id_rsa 和公钥id_rsa.pub


    然后copy id_rsa.pub到目标服务器账号home目录下得.ssh目录,如果没有请创建.ssh目录;


    然后在目标机账号home目录下得.ssh目录,执行

    cat id_rsa.pub > authorized_keys

    chmod 600 authorized_keys

    完成操作后,在备份服务器192.168.201.65上尝试执行ssh 登陆操作看是否不再需要密码即可登陆:

    ssh -p <ssh端口,默认22> 192.168.200.134

    :?:如果不需要提示输入密码即可登陆到134服务器,则表示完成ssh免密码登陆功能。


    然后在65服务器上执行rsync同步文件命令也不再需要提示输入密码即可同步完毕。


    最后,我们再添加crontab定时任务,让rsync同步备份文件操作每天23点执行一次备份:


    crontab -e

    在最后面添加一行定时任务设置:


    0 23 * * * rsync -avz -e 'ssh -p <ssh端口,默认是22>' <本地待备份目录> 192.168.200.134:<目标目录> > /dev/null 2>&1

  • 相关阅读:
    iphone精简教程
    自己搭建云盘 – 简单的PHP网盘程序
    内存泄漏(I)
    App 基本图片配置(I)
    Git 工作环境配置
    MVC(I)
    ReactNative APP基本框架搭建 基于 React Navigation
    UI绘制原理及卡顿 掉帧原因
    ES6中Json、String、Map、Object之间的转换
    Invariant Violation: requireNativeComponent: "RNCWKWebView" was not found in the UIManager.
  • 原文地址:https://www.cnblogs.com/exmyth/p/15408029.html
Copyright © 2011-2022 走看看