linux中rsync异步服务器实现文件同步与备份

Rsync 非常适合在两台机器之间快速同步大型、复杂的目录,例如论坛的附件目录。再配合 ssh ,则安全性也有保证,且可以利用 ssh public key 和 cron 来进行自动定时同步。

说明:两台机器分别为 localhost 和 remotehost ;用户分别为 localuser 和 remoteuser。

环境:FreeBSD 4.9 和 FreeBSD 6.1

代码如下

设置 ssh public key 认证
$ssh-keygen -t dsa -b 2048
生成所需的密钥
$scp /home/localuser/.ssh/id_dsa.pub remoteuser@remotehost:/home/remoteuser/.ssh/localuser_id_dsa.pub
将公钥拷贝至 remotehost
$ssh remoteuser@remotehost

登录到?端

代码如下
$cd .ssh/ ; cat localuser_id_dsa.pub >> authorized_keys

至此,设置 ssh 认证完毕。

设置 rsync

确认两端机器都安装 rsync , freeBSD 有 ports ,安装非常方便。

写个脚本名为 backup.sh ,内容如下:

代码如下
#!/bin/sh
RSYNC=/usr/local/bin/rsync
SSH=/usr/bin/ssh
KEY=/home/localuser/.ssh /id_rsa
RUSER=remoteuser
RHOST=remotehost
RPATH=/remote/dir
LPATH=/this/dir
$RSYNC -az—delte -e “$SSH -i $KEY” $RUSER@$RHOST:$RPATH $LPATH

-a 选项相当于选项 -rlptgoD 。简单来讲,此选项可递归并将几乎所有的东西同步过去,非常有用。注意的是, -a 默认不会保存 hardlinks ,不过可以单独用 -H 选项来实现。

-z 选项在传输中压缩文件,这无疑加快同步速度。

-delete 选项会删除接受方一些不应存在的文件,此文件在发送方已经被删除,这将保持目录完全同步。

让 cron 每天凌晨1点来跑这个脚本

代码如下
$crontab -e
0 1 * * * /home/localuser/bin/backup.sh

友情提示

rsync是没有自动启动同步功能了,如果我们要定时去备份一个网站数据我们就需要用到定时功能了,上面的例子来使用到了linux中$crontab命令来定时执行备份数据脚本了哦。

(0)

相关推荐

  • 端端Clouduolc使用方法 最独特好用的服务器实时文件同步软件

    公司在阿里云的杭州和青岛数据中心分别租了一台云主机,要求这两台云主机之间数据进行实时同步,并且数据不允许存储到第三方服务器上,这样,公有云同步是不能用了,另外,自己的PC也要与云主机进行同步,以实现异 ...

  • 如何在Linux中安装Redis服务器

    Redis服务器是一种非关系型数据存储服务器,它经常和Linux系统搭配使用.那么如何在Linux系统中安装Redis服务器呢?下面小编给大家分享一下. 操作方法 01 首先我们运用tar命令解压re ...

  • Linux中使用file命令识别文件类型默认没有扩展名

    在Linux系统操作过程中,没有扩展名的文件难以识别,我们可以使用命令来识别文件类型,下面小编就给大家介绍下如何使用file命令来识别文件类型。 我们知道Linux文件系统是Linux内核支持的基本功 ...

  • Linux中使用ln命令在文件之间建立连接的用法讲解

    在Unix世界里有两个'link'(连接)概念,一般称之为硬连接和软连接.一个硬连 接仅仅是一个文件名.(一个文件可以有好几个文件名,只有将最后一个文件名从 磁盘上删除,才能把这个文件删掉.文件名的个 ...

  • Linux中如何对服务器进行压力测试

    http_load是基于Linux平台的一种性能测工具.它是以并行复用的方式运行,仅适用于Web页面的性能测试,不适用于访问数据库,而且测试结果分析是有限的,平台依赖Linux .http_load可 ...

  • 怎么在Linux中建立FTP服务器

    Linux是以后操作系统的趋势所在,目前的大部分国产操作系统,甚至于安卓系统都是与Linux离不开关系.其中,FTP作为其中共享手段存在已久,我们今天就来看看怎么搭建简单的FTP服务器吧. 操作方法 ...

  • 在Linux中永久并安全删除文件和目录的方法

    在大多数情况下,我们习惯于使用 Delete 键.垃圾箱或 rm 命令从我们的计算机中删除文件,但这不是永久安全地从硬盘中(或任何存储介质)删除文件的方法.该文件只是对用户隐藏,它驻留在硬盘上的某个地 ...

  • 电脑文件同步及备份软件使用方法

    今天和大家分享一下同步软件GoodSync的使用方法. 同类软件在网上有很多,经过试用和比较,GoodSync操作方便,简单易学,支持中文,因此以此软件为例给大家进行介绍.希望可以对大家的工作和生活有 ...

  • 在Linux中打开了太多文件(Too many open files)的三种解决方法

    回答一、 [root@lxadmin nginx]# cat /proc/sys/fs/file-max 8192 文件系统最大可打开文件数 [root@lxadmin nginx]# ulimit ...