本文及资源最后更新时间 2023-02-11 by sky995
rsync是Unix下的一款应用软件,它能同步更新两处计算机的文件与目录,并适当利用差分编码以减少数据传输量。
—— 摘自维基百科
你还在为丢失数据而烦恼吗?rsync可以很轻松帮你异地备份,再也不怕vps商家提桶跑路了!你需要的仅仅是一个大盘鸡(硬盘大的vps)。
rsync基本介绍
rsync 命令的基本格式有多种,分别是:
rsync [OPTION] SRC DEST
rsync [OPTION] SRC [USER@]HOST:DEST
rsync [OPTION] [USER@]HOST:SRC DEST
rsync [OPTION] [USER@]HOST::SRC DEST
rsync [OPTION] SRC [USER@]HOST::DEST
针对以上 5 种命令格式,rsync 有 5 种不同的工作模式:
- 第一种用于仅在本地备份数据;
- 第二种用于将本地数据备份到远程机器上;
- 第三种用于将远程机器上的数据备份到本地机器上;
- 第四种和第三种是相对的,同样第五种和第二种是相对的,它们各自之间的区别在于登陆认证时使用的验证方式不同。
在使用rsync在远程传输数据前,需要进行登陆认证的,这个过程需要借助 ssh 协议或者 rsync 协议才能完成。在 rsync 命令中,如果使用单个冒号:
,则默认使用 ssh 协议;反之,如果使用两个冒号::
,则使用 rsync 协议。
ssh 协议和 rsync 协议的区别在于,rsync 协议配置繁琐,增加了工作量,但优势是更加安全;反之,ssh 协议使用方便,配置简单。普通用户建议使用ssh协议即可。
另外,以上几种格式中各个参数的含义如下:
SRC
:用来表示要备份的目标数据所在的位置(路径)DEST
:用于表示将数据备份到什么位置USER
:当做远程同步操作时,需指明系统登录的用户名,如果不显示指定,默认为以 root 身份登录系统并完成同步操作。安装rsync
Debian、Ubuntu:
apt install -y rsyncCentOS:
yum install -y rsync配置免密码备份
若不进行这项配置,每次备份都要手动输入密码,非常不方便
配置教程点击这里命令
例:将本地目录
/www/test
下的文件同步到远程目录/backup/test
(服务器地址:192.168.1.100)。rsync -avz -e “ssh -i /root/.ssh/id_rsa” “/www/test/” root@192.168.1.100:/backup/test注意在rsync中
/www/test/
和/www/test
是不同的,前者表示同步文件夹下的文件,并不包含本文件夹,后者表示同步本文件夹和本文件夹下的文件。
-a
表示归档-v
表示显示过程-z
表示压缩传输-e
后面是ssh的命令手动运行一次
输入yes,输入密码,便会开始同步。