linux下的文件同步主流的应该有两种方式,一种是scp(基于local、ssh),另外一种是rsync(多种方式local、ssh、rsyncd)
scp执行命令格式
scp [OPTIONS] source destination
举例(本地到远程,反之远程到本地)
scp /home/daisy/full.tar.gz root@xxx.xxx.xxx.xxx:/home/root
复制目录加参数 -r
-v参数来提供SCP进程的详细信息
-p参数会帮到把预计的时间和连接速度会显示在屏幕上。
-C参数来让文件传输更快
-l限制带宽使用
-c选择其它加密算法来加密文件
-P选定端口
-q参数来静默它们
-i指定传输的验证密钥,省掉密码
rsync执行命令格式
rsync [OPTIONS] source destination
使用ssh模式
-e ssh user@ip:/dir 格式
rsync -vzrtopg --delete --progress --password-file=/etc/rsyncd.secrets rsync@xxx.xxx.xxx.xxx::backup /home/receive
v:传输时的进度等信息
z:表示压缩
r:是递归
t:保持文件原有时间
o:保持文件原有属主
P:传输进度
g:保持文件原有用户组
--progress 指显示
--delete 指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致
--password-file=/etc/rsyncd.secrets 认证密码,可实现静默同步