Rsync用于在两个远程计算机之间同步文件和文件夹。它仅通过传输源和目标之间的差异来提供快速的增量文件传输。
Rsync可用于镜像数据,增量备份,在系统之间复制文件,可替代scp
,sftp
和cp
日常等使用的命令。
rsync
命令已预安装在大多数Linux发行版和macOS。可以运行命令rsync --version
检查是否已安装rysnc,命令将会打印rysnc的版本号rsync version 3.01
。
安装rsync
如果终端提示你bash: command not found: rysnc,说明你的系统没有安装rsync。可以使用发行版的软件包管理器安装rysnc。
如果你的计算机运行的系统是基于Debian的Linux发行版,例如Ubuntu,Linux mint请运行命令sudo apt install rsync
安装Rsync。
如果你的计算机运行的系统是基于RedHat的Linux发行版。例如CentOS,Fedora。请运行命令sudo yum install rsync
安装Rsync。
sudo apt install rsync -y
sudo yum install rsync -y
Rsync 远程同步数据
当使用rsync
进行远程传输时,rsync必须安装在源计算机和目标计算机。rsync
默使用SSH作为远程shell程序。
如果您尚未为远程计算机设置SSH无密码登录,rsync
会要求您输入用户名和密码。远程计算机SSH服务监听的端口不是默认端口22时,请使用-e
选项指定端口。
当传输大量数据或者大文件时,建议在screen,nohup,tmux运行rsync
命令或使用rsync命令的-P
选项。
rsync -a -e "ssh -p 2322" /opt/media/ remote_user@remote_host_or_ip:/opt/media/
Rsync 增量备份/更新/复制
在增量复制或者备份时,强烈建议使用-t
选项,该选项用与保持文件的mtime属性不变。mtime是文件的修改时间。
如果没有指定-t
选项时,目标文件mtime属性会设置为系统时间,导致下次更新检测到mtime不同,从而导致增量更新无效。
通常你可能还需要显示rsync同步过程的详细信息,使用-v
选项。确认是否正确实现增量同步。
对于同步大量的数据或者大文件,rsync
命令的-P
选项可以显示进度并保留部分传输的文件。
remote_user
是远程计算机的用户名,remote_host_or_ip
远程计算机的IP地址或者可解释的域名。
rsync -avtP /opt/media/ remote_user@remote_host_or_ip:/opt/media/
结论
我们向您详细展示rsync
增量备份/更新/复制以及相关选项的说明。如有任何疑问,请随时发表评论。