{"id":5418,"date":"2020-07-31T21:40:40","date_gmt":"2020-07-31T13:40:40","guid":{"rendered":"http:\/\/39.97.231.10\/?p=5418"},"modified":"2020-07-31T21:40:40","modified_gmt":"2020-07-31T13:40:40","slug":"rsync-%e6%9c%8d%e5%8a%a1%e9%83%a8%e7%bd%b2%e8%af%a6%e8%a7%a3","status":"publish","type":"post","link":"http:\/\/www.weijing.co\/?p=5418","title":{"rendered":"rsync \u670d\u52a1\u90e8\u7f72\u8be6\u89e3"},"content":{"rendered":"<header class=\\\"entry-header\\\"><\/header>\n<div class=\\\"entry-content\\\">\n<div class=\\\"begin-single-meta\\\"><span style=\\\"color: #1e73be; font-size: 1.53846rem;\\\">\u7b2c1\u7ae0 rsync \u8f6f\u4ef6\u4ecb\u7ecd<\/span><\/div>\n<div class=\\\"single-content\\\">\n<h2><span id=\\\"11_rsync\\\">1.1\u00a0\u4ec0\u4e48\u662frsync<\/span><\/h2>\n<p>rsync\u00a0\u662f\u4e00\u6b3e\u5f00\u6e90\u7684\u3001\u5feb\u901f\u7684\u3001\u591a\u529f\u80fd\u7684\u3001\u53ef\u5b9e\u73b0\u5168\u91cf\u53ca\u589e\u91cf\u7684\u672c\u5730\u6216\u8fdc\u7a0b\u6570\u636e\u540c\u6b65\u5907\u4efd\u7684\u4f18\u79c0\u5de5\u5177\u3002<br \/>\nhttp:\/\/www.samba.org\/ftp\/rsync\/rsync.html<\/p>\n<h3><span id=\\\"111\\\">1.1.1\u00a0\u5168\u91cf\u53ca\u589e\u91cf<\/span><\/h3>\n<p>\u5168\u91cf\uff1a\u5c06\u5168\u90e8\u6570\u636e\uff0c\u8fdb\u884c\u4f20\u8f93\u8986\u76d6<br \/>\n\u589e\u91cf\uff1a\u53ea\u4f20\u8f93\u5dee\u5f02\u90e8\u5206\u7684\u6570\u636e<\/p>\n<h2><span id=\\\"12\\\">1.2\u00a0\u5b9e\u73b0\u589e\u91cf\u590d\u5236\u7684\u539f\u7406<\/span><\/h2>\n<p>Rsync\u901a\u8fc7\u5176\u72ec\u7279\u7684\u201cquick check\u201d\u7b97\u6cd5\uff0c\u5b9e\u73b0\u589e\u91cf\u4f20\u8f93\u6570\u636e<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]#man rsync\nRsync  finds  files  that  need  to  be transferred using a \u201cquick check\u201d algorithm (by default)  that  looks  for  files  that  have changed  in  size  or  in  last-modified time.  Any changes in the other preserved attributes (as requested by options) are  made  on the  destination file directly when the quick check indicates that the file\u2019s data does not need to be updated.<\/pre>\n<\/div>\n<p>\u5728\u540c\u6b65\u5907\u4efd\u6570\u636e\u65f6\uff0c\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0cRsync\u901a\u8fc7\u5176\u72ec\u7279\u7684\u201cquick check\u201d\u7b97\u6cd5\uff0c\u5b83\u4ec5\u540c\u6b65\u5927\u5c0f\u6216\u8005\u6700\u540e\u4fee\u6539\u65f6\u95f4\u53d1\u751f\u53d8\u5316\u7684\u6587\u4ef6\u6216\u76ee\u5f55\uff0c\u5f53\u7136\u4e5f\u53ef\u6839\u636e\u6743\u9650\uff0c\u5c5e\u4e3b\u7b49\u5c5e\u6027\u7684\u53d8\u5316\u540c\u6b65\uff0c\u4f46\u9700\u8981\u6307\u5b9a\u76f8\u5e94\u7684\u53c2\u6570\uff0c\u751a\u81f3\u53ef\u4ee5\u5b9e\u73b0\u53ea\u540c\u6b65\u4e00\u4e2a\u6587\u4ef6\u91cc\u6709\u53d8\u5316\u7684\u5185\u5bb9\u90e8\u5206\uff0c\u6240\u4ee5\uff0c\u53ef\u4ee5\u5b9e\u73b0\u5feb\u901f\u7684\u540c\u6b65\u5907\u4efd\u6570\u636e\u3002<\/p>\n<blockquote><p>\u00a0centos 5 rsync 2.x\u00a0\u5148\u6bd4\u5bf9\u518d\u540c\u6b65\uff0c\u901f\u5ea6\u8f83\u6162<br \/>\ncentos 6 rsync 3.x\u00a0\u4e00\u8fb9\u6bd4\u5bf9\uff0c\u4e00\u8fb9\u5bf9\u5dee\u5f02\u90e8\u5206\u8fdb\u884c\u540c\u6b65<\/p><\/blockquote>\n<h3><span id=\\\"121\\\">1.2.1\u00a0\u8f6f\u4ef6\u7248\u672c<\/span><\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# rsync --version\nrsync  version 3.0.6  protocol version 30\nCopyright (C) 1996-2009 by Andrew Tridgell, Wayne Davison, and others.\nWeb site: http:\/\/rsync.samba.org\/\nCapabilities:\n    64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,\n    socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,\n    append, ACLs, xattrs, iconv, symtimes\nrsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and you\nare welcome to redistribute it under certain conditions.  See the GNU\nGeneral Public Licence for details.<\/pre>\n<\/div>\n<h2><span id=\\\"13_rsync_nbsp\\\">1.3 rsync\u00a0\u8f6f\u4ef6\u529f\u80fd\u4ecb\u7ecd\u00a0<\/span><\/h2>\n<blockquote><p>\u7c7b\u4f3c\u4e8e\u00a0cp\u00a0\u547d\u4ee4\u00a0&#8212;\u00a0\u5b9e\u73b0\u672c\u5730\u5907\u4efd\u4f20\u8f93\u6570\u636e<br \/>\n\u7c7b\u4f3c\u4e8escp\u00a0\u547d\u4ee4\u00a0&#8212;\u00a0\u8fdc\u7a0b\u5907\u4efd\u4f20\u8f93\u6570\u636e<br \/>\n\u7c7b\u4f3c\u4e8e\u00a0rm\u00a0\u547d\u4ee4\u00a0&#8212;\u00a0\u5b9e\u73b0\u65e0\u5dee\u5f02\u540c\u6b65\u5907\u4efd<br \/>\n\u7c7b\u4f3c\u4e8e\u00a0ls\u00a0\u547d\u4ee4\u00a0&#8212;\u00a0\u672c\u5730\u6587\u4ef6\u4fe1\u606f\u67e5\u770b<\/p><\/blockquote>\n<p>rsync\u00a0\u547d\u4ee4\u5c5e\u4e8e1 v 4\u00a0\u7684\u547d\u4ee4<\/p>\n<h3><span id=\\\"131_rsync_cp\\\">1.3.1 rsync == cp<\/span><\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# cp -a  \/etc\/hosts \/tmp\/\n[root@backup ~]# ls \/tmp\/\nhosts\n[root@backup ~]# \\\\rm \/tmp\/hosts\n[root@backup ~]# rsync  \/etc\/hosts \/tmp\/\n[root@backup ~]# ls \/tmp\/hosts\n\/tmp\/hosts<\/pre>\n<\/div>\n<h3><span id=\\\"132_rsync_scp\\\">1.3.2 rsync == scp<\/span><\/h3>\n<p>#\u4f7f\u7528scp\u5b9e\u73b0<br \/>\n#\u68c0\u67e5\u5bf9\u7aef\u670d\u52a1\u5668\u76ee\u6807\u4f4d\u7f6e\u4e0a\u662f\u5426\u6709\u8be5\u6587\u4ef6<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# ls \/tmp\/hosts\nls: cannot access \/tmp\/hosts: No such file or directory<\/pre>\n<\/div>\n<p>#\u4ece\u672c\u5730\u62f7\u8d1d\u5230\u8fdc\u7aef\u670d\u52a1\u5668\u4e0a<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# ls \/tmp\/hosts\n\/tmp\/hosts\n[root@backup ~]# scp -rp \/etc\/hosts 10.0.0.31:\/tmp\/\nThe authenticity of host \\'10.0.0.31 (10.0.0.31)\\' can\\'t be established.\nRSA key fingerprint is d3:41:bb:0d:43:88:da:a3:2c:e8:36:91:11:c9:e4:9c.\nAre you sure you want to continue connecting (yes\/no)? yes\nWarning: Permanently added \\'10.0.0.31\\' (RSA) to the list of known hosts.\nroot@10.0.0.31\\'s password:\nhosts                                           100%  357     0.4KB\/s   00:00<\/pre>\n<\/div>\n<p>#\u68c0\u67e5\u8fdc\u7aef\u670d\u52a1\u5668\u4e0a\u7684\u7ed3\u679c<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# ls \/tmp\/hosts\n\/tmp\/hosts<\/pre>\n<\/div>\n<p>#\u4f7f\u7528rsync\u00a0\u5b9e\u73b0<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# rsync -rp \/etc\/hosts 10.0.0.31:\/tmp\/\nroot@10.0.0.31\\'s password:\n[root@backup ~]#\n[root@nfs01 ~]# ls \/tmp\/hosts\n\/tmp\/hosts<\/pre>\n<\/div>\n<h3><span id=\\\"133_rsync_rm\\\">1.3.3 rsync == rm<\/span><\/h3>\n<h4><span id=\\\"1331nbsp\\\">1.3.3.1\u00a0\u73af\u5883\u51c6\u5907<\/span><\/h4>\n<p>\u521b\u5efa\u51fa\u6765\u4e00\u6b21\u547d\u4ee4\u00a0\u8fdb\u884c\u64cd\u4f5c<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre> [root@backup tmp]# mkdir \/znix\n[root@backup znix]# cp \/tmp\/* .\n[root@backup znix]# ll\ntotal 4\n-rw-r--r-- 1 root root 357 Oct 11 15:21 hosts<\/pre>\n<\/div>\n<p>#rm\u547d\u4ee4\u64cd\u4f5c<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup znix]# rm -rf \/znix\/hosts\n[root@backup znix]# ll \/znix\/hosts\nls: cannot access \/znix\/hosts: No such file or directory<\/pre>\n<\/div>\n<p>\u67e5\u770b\u8fd9\u6587\u4ef6<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# l\ntotal 4\n-rw-r--r-- 1 root root 357 Oct 11 15:21 hosts<\/pre>\n<\/div>\n<p>\u521b\u5efa\u4e00\u4e2a\u7a7a\u76ee\u5f55\uff0c\u4f7f\u7528\u7a7a\u76ee\u5f55\u8fdb\u884c\u65e0\u5dee\u5f02\u540c\u6b65<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# mkdir \/null\n[root@backup ~]# rsync --delete  \/null\/ \/znix\/\nrsync: --delete does not work without -r or -d.\nrsync error: syntax or usage error (code 1) at main.c(1422) [client=3.0.6]\n[root@backup ~]# rsync  -a  --delete  \/null\/ \/znix\/\n[root@backup ~]# ll \/znix\/\ntotal 0<\/pre>\n<\/div>\n<h3><span id=\\\"134_rsync_ls_-l\\\">1.3.4 rsync == ls -l<\/span><\/h3>\n<p>\u4f7f\u7528rsync\u00a0\u53ef\u4ee5\u5b9e\u73b0\u4e0e\u00a0ls\u00a0\u7c7b\u4f3c\u7684\u529f\u80fd<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# ls -l install.log\n-rw-r--r--. 1 root root 21736 Sep 25 08:38 install.log\n[root@backup ~]# rsync install.log\n-rw-r--r--       21736 2017\/09\/25 08:38:28 install.log<\/pre>\n<\/div>\n<h2><span id=\\\"14_Rsync7\\\">1.4 Rsync\u7684\u7279\u6027\u603b\u7ed3\uff087\u4e2a\u7279\u6027\u4fe1\u606f\u8bf4\u660e\uff09<\/span><\/h2>\n<div class=\\\"cnblogs_code\\\">\n<pre>01. \u652f\u6301\u62f7\u8d1d\u666e\u901a\u6587\u4ef6\u4e0e\u7279\u6b8a\u6587\u4ef6\u5982\u94fe\u63a5\u6587\u4ef6\uff0c\u8bbe\u5907\u7b49\u3002\n02. \u53ef\u4ee5\u6709\u6392\u9664\u6307\u5b9a\u6587\u4ef6\u6216\u76ee\u5f55\u540c\u6b65\u7684\u529f\u80fd\uff0c\u76f8\u5f53\u4e8e\u6253\u5305\u547d\u4ee4tar\u7684\u6392\u9664\u529f\u80fd\u3002\n    #tar zcvf backup_1.tar.gz  \/opt\/data  -exclude=clsn\n    \u8bf4\u660e\uff1a\u5728\u6253\u5305\/opt\/data\u65f6\u5c31\u6392\u9664\u4e86clsn\u547d\u540d\u7684\u76ee\u5f55\u548c\u6587\u4ef6\u3002\n03. \u53ef\u4ee5\u505a\u5230\u4fdd\u6301\u539f\u6587\u4ef6\u6216\u76ee\u5f55\u7684\u6743\u9650\u3001\u65f6\u95f4\u3001\u8f6f\u786c\u94fe\u63a5\u3001\u5c5e\u4e3b\u3001\u7ec4\u7b49\u6240\u6709\u5c5e\u6027\u5747\u4e0d\u6539\u53d8-p\u3002\n04. \u53ef\u5b9e\u73b0\u589e\u91cf\u540c\u6b65\uff0c\u65e2\u53ea\u540c\u6b65\u53d1\u751f\u53d8\u5316\u7684\u6570\u636e\uff0c\u56e0\u6b64\u6570\u636e\u4f20\u8f93\u6548\u7387\u5f88\u9ad8\uff08tar -N\uff09\u3002\n    # \u5c06\u5907\u4efd\/home \u76ee\u5f55\u81ea 2008-01-29 \u4ee5\u6765\u4fee\u6539\u8fc7\u7684\u6587\u4ef6\n    # tar -N 2008-01-29 -zcvf \/backups\/inc-backup_$(date +%F).tar.gz \/home\n    # \u5c06\u5907\u4efd \/home \u76ee\u5f55\u6628\u5929\u4ee5\u6765\u4fee\u6539\u8fc7\u7684\u6587\u4ef6\n    # tar -N $(date -d yesterday \\\"+%F\\\") -zcvf \/backups\/inc-backup_$(date +%F).tar.gz \/home\n    # \u6dfb\u52a0\u6587\u4ef6\u5230\u5df2\u7ecf\u6253\u5305\u7684\u6587\u4ef6\n    # tar -rf all.tar *.gif\n    \u8bf4\u660e\uff1a\u8fd9\u6761\u547d\u4ee4\u662f\u5c06\u6240\u6709.gif\u7684\u6587\u4ef6\u589e\u52a0\u5230all.tar\u7684\u5305\u91cc\u9762\u53bb\u3002-r\u662f\u8868\u793a\u589e\u52a0\u6587\u4ef6\u7684\u610f\u601d\u3002\n05. \u53ef\u4ee5\u4f7f\u7528rcp,rsh,ssh\u7b49\u65b9\u5f0f\u6765\u914d\u5408\u8fdb\u884c\u96a7\u9053\u52a0\u5bc6\u4f20\u8f93\u6587\u4ef6\uff08rsync\u672c\u8eab\u4e0d\u5bf9\u6570\u636e\u52a0\u5bc6\uff09\n06. \u53ef\u4ee5\u901a\u8fc7socket(\u8fdb\u7a0b\u65b9\u5f0f)\u4f20\u8f93\u6587\u4ef6\u548c\u6570\u636e\uff08\u670d\u52a1\u7aef\u548c\u5ba2\u6237\u7aef\uff09*****\u3002\u91cd\u70b9\u638c\u63e1\n07. \u652f\u6301\u533f\u540d\u7684\u6216\u8ba4\u8bc1\uff08\u65e0\u9700\u7cfb\u7edf\u7528\u6237\uff09\u7684\u8fdb\u7a0b\u6a21\u5f0f\u4f20\u8f93\uff0c\u53ef\u5b9e\u73b0\u65b9\u4fbf\u5b89\u5168\u7684\u8fdb\u884c\u6570\u636e\u5907\u4efd\u53ca\u955c\u50cf\u3002<\/pre>\n<\/div>\n<h2><span id=\\\"15_Rsync\\\">1.5 Rsync\u7684\u4f01\u4e1a\u5de5\u4f5c\u573a\u666f\u8bf4\u660e<\/span><\/h2>\n<blockquote><p>01.\u00a0\u4e24\u53f0\u670d\u52a1\u5668\u4e4b\u95f4\u6570\u636e\u540c\u6b65\uff08\u5b9a\u65f6\u4efb\u52a1cron+rsync\uff09<br \/>\n\u540c\u6b65\u7f51\u7ad9\u5185\u90e8\u4eba\u5458\u6570\u636e\u4fe1\u606f\uff08\u5b9a\u65f6\u4efb\u52a1\u6700\u5c0f\u5468\u671f\u4e3a1\u5206\u949f\uff09<br \/>\n02.\u00a0\u4e24\u53f0\u670d\u52a1\u5668\u4e4b\u95f4\u6570\u636e\u540c\u6b65\uff08\u5b9e\u65f6\u4efb\u52a1inotify\/sersync\/lrsyncd+rsync\uff09<br \/>\n\u540c\u6b65\u7f51\u7ad9\u7528\u6237\u4eba\u5458\u6570\u636e\u4fe1\u606f<\/p><\/blockquote>\n<h1><span id=\\\"2_rsync\\\">\u7b2c2\u7ae0 rsync\u4f7f\u7528\u65b9\u5f0f<\/span><\/h1>\n<h2><span id=\\\"21_rsync\\\">2.1 rsync\u8f6f\u4ef6\u5de5\u4f5c\u65b9\u5f0f<\/span><\/h2>\n<div class=\\\"cnblogs_code\\\">\n<pre>SYNOPSIS\n        \u672c\u5730\u6570\u636e\u540c\u6b65\u65b9\u5f0f\n       Local:  rsync [OPTION...] SRC... [DEST]\n        \u8fdc\u7a0b\u6570\u636e\u540c\u6b65\u65b9\u5f0f\n       Access via remote shell:\n         Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]\n         Push: rsync [OPTION...] SRC... [USER@]HOST:DEST\n        \u5b88\u62a4\u8fdb\u7a0b\u65b9\u5f0f\u540c\u6b65\u6570\u636e\n       Access via rsync daemon:\n         Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]\n               rsync [OPTION...] rsync:\/\/[USER@]HOST[:PORT]\/SRC... [DEST]\n         Push: rsync [OPTION...] SRC... [USER@]HOST::DEST\n               rsync [OPTION...] SRC... rsync:\/\/[USER@]HOST[:PORT]\/DEST<\/pre>\n<\/div>\n<h3><span id=\\\"211_cp\\\">2.1.1\u00a0\u672c\u5730\u6570\u636e\u540c\u6b65\u65b9\u5f0f\uff08\u7c7b\u4f3c\u4e8ecp\uff09<\/span><\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>Local:  rsync [OPTION...] SRC... [DEST]<\/pre>\n<\/div>\n<table border=\\\"1\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\">\n<tbody>\n<tr>\n<td valign=\\\"top\\\" width=\\\"198\\\"><strong>\u53c2\u6570<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"293\\\"><strong>\u542b\u4e49<\/strong><\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"198\\\"><strong>rsync\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"293\\\">\u6570\u636e\u540c\u6b65\u547d\u4ee4<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"198\\\"><strong>[OPTION&#8230;]\u00a0<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"293\\\">rsync\u547d\u4ee4\u53c2\u6570\u4fe1\u606f<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"198\\\"><strong>SRC\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"293\\\">\u8981\u540c\u4e0d\u5f97\u6570\u636e\u4fe1\u606f\uff08\u6587\u4ef6\u6216\u76ee\u5f55\uff09<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"198\\\"><strong>[DEST]\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"293\\\">\u5c06\u6570\u636e\u4f20\u8f93\u5230\u4ec0\u4e48\u4f4d\u7f6e<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4><span id=\\\"2111nbspnbspnbsp\\\">2.1.1.1\u00a0\u5b9e\u4f8b\u6f14\u793a\u547d\u4ee4\uff1a\u00a0\u00a0<\/span><\/h4>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# rsync  \/etc\/hosts \/tmp\/\n[root@backup ~]# ls \/tmp\/hosts\n\/tmp\/hosts<\/pre>\n<\/div>\n<h3><span id=\\\"212_scp\\\">2.1.2\u00a0\u8fdc\u7a0b\u6570\u636e\u540c\u6b65\u65b9\u5f0f\uff08\u7c7b\u4f3cscp\uff09&#8212;\u53c8\u79f0\u4e3a\u96a7\u9053\u4f20\u8f93<\/span><\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>Access via remote shell:\n  Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]\n  Push: rsync [OPTION...] SRC... [USER@]HOST:DEST<\/pre>\n<\/div>\n<p>\u8bf4\u660e\uff1a\u9700\u8981\u8fdb\u884c\u4ea4\u4e92\u4f20\u8f93\u6570\u636e\u3002\u5982\u679c\u60f3\u5b9e\u73b0\u514d\u4ea4\u4e92\u4f20\u8f93\u6570\u636e\uff0c\u9700\u8981\u501f\u52a9ssh+key\u65b9\u5f0f\u5b9e\u73b0<\/p>\n<table border=\\\"1\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\">\n<tbody>\n<tr>\n<td colspan=\\\"2\\\" valign=\\\"top\\\" width=\\\"548\\\"><strong>pull<\/strong><strong>\uff1a\u00a0<\/strong><strong>\u62c9\uff1a<\/strong><\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"208\\\"><strong>[USER@]\u00a0<\/strong><strong>\uff1a<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"340\\\">\u4ee5\u4ec0\u4e48\u7528\u6237\u8eab\u4efd\u4f20\u8f93\u6570\u636e\u4fe1\u606f<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"208\\\"><strong>HOST:\u00a0\u00a0\u00a0\u00a0<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"340\\\">\u8fdc\u7a0b\u4e3b\u673a\u4fe1\u606f\uff08IP\u5730\u5740\u4fe1\u606f\u00a0\u4e3b\u673a\u540d\u79f0\u4fe1\u606f\uff09<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"208\\\"><strong>SRC:\u00a0\u00a0\u00a0\u00a0\u00a0<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"340\\\">\u8fdc\u7aef\u8981\u604f\u8fc7\u6765\u7684\u6570\u636e\u4fe1\u606f<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"208\\\"><strong>[dest]\u00a0\u00a0\u00a0<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"340\\\">\u604f\u5230\u672c\u5730\u4ec0\u4e48\u4f4d\u7f6e<\/td>\n<\/tr>\n<tr>\n<td colspan=\\\"2\\\" valign=\\\"top\\\" width=\\\"548\\\"><strong>push<\/strong><strong>\uff1a\u63a8\uff1a<\/strong><\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"208\\\"><strong>SRC<\/strong><strong>\uff1a\u00a0\u00a0\u00a0\u00a0<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"340\\\">\u672c\u5730\u8981\u603c\u8fc7\u53bb\u7684\u6570\u636e\u4fe1\u606f<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"208\\\"><strong>DEST\u00a0\u00a0\u00a0\u00a0\u00a0<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"340\\\">\u603c\u5230\u8fdc\u7aef\u4ec0\u4e48\u4f4d\u7f6e<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3><span id=\\\"213_pull\\\">2.1.3\u00a0\u3010\u5b9e\u8df5\u64cd\u4f5c\u3011pull\u00a0\u62c9<\/span><\/h3>\n<p>\u4ece\u8fdc\u7aef\u62c9\u6587\u4ef6\u5230\u5f53\u524d\u76ee\u5f55<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# touch \/tmp\/1.txt\n[root@backup ~]# rsync nfs01:\/tmp\/1.txt .\nroot@nfs01\\'s password:\n[root@backup ~]# ll\ntotal 44\n-rw-r--r--  1 root root     0 Oct 11 16:16 1.txt<\/pre>\n<\/div>\n<h3><span id=\\\"214_push\\\">2.1.4\u00a0\u3010\u5b9e\u8df5\u64cd\u4f5c\u3011push\u00a0\u63a8\u00a0\uff08\u76ee\u5f55\uff09<\/span><\/h3>\n<p>\u5c06\u672c\u5730\u7684hosts\u6587\u4ef6\u63a8\u5230\u8fdc\u7aef\u670d\u52a1\u5668\u4e0a<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup tmp]# ll\ntotal 4\n-rw-r--r-- 1 root root 357 Oct 11 15:12 hosts<\/pre>\n<\/div>\n<p>\u4f7f\u7528push\u7684\u683c\u5f0f\u00a0\u63a8\u6574\u4e2a\u76ee\u5f55\uff08\u5305\u62ec\u76ee\u5f55\uff09<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup tmp]# rsync -r \/tmp nfs01:\/tmp\/\nroot@nfs01\\'s password:\n[root@nfs01 tmp]# ll\ntotal 4\ndrwxr-xr-x 3 root root 4096 Oct 11 16:20 tmp<\/pre>\n<\/div>\n<p>\u63a8\u6574\u4e2a\u76ee\u5f55\u4e0b\u7684\u6587\u4ef6\uff08\u4e0d\u5305\u62ec\u76ee\u5f55\u672c\u8eab\uff09<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup tmp]# rsync -r \/tmp\/ nfs01:\/tmp\/\nroot@nfs01\\'s password:\n[root@nfs01 tmp]# ll\ntotal 8\n-rw-r--r-- 1 root root  357 Oct 11 16:21 hosts\ndrwxr-xr-x 3 root root 4096 Oct 11 16:20 tmp<\/pre>\n<\/div>\n<p>\u8bf4\u660e\uff1a<\/p>\n<blockquote><p>\/tmp\u00a0\u00a0 &#8211;\u8868\u793a\u5c06tmp\u76ee\u5f55\u672c\u8eab\u53ca\u76ee\u5f55\u4e0b\u7684\u5185\u5bb9\u8fdb\u884c\u4f20\u8f93<br \/>\n\/tmp\/\u00a0 &#8211;\u8868\u793a\u53ea\u4f20\u8f93tmp\u76ee\u5f55\u4e0b\u9762\u7684\u5185\u5bb9\u4fe1\u606f<\/p><\/blockquote>\n<h2><span id=\\\"22\\\">2.2\u00a0\u5b88\u62a4\u8fdb\u7a0b\u65b9\u5f0f\u540c\u6b65\u6570\u636e<\/span><\/h2>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@localhost ~]# uname -a\nLinux 2.6.32-696.el6.x86_64 #1 SMP Tue Mar 21 19:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU\/Linux\nAccess via rsync daemon:\nPull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]\n      rsync [OPTION...] rsync:\/\/[USER@]HOST[:PORT]\/SRC... [DEST]\nPush: rsync [OPTION...] SRC... [USER@]HOST::DEST\n      rsync [OPTION...] SRC... rsync:\/\/[USER@]HOST[:PORT]\/DEST<\/pre>\n<\/div>\n<h3><span id=\\\"221_rsync\\\">2.2.1\u00a0\u914d\u7f6ersync\u5b88\u62a4\u8fdb\u7a0b\u65b9\u5f0f\uff08\u9700\u8981\u6709\u670d\u52a1\u7aef\u4e0e\u5ba2\u6237\u7aef\uff09<\/span><\/h3>\n<p>\u89c4\u5212\uff1a<\/p>\n<blockquote><p>\u00a0 \u00a01\u3001backup\u670d\u52a1\u5668\u4f5c\u4e3arsync\u670d\u52a1\u7aef<br \/>\n2\u3001\u4ee5rysnc\u5ba2\u6237\u7aef\u4f5c\u4e3a\u53c2\u7167\u7269\uff0c\u5c06\u6570\u636e\u63a8\u5230rsync\u670d\u52a1\u5668\u4e0a<\/p><\/blockquote>\n<h3><span id=\\\"222_rsync_backup\\\">2.2.2\u00a0\u914d\u7f6ersync\u670d\u52a1\u7aef\uff08\u5c06\u670d\u52a1\u7aef\u914d\u7f6e\u5230\u00a0backup\u00a0\u670d\u52a1\u5668\u4e0a\uff09<\/span><\/h3>\n<p>\u7b2c\u4e00\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u8f6f\u4ef6\u662f\u5426\u5b58\u5728<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# rpm -qa |grep rsync\nrsync-3.0.6-12.el6.x86_64<\/pre>\n<\/div>\n<p>\u7b2c\u4e8c\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u8fdb\u884c\u8f6f\u4ef6\u670d\u52a1\u914d\u7f6e<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# vim \/etc\/rsyncd.conf\nuid = rsync\ngid = rsync\nuse chroot = no\nmax connections = 200\ntimeout = 300\npid file = \/var\/run\/rsyncd.pid\nlock file = \/var\/run\/rsync.lock\nlog file = \/var\/log\/rsyncd.log\nignore errors\nread only = false\nlist = false\nhosts allow = 172.16.1.0\/24\nhosts deny = 0.0.0.0\/32\nauth users = rsync_backup\nsecrets file = \/etc\/rsync.password\n[backup]\ncomment = \\\"backup dir by clsn\\\"\npath = \/backup<\/pre>\n<\/div>\n<p>\u7b2c\u4e09\u4e2a\u91cc\u7a0b\uff1a\u521b\u5efarsync\u7528\u6237<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# id rsync\nid: rsync: No such user\n[root@backup ~]# useradd -s \/sbin\/nologin -M rsync<\/pre>\n<\/div>\n<p>\u7b2c\u56db\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u521b\u5efa\u6570\u636e\u5907\u4efd\u50a8\u5b58\u76ee\u5f55,\u76ee\u5f55\u4fee\u6539\u5c5e\u4e3b<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# mkdir \/backup\/\n[root@backup ~]# chown -R rsync.rsync \/backup\/<\/pre>\n<\/div>\n<p>\u7b2c\u4e94\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u521b\u5efa\u8ba4\u8bc1\u7528\u6237\u5bc6\u7801\u6587\u4ef6<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>echo \\\"rsync_backup:clsn123\\\" &gt;&gt;\/etc\/rsync.password\nchmod 600 \/etc\/rsync.password<\/pre>\n<\/div>\n<p>\u7b2c\u516d\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u542f\u52a8rsync\u670d<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>rsync --daemon<\/pre>\n<\/div>\n<p>\u81f3\u6b64\u670d\u52a1\u7aef\u914d\u7f6e\u5b8c\u6210<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# ps -ef |grep rsync\nroot       2076      1  0 17:05 ?        00:00:00 rsync --daemon\nroot       2163   1817  0 17:38 pts\/1    00:00:00 grep --color=auto rsync\n[root@backup ~]# netstat -lntup |grep rsync\ntcp        0      0 0.0.0.0:873                 0.0.0.0:*                   LISTEN      2076\/rsync\ntcp        0      0 :::873                      :::*                        LISTEN      2076\/rsync<\/pre>\n<\/div>\n<h3><span id=\\\"223_rsync\\\">2.2.3\u00a0\u914d\u7f6ersync\u5ba2\u6237\u7aef\uff08\u5176\u4ed6\u670d\u52a1\u5668\u4e3a\u5ba2\u6237\u7aef\uff09<\/span><\/h3>\n<p>\u7b2c\u4e00\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u8f6f\u4ef6\u662f\u5426\u5b58\u5728<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# rpm -qa |grep rsync\nrsync-3.0.6-12.el6.x86_64<\/pre>\n<\/div>\n<p>\u7b2c\u4e8c\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u521b\u5efa\u8ba4\u8bc1\u6587\u4ef6<br \/>\n\u5ba2\u6237\u7aef\u7684\u8ba4\u8bc1\u6587\u4ef6\u53ea\u9700\u8981\u6709\u5bc6\u7801\u5373\u53ef<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>echo \\\"clsn123\\\" &gt;&gt;\/etc\/rsync.password\nchmod 600 \/etc\/rsync.password<\/pre>\n<\/div>\n<p>\u7b2c\u4e09\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u5b9e\u73b0\u6570\u636e\u4f20\u8f93<\/p>\n<div>\n\u4ea4\u4e92\u5f0f\n<\/div>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# rsync -avzP \/etc\/hosts rsync_backup@172.16.1.41::backup\nPassword:\nsending incremental file list\nhosts\n         357 100%    0.00kB\/s    0:00:00 (xfer#1, to-check=0\/1)\nsent 63 bytes  received 33 bytes  9.14 bytes\/sec\ntotal size is 357  speedup is 3.72<\/pre>\n<\/div>\n<div>\n\u514d\u4ea4\u4e92\u5f0f\n<\/div>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# rsync -avzP \/etc\/hosts rsync_backup@172.16.1.41::backup --password-file=\/etc\/rsync.password\nsending incremental file list\nhosts\n         357 100%    0.00kB\/s    0:00:00 (xfer#1, to-check=0\/1)\nsent 199 bytes  received 27 bytes  150.67 bytes\/sec\ntotal size is 357  speedup is 1.58<\/pre>\n<\/div>\n<h2><span id=\\\"23_rsync\\\">2.3 rsync\u5b88\u62a4\u8fdb\u7a0b\u4f20\u8f93\u6570\u636e\u539f\u7406<\/span><\/h2>\n<p><img src=\\\"https:\/\/clsn.io\/wp-content\/themes\/clsn-003\/img\/blank.gif\\\" alt=\\\"rsync \u670d\u52a1\u90e8\u7f72\u8be6\u89e3\\\" data-original=\\\"https:\/\/clsn.io\/wp-content\/uploads\/2018\/03\/1190037-20180207105650013-767401738.png\\\" \/><\/p>\n<h2><span id=\\\"24_rsync\\\">2.4 rsync\u00a0\u547d\u4ee4\u540c\u6b65\u53c2\u6570\u9009\u9879&amp;\u7279\u6b8a\u53c2\u6570<\/span><\/h2>\n<table border=\\\"1\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\">\n<tbody>\n<tr>\n<td width=\\\"236\\\">\n<p align=\\\"center\\\"><strong>\u76ee\u5f55\u53c2\u6570<\/strong><\/p>\n<\/td>\n<td width=\\\"454\\\">\n<p align=\\\"center\\\"><strong>\u53c2\u6570\u8bf4\u660e<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">-v ,&#8211;verbose<\/td>\n<td width=\\\"454\\\">\u8be6\u7ec6\u6a21\u5f0f\u8f93\u51fa\uff0c\u4f20\u8f93\u65f6\u7684\u4fe1\u606f<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">-z,&#8211;compress<\/td>\n<td width=\\\"454\\\">\u4f20\u8f93\u65f6\u8fdb\u884c\u538b\u7f29\u4ee5\u63d0\u9ad8\u4f20\u8f93\u6548\u7387<br \/>\n&#8211;compress-level=NUM\u00a0\u53ef\u6309\u7ea7\u522b\u538b\u7f29<br \/>\n\u5c40\u57df\u7f51\u53ef\u4ee5\u4e0d\u7528\u538b\u7f29<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">-a,&#8211;archive\u00a0\uff08\u4e3b\u8981\uff09<\/td>\n<td width=\\\"454\\\">\u5f52\u6863\u6a21\u5f0f\uff0c\u8868\u793a\u4ee5\u9012\u5f52\u65b9\u5f0f\u4f20\u8f93\u6587\u4ef6\uff0c\u5e76\u4fdd\u6301\u6587\u4ef6\u5c5e\u6027\u3002\u7b49\u4e8e\u00a0-rtopgDl<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">-r,&#8211;recursive\u00a0<strong>\u00a0<\/strong><strong>\u5f52\u6863\u4e8e-a<\/strong><\/td>\n<td width=\\\"454\\\">\u5bf9\u5b50\u76ee\u5f55\u4ee5\u9012\u5f52\u6a21\u5f0f\uff0c\u5373\u76ee\u5f55\u4e0b\u7684\u6240\u6709\u76ee\u5f55\u90fd\u540c\u6837\u4f20\u8f93\u3002\u5c0f\u5199r<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">-t,&#8211;times\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<strong>\u5f52\u6863\u4e8e-a<\/strong><\/td>\n<td width=\\\"454\\\">\u4fdd\u6301\u6587\u4ef6\u65f6\u95f4\u4fe1\u606f<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">-o,&#8211;owner\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<strong>\u5f52\u6863\u4e8e-a<\/strong><\/td>\n<td width=\\\"454\\\">\u4fdd\u6301\u6587\u4ef6\u5c5e\u4e3b\u4fe1\u606f<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">-p,&#8211;perms\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<strong>\u5f52\u6863\u4e8e-a<\/strong><\/td>\n<td width=\\\"454\\\">\u4fdd\u6301\u6587\u4ef6\u6743\u9650<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">-g,&#8211;group\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<strong>\u5f52\u6863\u4e8e-a<\/strong><\/td>\n<td width=\\\"454\\\">\u4fdd\u6301\u6587\u4ef6\u5c5e\u7ec4\u4fe1\u606f<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">-P\uff0c&#8211;progress<\/td>\n<td width=\\\"454\\\">\u663e\u793a\u540c\u6b65\u7684\u8fc7\u7a0b\u53ca\u4f20\u8f93\u65f6\u7684\u8fdb\u5ea6\u7b49\u4fe1\u606f\uff08\u5927P\uff09<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">-D,&#8211;devices\u00a0\u00a0\u00a0\u00a0<strong>\u5f52\u6863\u4e8e-a<\/strong><\/td>\n<td width=\\\"454\\\">\u4fdd\u6301\u8bbe\u5907\u6587\u4ef6\u4fe1\u606f<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">-l,&#8211;links\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<strong>\u5f52\u6863\u4e8e-a<\/strong><\/td>\n<td width=\\\"454\\\">\u4fdd\u7559\u8f6f\u8fde\u63a5\uff08\u5c0f\u5199\u5b57\u6bcdl\uff09<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">-e\uff0c&#8211;rsh=COMMAND<\/td>\n<td width=\\\"454\\\">\u4f7f\u7528\u7684\u4fe1\u9053\u534f\u8bae\uff08remote shell\uff09\uff0c\u6307\u5b9a\u66ff\u4ee3rsh\u7684shell\u7a0b\u5e8f\u3002<br \/>\n\u4f8b\u5982\u00a0ssh<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">&#8211;exclude=<em>PATTERN<\/em><\/td>\n<td width=\\\"454\\\">\u6307\u5b9a\u6392\u9664\u4e0d\u9700\u8981\u4f20\u8f93\u7684\u6587\u4ef6\u4fe1\u606f<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">&#8211;exclude-from=<em>file<\/em><\/td>\n<td width=\\\"454\\\">\u6587\u4ef6\u540d\u6240\u5728\u76ee\u5f55\u6587\u4ef6\uff0c\u5373\u53ef\u4ee5\u5b9e\u73b0\u6392\u9664\u591a\u4e2a\u6587\u4ef6<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">&#8211;bwlimit=RATE<\/td>\n<td width=\\\"454\\\">\u9650\u901f\u529f\u80fd<\/td>\n<\/tr>\n<tr>\n<td width=\\\"236\\\">&#8211;delete<\/td>\n<td width=\\\"454\\\">\u8ba9\u76ee\u6807\u76ee\u5f55SRC\u548c\u6e90\u76ee\u5f55\u6570\u636eDST\u4e00\u81f4\uff0c\u5373\u65e0\u5dee\u5f02\u6570\u636e\u540c\u6b65<\/td>\n<\/tr>\n<tr>\n<td colspan=\\\"2\\\" width=\\\"690\\\"><strong>\u4fdd\u6301\u540c\u6b65\u76ee\u5f55\u53ca\u6587\u4ef6\u5c5e\u6027\uff1a<\/strong><br \/>\n\u8fd9\u91cc\u7684-avzP\u76f8\u5f53\u4e8e\u00a0-vzetopdDlP\uff0c\u751f\u4ea7\u73af\u5883\u5e38\u7528\u7684\u53c2\u6570\u4e3a\u00a0-avzP<br \/>\n\u5728\u811a\u672c\u4e2d\u53ef\u4ee5\u62a5-vP\u53bb\u6389<br \/>\n&#8211;progress\u53ef\u4ee5\u7528-P\u4ee3\u66ff<\/td>\n<\/tr>\n<tr>\n<td colspan=\\\"2\\\" width=\\\"690\\\"><strong>daemon<\/strong><strong>\u542f\u52a8\u6269\u5c55\u53c2\u6570<\/strong><\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"236\\\">&#8211;daemon<\/td>\n<td valign=\\\"top\\\" width=\\\"454\\\">daemon\u8868\u793a\u4ee5\u5b88\u62a4\u8fdb\u7a0b\u7684\u65b9\u5f0f\u542f\u52a8rsync\u670d\u52a1\u3002<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"236\\\">&#8211;address<\/td>\n<td valign=\\\"top\\\" width=\\\"454\\\">\u7ed1\u5b9a\u6307\u5b9aIP\u5730\u5740\u63d0\u4f9b\u670d\u52a1\u3002<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"236\\\">&#8211;config=FILE<\/td>\n<td valign=\\\"top\\\" width=\\\"454\\\">\u66f4\u6539\u914d\u7f6e\u6587\u4ef6\u8def\u5f84\uff0c\u800c\u4e0d\u662f\u9ed8\u8ba4\u7684\/etc\/rsyncd.conf<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"236\\\">&#8211;port=PORT<\/td>\n<td valign=\\\"top\\\" width=\\\"454\\\">\u66f4\u6539\u5176\u5b83\u7aef\u53e3\u63d0\u4f9b\u670d\u52a1\uff0c\u800c\u4e0d\u662f\u7f3a\u7701\u7684873\u7aef\u53e3<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3><span id=\\\"241\\\">2.4.1\u00a0\u7279\u6b8a\u53c2\u6570\u5b9e\u8df5<\/span><\/h3>\n<p>\u6307\u5b9aip\uff1a<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# rsync --daemon --address=172.16.1.41\n[root@backup ~]# netstat -lntup |grep 873\ntcp     0   0 172.16.1.41:873     0.0.0.0:*        LISTEN      2583\/rsync\n\u53c2\u6570\u6d4b\u8bd5\uff1a\n[root@nfs01 ~]# rsync -avzP \/etc\/services rsync_backup@172.16.1.41::backup --password-file=\/etc\/rsync.password\nsending incremental file list\nservices\n      641020 100%   19.34MB\/s    0:00:00 (xfer#1, to-check=0\/1)\nsent 127417 bytes  received 27 bytes  254888.00 bytes\/sec\ntotal size is 641020  speedup is 5.03<\/pre>\n<\/div>\n<p>\u6307\u5b9a\u914d\u7f6e\u6587\u4ef6\u8def\u5f84<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# rsync --daemon --config=\/etc\/rsyncd.conf\n[root@nfs01 ~]# rsync -avzP \/etc\/services rsync_backup@172.16.1.41::backup --password-file=\/etc\/rsync.password\nsending incremental file list\nsent 29 bytes  received 8 bytes  74.00 bytes\/sec\ntotal size is 641020  speedup is 17324.86<\/pre>\n<\/div>\n<p>\u670d\u52a1\u7aef\u6307\u5b9a\u670d\u52a1\u7aef\u53e3\uff1a<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# rsync --daemon --port=5222\n[root@backup ~]# netstat -lntup|grep rsync\ntcp        0      0 0.0.0.0:5222      0.0.0.0:*           LISTEN      2598\/rsync\ntcp        0      0 :::5222            :::*                 LISTEN      2598\/rsync<\/pre>\n<\/div>\n<h1><span id=\\\"3_rsycn_rsyncdconf\\\">\u7b2c3\u7ae0 rsycn\u914d\u7f6e\u6587\u4ef6\u8be6\u89e3\u00a0rsyncd.conf<\/span><\/h1>\n<h2><span id=\\\"31\\\">3.1\u00a0\u90e8\u5206\u77e5\u8bc6\u8865\u5145<\/span><\/h2>\n<h3><span id=\\\"311\\\">3.1.1\u00a0\u914d\u7f6e\u6587\u4ef6\u5185\u5bb9\u53c2\u8003\u8d44\u6599<\/span><\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>man rsyncd.conf<\/pre>\n<\/div>\n<h3><span id=\\\"312\\\">3.1.2\u00a0\u914d\u7f6e\u6587\u4ef6\u5185\u5bb9\u603b\u7ed3<\/span><\/h3>\n<p>\u6a21\u5757\u4e4b\u4e0a\u5185\u5bb9\u4e3a\u5168\u5c40\u53d8\u91cf\u4fe1\u606f<br \/>\n\u6a21\u5757\u4e4b\u4e0b\u5185\u5bb9\u4e3a\u5c40\u90e8\u53d8\u91cf\u4fe1\u606f<br \/>\n<strong>\u8bf4\u660e\uff1a<\/strong><\/p>\n<div>\n\u65e0\u8bba\u662f\u5168\u5c40\u53d8\u91cf\u53d1\u751f\u53d8\u5316\uff0c\u8fd8\u662f\u5c40\u90e8\u53d8\u91cf\u53d1\u751f\u53d8\u5316\uff0c\u90fd\u5efa\u8bae\u91cd\u542frsync\u670d\u52a1\u4f7f\u914d\u7f6e\u751f\u6548\u3002\n<\/div>\n<h2><span id=\\\"32_etcinitdrsync\\\">3.2\u00a0\u5229\u7528\/etc\/init.d\/\u542f\u52a8rsync\u670d\u52a1\u65b9\u5f0f<\/span><\/h2>\n<h3><span id=\\\"321\\\">3.2.1\u00a0\u53ef\u4ee5\u5b9e\u73b0\u65b9\u5f0f\uff1a<\/span><\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>a. \u7f16\u5199rsync\u542f\u52a8\u811a\u672c\uff08\u6709\u4e00\u5b9a\u7684shell\u80fd\u529b if case\uff09\nb. \u5229\u7528xinetd\u670d\u52a1\uff0c\u7ba1\u7406\u542f\u52a8rsync\u670d\u52a1<\/pre>\n<\/div>\n<h3><span id=\\\"322_xinetd_rsync\\\">3.2.2\u00a0\u5229\u7528\u00a0xinetd\u670d\u52a1\u00a0\u7ba1\u7406rsync<\/span><\/h3>\n<p>\u7b2c\u4e00\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u5b89\u88c5xinetd\u8f6f\u4ef6<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# yum install -y xinetd\n[root@backup ~]# rpm -qa |grep xin\nxinetd-2.3.14-40.el6.x86_64<\/pre>\n<\/div>\n<p>\u7b2c\u4e8c\u4e2a\u91cc\u7a0b\u7891\uff1a\u7f16\u8f91\u914d\u7f6e\u6587\u4ef6<br \/>\n\u4fee\u6539disable = yes\u00a0\u6539\u4e3adisable = no<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# vim \/etc\/xinetd.d\/rsync\n# default: off\n# description: The rsync server is a good addition to an ftp server, as it \\\\\n#   allows crc checksumming etc.\nservice rsync\n{\ndisable   = no\nflags     = IPv6\nsocket_type     = stream\nwait            = no\nuser            = root\nserver          = \/usr\/bin\/rsync\nserver_args     = --daemon\nlog_on_failure  += USERID\n}<\/pre>\n<\/div>\n<p>\u7b2c\u4e09\u4e2a\u91cc\u7a0b\u7891\uff1a\u91cd\u542fxinetd\u670d\u52a1<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# \/etc\/init.d\/xinetd restart\nStopping xinetd:                                           [  OK  ]\nStarting xinetd:                                           [  OK  ]<\/pre>\n<\/div>\n<p>\u4f20\u8f93\u6d4b\u8bd5<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# rsync -avzP \/etc\/services rsync_backup@172.16.1.41::backup --password-file=\/etc\/rsync.password\nsending incremental file list\nsent 29 bytes  received 8 bytes  74.00 bytes\/sec\ntotal size is 641020  speedup is 17324.86<\/pre>\n<\/div>\n<h2><span id=\\\"33\\\">3.3\u00a0\u5b9a\u4e49\u53d8\u91cf\u4fe1\u606f\u5b9e\u73b0\u514d\u79d8\u94a5\u4ea4\u4e92<\/span><\/h2>\n<h3><span id=\\\"331_man\\\">3.3.1\u00a0\u901a\u8fc7man\u624b\u518c\u83b7\u5f97\u65b9\u6cd5<\/span><\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>Some  modules  on the remote daemon may require authentication. If so, you will receive a password prompt when you connect.  You  can avoid  the  password  prompt  by  setting the environment variable RSYNC_PASSWORD to the password  you  want  to  use  or  using  the --password-file option. This may be useful when scripting rsync.\nWARNING:  On some systems environment variables are visible to all users. On those systems using --password-file is recommended.<\/pre>\n<\/div>\n<div>\n\u5728\u8fdc\u7a0b\u8fdb\u7a0b\u7684\u4e00\u4e9b\u6a21\u5757\u53ef\u80fd\u9700\u8981\u8ba4\u8bc1\u3002\u5982\u679c\u662f\u8fd9\u6837\u7684\u8bdd\uff0c\u4f60\u5c06\u5f97\u5230\u4e00\u4e2a\u5bc6\u7801\u63d0\u793a\u5f53\u60a8\u8fde\u63a5\u3002\u4f60\u53ef\u4ee5\u901a\u8fc7\u8bbe\u7f6e\u73af\u5883\u53d8\u91cfrsync_password\u8981\u4f7f\u7528\u6216\u4f7f\u7528\u5bc6\u7801\u6587\u4ef6\u9009\u9879\u5bc6\u7801\u907f\u514d\u5bc6\u7801\u63d0\u793a\u3002\u8fd9\u53ef\u80fd\u662f\u6709\u7528\u7684\u811a\u672c\u6587\u4ef6\u3002<br \/>\n\u8b66\u544a\uff1a\u5728\u4e00\u4e9b\u7cfb\u7edf\u73af\u5883\u53d8\u91cf\uff0c\u5bf9\u6240\u6709\u7528\u6237\u90fd\u662f\u53ef\u89c1\u7684\u3002\u5728\u8fd9\u4e9b\u7cfb\u7edf\u4e2d\u4f7f\u7528\u7684\u5bc6\u7801\u6587\u4ef6\u7684\u5efa\u8bae\u3002\n<\/div>\n<h3><span id=\\\"332_RSYNC_PASSWORD\\\">3.3.2\u00a0\u4f7f\u7528\u00a0RSYNC_PASSWORD\u00a0\u53d8\u91cf\u5b9e\u73b0\u514d\u4ea4\u4e92<\/span><\/h3>\n<p>\u672a\u8bbe\u7f6e\u53d8\u91cf\u4e4b\u524d<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# rsync -avzP \/etc\/services rsync_backup@172.16.1.41::backup\nPassword:<\/pre>\n<\/div>\n<p>\u6dfb\u52a0\u4e0a\u73af\u5883\u53d8\u91cf<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# export RSYNC_PASSWORD=clsn123<\/pre>\n<\/div>\n<p>\u6d4b\u8bd5<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# rsync -avzP \/etc\/services rsync_backup@172.16.1.41::backup\nsending incremental file list\nsent 29 bytes  received 8 bytes  24.67 bytes\/sec\ntotal size is 641020  speedup is 17324.86<\/pre>\n<\/div>\n<h2><span id=\\\"34\\\">3.4\u00a0\u5b88\u62a4\u8fdb\u7a0b\u591a\u6a21\u5757\u529f\u80fd\u914d\u7f6e<\/span><\/h2>\n<p>\u7b2c\u4e00\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u7f16\u5199\u914d\u7f6e\u4fe1\u606f\u521b\u5efa\u591a\u6a21\u5757<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# vim \/etc\/rsyncd.conf\n\u2026\u2026\n[nfsdata]\ncomment = \\\"nfsdata dir by clsn\\\"\npath = \/backup\/nfsdata\n[nfsbackup]\ncomment = \\\"nfsbackup dir by clsn\\\"\npath = \/backup\/nfsbackup<\/pre>\n<\/div>\n<p>\u7b2c\u4e8c\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u521b\u5efa\u591a\u6a21\u5757\u6307\u5b9a\u7684\u76ee\u5f55<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre># \u521b\u5efa\u76ee\u5f55\uff0c\u5e76\u4fee\u6539\u76ee\u5f55\u7684\u6743\u9650\n[root@backup ~]# mkdir \/backup\/nfs{data,backup} -p\n[root@backup ~]# chown rsync.rsync  \/backup\/nfs{data,backup}<\/pre>\n<\/div>\n<div class=\\\"cnblogs_code\\\">\n<pre>#\u67e5\u770b\uff1a\n[root@backup ~]# ll \/backup\/nfs{data,backup} -d\ndrwxr-xr-x 2 rsync rsync 4096 Oct 12 10:05 \/backup\/nfsbackup\ndrwxr-xr-x 2 rsync rsync 4096 Oct 12 10:05 \/backup\/nfsdata<\/pre>\n<\/div>\n<p>\u7b2c\u4e09\u91cc\u7a0b\u7891\uff1a\u00a0\u5229\u7528rsync\u5ba2\u6237\u7aef\u8fdb\u884c\u6d4b\u8bd5<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# rsync -avz \/data\/ rsync_backup@172.16.1.41::nfsdata --password-file=\/etc\/rsync.passsword\nsending incremental file list\n.\/\nnfs.data\nsent 78 bytes  received 30 bytes  216.00 bytes\/sec\ntotal size is 0  speedup is 0.00<\/pre>\n<\/div>\n<p>\u8bf4\u660e\uff1a<\/p>\n<blockquote><p>rsyncd.conf\u914d\u7f6e\u6587\u4ef6\u4e2d\uff0c\u6dfb\u52a0\u591a\u6a21\u5757\u4fe1\u606f\uff0c\u53ef\u4ee5\u4e0d\u7528\u91cd\u542frsync\u670d\u52a1\uff0c\u5373\u65f6\u751f\u6548~<br \/>\n\u5168\u5c40\u53d8\u91cf\u53c2\u6570\u9488\u5bf9\u6240\u6709\u6a21\u5757\u751f\u6548\uff1b\u5c40\u90e8\u53d8\u91cf\u53c2\u6570\u53ea\u9488\u5bf9\u6307\u5b9a\u6a21\u5757\u751f\u6548<br \/>\nread only\u53c2\u6570\u9ed8\u8ba4\u914d\u7f6e\u4e3ature\uff0c\u5373\u4e3a\u53ea\u8bfb\u6a21\u5f0f<br \/>\n\u5168\u5c40\u53d8\u91cf\u53d1\u751f\u53d8\u5316\uff0c\u4e0d\u7528\u91cd\u542frsync\u670d\u52a1\uff1b\u5c40\u90e8\u53d8\u91cf\u53d1\u751f\u53d8\u5316\uff0c\u9700\u8981\u91cd\u542frsync\u670d\u52a1<\/p><\/blockquote>\n<p>\u6ce8\u610f\uff1a\u4fee\u6539\u914d\u7f6e\u6587\u4ef6\u5c31\u91cd\u542f<strong>\u2193<\/strong><\/p>\n<div>\n\u65e0\u8bba\u662f\u5168\u5c40\u53d8\u91cf\u53d1\u751f\u53d8\u5316\uff0c\u8fd8\u662f\u5c40\u90e8\u53d8\u91cf\u53d1\u751f\u53d8\u5316\uff0c\u90fd\u5efa\u8bae\u91cd\u542frsync\u670d\u52a1\u4f7f\u914d\u7f6e\u751f\u6548\n<\/div>\n<h2><span id=\\\"35\\\">3.5\u00a0\u5b88\u62a4\u8fdb\u7a0b\u7684\u6392\u9664\u529f\u80fd\u5b9e\u8df5<\/span><\/h2>\n<h3><span id=\\\"351\\\">3.5.1\u00a0\u6392\u9664\u7684\u65b9\u5f0f<\/span><\/h3>\n<p>a\uff09\u00a0&#8211;exclude=\u8981\u914d\u7f6e\u7684\u76ee\u5f55\u6216\u6587\u4ef6\u540d\u79f0<br \/>\nb\uff09\u00a0&#8211;exclude-from=\u8981\u6392\u9664\u591a\u4e2a\u76ee\u5f55\u6216\u6587\u4ef6\u6c47\u603b\u6587\u4ef6\u540d\u79f0<br \/>\nc\uff09\u00a0\u5728\u914d\u7f6e\u6587\u4ef6\u4e2d\u8fdb\u884c\u4fee\u6539\uff0c\u6307\u5b9a\u8981\u6392\u9664\u7684\u4fe1\u606f<\/p>\n<h3><span id=\\\"352\\\">3.5.2\u00a0\u6392\u9664\u6d4b\u8bd5<\/span><\/h3>\n<p>\u7b2c\u4e00\u4e2a\u91cc\u7a0b\u7891:\u00a0\u521b\u5efa\u6a21\u62df\u6d4b\u8bd5\u73af\u5883<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 data]# mkdir {a..d}\n[root@nfs01 data]# touch {a..d}\/{1..3}.txt\n[root@nfs01 data]# tree\n.\n\u251c\u2500\u2500 a\n\u2502   \u251c\u2500\u2500 1.txt\n\u2502   \u251c\u2500\u2500 2.txt\n\u2502   \u2514\u2500\u2500 3.txt\n\u251c\u2500\u2500 b\n\u2502   \u251c\u2500\u2500 1.txt\n\u2502   \u251c\u2500\u2500 2.txt\n\u2502   \u2514\u2500\u2500 3.txt\n\u251c\u2500\u2500 c\n\u2502   \u251c\u2500\u2500 1.txt\n\u2502   \u251c\u2500\u2500 2.txt\n\u2502   \u2514\u2500\u2500 3.txt\n\u2514\u2500\u2500 d\n    \u251c\u2500\u2500 1.txt\n    \u251c\u2500\u2500 2.txt\n    \u2514\u2500\u2500 3.txt\n4 directories, 12 files<\/pre>\n<\/div>\n<p>\u7b2c\u4e8c\u4e2a\u91cc\u7a0b\u7891\u00a0\u5229\u7528\u00a0&#8211;exclude\u53c2\u6570\u6d4b\u8bd5\u6392\u9664\u529f\u80fd<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre># \u9700\u6c42\uff1a\u4e0d\u8981a\u76ee\u5f55\u4e2d3.txt \u4e0d\u8981b\u3001c\u76ee\u5f55\n[root@nfs01 data]# rsync -avz \/data\/ --exclude=a\/3.txt --exclude=b --exclude=c rsync_backup@172.16.1.41::nfsdata\nsending incremental file list\n.\/\na\/\na\/1.txt\na\/2.txt\nd\/\nd\/1.txt\nd\/2.txt\nd\/3.txt\nsent 300 bytes  received 114 bytes  828.00 bytes\/sec\ntotal size is 0  speedup is 0.00<\/pre>\n<\/div>\n<div>\n\u7cbe\u7b80\u65b9\u5f0f\u6392\u9664\n<\/div>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 data]# rsync -avz \/data\/ --exclude=a\/3.txt --exclude={b,c} rsync_backup@172.16.1.41::nfsdata\nsending incremental file list\n.\/\na\/\na\/1.txt\na\/2.txt\nd\/\nd\/1.txt\nd\/2.txt\nd\/3.txt\nsent 300 bytes  received 114 bytes  828.00 bytes\/sec\ntotal size is 0  speedup is 0.00<\/pre>\n<\/div>\n<h3><span id=\\\"353_--exclude-from\\\">3.5.3\u00a0\u5229\u7528&#8211;exclude-from\u00a0\u65b9\u5f0f\u8fdb\u884c\u6392\u9664<\/span><\/h3>\n<p>\u7b2c\u4e00\u4e2a\u91cc\u7a0b\u7891:\u00a0\u521b\u5efa\u6a21\u62df\u6d4b\u8bd5\u73af\u5883<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 data]# mkdir {a..d}\n[root@nfs01 data]# touch {a..d}\/{1..3}.txt<\/pre>\n<\/div>\n<p>\u7b2c\u4e8c\u4e2a\u91cc\u7a0b\u7891\uff1a\u5229\u7528&#8211;exlude-from\u53c2\u6570\uff0c\u6d4b\u8bd5\u6392\u9664\u529f\u80fd<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 data]# vim \/tmp\/paichu.txt\na\/3.txt\nb\nc<\/pre>\n<\/div>\n<p>\u7b2c\u4e09\u4e2a\u91cc\u7a0b\u7891\uff1a\u8fdb\u884c\u6392\u9664<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 data]# rsync -avz \/data\/ --exclude-from=\/tmp\/paichu.txt rsync_backup@172.16.1.41::nfsdata\nsending incremental file list\n.\/\na\/\na\/1.txt\na\/2.txt\nd\/\nd\/1.txt\nd\/2.txt\nd\/3.txt\nsent 300 bytes  received 114 bytes  828.00 bytes\/sec\ntotal size is 0  speedup is 0.00<\/pre>\n<\/div>\n<p>\u8bf4\u660e\uff1a<\/p>\n<blockquote><p>01.\u00a0\u6392\u9664\u6587\u4ef6\u4e2d\uff0c\u9700\u8981\u5229\u7528\u76f8\u5bf9\u8def\u5f84\u6307\u5b9a\u6392\u9664\u4fe1\u606f\uff08\u4e0d\u80fd\u5229\u7528\u7edd\u5bf9\u8def\u5f84\uff09<br \/>\n02.\u00a0\u76f8\u5bf9\u8def\u5f84\u6307\u7684\u662f\u76f8\u5bf9\u540c\u6b65\u7684\u76ee\u5f55\u4fe1\u606f\u800c\u8a00\uff0c\u662f\u5bf9rsync -avz \/data\/\u00a0\u540e\u9762\u7684data\u76ee\u5f55\u8fdb\u884c\u76f8\u5bf9<\/p><\/blockquote>\n<h3><span id=\\\"354\\\">3.5.4\u00a0\u5728\u914d\u7f6e\u6587\u4ef6\u4e2d\u4fee\u6539\u8981\u6392\u9664\u7684\u6587\u4ef6<\/span><\/h3>\n<p>\u7b2c\u4e00\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u7f16\u5199\u4fee\u6539\u670d\u52a1\u7aef\u914d\u7f6e\u6587\u4ef6<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>vim \/etc\/rsyncd.conf\n[nfsdata]\ncomment = \\\"nfsdata dir by clsn\\\"\npath = \/backup\/nfsdata\nexclude=a\/3.txt b c<\/pre>\n<\/div>\n<p>\u7b2c\u4e8c\u4e2a\u91cc\u7a0b\u7891\uff1a\u91cd\u542frsync\u670d\u52a1<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>killall rsync &amp;&amp; sleep 1 &amp;&amp; rsync --daemon<\/pre>\n<\/div>\n<p>\u7b2c\u4e09\u91cc\u7a0b\u7891\uff1a\u00a0\u8fdb\u884c\u6d4b\u8bd5<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 data]# rsync -avz \/data\/  rsync_backup@172.16.1.41::nfsdata\nsending incremental file list\n.\/\na\/\na\/1.txt\na\/2.txt\nskipping daemon-excluded file \\\"a\/3.txt\\\"\nskipping daemon-excluded directory \\\"b\\\"\n*** Skipping any contents from this failed directory ***\nskipping daemon-excluded directory \\\"c\\\"\n*** Skipping any contents from this failed directory ***\nd\/\nd\/1.txt\nd\/2.txt\nd\/3.txt\nsent 407 bytes  received 116 bytes  1046.00 bytes\/sec\ntotal size is 0  speedup is 0.00\nrsync error: some files\/attrs were not transferred (see previous errors) (code 23) at main.c(1039) [sender=3.0.6]<\/pre>\n<\/div>\n<h2><span id=\\\"36\\\">3.6\u00a0\u5b88\u62a4\u8fdb\u7a0b\u6765\u521b\u5efa\u5907\u4efd\u76ee\u5f55<\/span><\/h2>\n<p>\u901a\u8fc7\u5ba2\u6237\u7aef\u547d\u4ee4\u521b\u5efa\u670d\u52a1\u7aef\u5907\u4efd\u76ee\u5f55\u4e2d\u5b50\u76ee\u5f55<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre># \u63a8\u9001\/etc\/services\u6587\u4ef6\u5230 \u670d\u52a1\u5668\/backup\/sda\/\u76ee\u5f55\n[root@nfs01 ~]# rsync -avzP \/etc\/services rsync_backup@172.16.1.41::backup\/dba\/\nsending incremental file list\ncreated directory dba\nservices\n      641020 100%   19.34MB\/s    0:00:00 (xfer#1, to-check=0\/1)<\/pre>\n<\/div>\n<div class=\\\"cnblogs_code\\\">\n<pre># \u63a8\u9001\/etc\/services\u6587\u4ef6\u5230 \u670d\u52a1\u5668\/backup\/sa\/\u76ee\u5f55\nsent 127417 bytes  received 27 bytes  254888.00 bytes\/sec\ntotal size is 641020  speedup is 5.03\n[root@nfs01 ~]# rsync -avzP \/etc\/services rsync_backup@172.16.1.41::backup\/sa\/\nsending incremental file list\ncreated directory sa\nservices\n      641020 100%   19.34MB\/s    0:00:00 (xfer#1, to-check=0\/1)<\/pre>\n<\/div>\n<div class=\\\"cnblogs_code\\\">\n<pre># \u63a8\u9001\/etc\/services\u6587\u4ef6\u5230 \u670d\u52a1\u5668\/backup\/dev\/\u76ee\u5f55\nsent 127417 bytes  received 27 bytes  254888.00 bytes\/sec\ntotal size is 641020  speedup is 5.03\n[root@nfs01 ~]# rsync -avzP \/etc\/services rsync_backup@172.16.1.41::backup\/dev\/\nsending incremental file list\ncreated directory dev\nservices\n      641020 100%   18.71MB\/s    0:00:00 (xfer#1, to-check=0\/1)\nsent 127417 bytes  received 27 bytes  254888.00 bytes\/sec\ntotal size is 641020  speedup is 5.03<\/pre>\n<\/div>\n<p><strong>\u68c0\u67e5\u7ed3\u679c\uff1a<\/strong><\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup backup]# tree\n.\n\u251c\u2500\u2500 dba\n\u2502   \u2514\u2500\u2500 services\n\u251c\u2500\u2500 dev\n\u2502   \u2514\u2500\u2500 services\n\u2514\u2500\u2500 sa\n    \u2514\u2500\u2500 services<\/pre>\n<\/div>\n<p>\u8bf4\u660e\uff1a<\/p>\n<blockquote><p>a\u00a0\u76ee\u6807\u76ee\u5f55\u540d\u79f0\u540e\u8981\u52a0\u4e0a\u00a0\\&#8221;\/\\&#8221;,\u00a0\u8868\u793a\u521b\u5efa\u76ee\u5f55\uff0c\u5426\u5219\u53d8\u4e3a\u4fee\u6539\u4f20\u8f93\u6587\u4ef6\u540d\u79f0\u4e86<br \/>\nb\u00a0\u5229\u7528\u5ba2\u6237\u7aef\u521b\u5efa\u670d\u52a1\u5907\u4efd\u5b50\u76ee\u5f55\u65f6\uff0c\u53ea\u80fd\u521b\u5efa\u4e00\u7ea7\u5b50\u76ee\u5f55\u3002<\/p><\/blockquote>\n<h2><span id=\\\"37\\\">3.7\u00a0\u5b88\u62a4\u8fdb\u7a0b\u7684\u8bbf\u95ee\u63a7\u5236\u914d\u7f6e<\/span><\/h2>\n<p>\u7b2c\u4e00\u4e2a\u91cc\u7a0b\u7891\uff1a\u5728\u670d\u52a1\u7aef\u914d\u7f6e\u6587\u4ef6\uff0c\u7f16\u5199\u767d\u540d\u5355\u7b56\u7565\u6216\u9ed1\u540d\u5355\u7b56\u7565\uff08\u53ea\u80fd\u53d6\u5176\u4e00\uff09<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>    vim \/etc\/rsyncd.conf\n    hosts allow = 172.16.1.0\/24\n    #hosts deny = 0.0.0.0\/32<\/pre>\n<\/div>\n<p>\u5173\u4e8e\u8bbf\u95ee\u63a7\u5236\u7684\u8bf4\u660e\uff1a<\/p>\n<div>\n01.\u00a0\u767d\u540d\u5355\u548c\u9ed1\u540d\u5355\u540c\u65f6\u5b58\u5728\u65f6\uff0c\u9ed8\u8ba4\u63a7\u5236\u7b56\u7565\u4e3a\u4e0d\u5339\u914d\u7684\u4f20\u8f93\u6570\u636e\u4fe1\u606f\u5168\u90e8\u653e\u884c<br \/>\n02.\u00a0\u767d\u540d\u5355\u5355\u4e00\u5b58\u5728\u65f6\uff0c\u9ed8\u8ba4\u63a7\u5236\u7b56\u7565\u4e3a\u4e0d\u5339\u914d\u7684\u4f20\u8f93\u6570\u636e\u4fe1\u606f\u5168\u90e8\u7981\u6b62<br \/>\n03.\u00a0\u9ed1\u540d\u5355\u5355\u4e00\u5b58\u5728\u65f6\uff0c\u9ed8\u8ba4\u63a7\u5236\u7b56\u7565\u4e3a\u4e0d\u5339\u914d\u7684\u4f20\u8f93\u6570\u636e\u4fe1\u606f\u5168\u90e8\u653e\u884c\n<\/div>\n<p><strong>\u00a0 \u00a0<\/strong><strong>\u5168\u5c40\u53d8\u91cf\u4fee\u6539\u63a7\u5236\u7b56\u7565\u4fe1\u606f\uff0crsync<\/strong><strong>\u670d\u52a1\u5fc5\u987b\u91cd\u542f<\/strong><br \/>\n\u7b2c\u4e8c\u4e2a\u91cc\u7a0b\u7891\uff1a\u5ba2\u6237\u7aef\u8fdb\u884c\u6d4b\u8bd5<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>    [root@nfs01 backup]# rsync -avz \/etc\/services rsync_backup@10.0.0.41::data\n    @ERROR: Unknown module \\'data\\'\n    rsync error: error starting client-server protocol (code 5) at main.c(1503) [sender=3.0.6]\n--------------------------------------------------------------------------------\n    [root@nfs01 backup]# rsync -avz \/etc\/services sync_backup@172.16.1.41::data\n    sending incremental file list\n    sent 29 bytes  received 8 bytes  74.00 bytes\/sec\n    total size is 641020  speedup is 17324.86<\/pre>\n<\/div>\n<h2><span id=\\\"38\\\">3.8\u00a0\u5b88\u62a4\u8fdb\u7a0b\u65e0\u5dee\u5f02\u540c\u6b65\u914d\u7f6e<\/span><\/h2>\n<h3><span id=\\\"381\\\">3.8.1\u00a0\u4ec0\u4e48\u662f\u65e0\u5dee\u5f02\uff1a<\/span><\/h3>\n<p>\u63a8\u6a21\u5f0f\uff1a\u6211\u6709\u4ec0\u4e48\uff0c\u4f60\u5c31\u6709\u4ec0\u4e48\uff1b\u6211\u6ca1\u6709\uff0c\u4f60\u4e5f\u4e0d\u80fd\u6709<br \/>\n\u62c9\u6a21\u5f0f\uff1a\u4f60\u6709\u4ec0\u4e48\uff0c\u6211\u5c31\u6709\u4ec0\u4e48\uff1b\u4f60\u6ca1\u6709\uff0c\u6211\u4e5f\u4e0d\u80fd\u6709<br \/>\n\u603b\u7ed3\uff1a<strong>\u670d\u52a1\u7aef\u5ba2\u6237\u7aef\u6570\u636e\u5b8c\u5168\u4e00\u81f4\uff08\u4e00\u6a21\u4e00\u6837\uff09<\/strong><\/p>\n<h3><span id=\\\"382\\\">3.8.2\u00a0\u5b9e\u73b0\u65e0\u5dee\u5f02\u540c\u6b65\u65b9\u6cd5<\/span><\/h3>\n<p>\u7b2c\u4e00\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u521b\u5efa\u5b9e\u9a8c\u73af\u5883<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# ll \/data\/\ntotal 16\ndrwxr-xr-x 2 root root 4096 Oct 12 10:29 a\ndrwxr-xr-x 2 root root 4096 Oct 12 10:40 b\ndrwxr-xr-x 2 root root 4096 Oct 12 10:29 c\ndrwxr-xr-x 2 root root 4096 Oct 12 10:29 d<\/pre>\n<\/div>\n<p>\u7b2c\u4e8c\u4e2a\u91cc\u7a0b\uff1a\u8fdb\u884c\u7b2c\u4e00\u6b21\u6570\u636e\u540c\u6b65<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 ~]# rsync -avz --delete  \/data\/ rsync_backup@172.16.1.41::backup\/\nsending incremental file list\n.\/\na\/\na\/1.txt\na\/2.txt\na\/3.txt\nb\/\nb\/1.txt\nb\/2.txt\nb\/3.txt\nc\/\nc\/1.txt\nc\/2.txt\nc\/3.txt\nd\/\nd\/1.txt\nd\/2.txt\nd\/3.txt\nsent 669 bytes  received 255 bytes  1848.00 bytes\/sec\ntotal size is 0  speedup is 0.00<\/pre>\n<\/div>\n<p>\u7b2c\u4e09\u4e2a\u91cc\u7a0b\uff1a\u5220\u9664\u6307\u5b9a\u76ee\u5f55\uff0c\u5e76\u6dfb\u52a0\u6307\u5b9a\u6587\u4ef6\uff0c\u6d4b\u8bd5\u65e0\u5dee\u5f02\u529f\u80fd<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre># \u5220\u9664\u5ba2\u6237\u7aef\u4e2d\u7684 a\/ \u76ee\u5f55\uff0c\u518d\u8fdb\u884c\u65e0\u5dee\u5f02\u4f20\u8f93\n[root@nfs01 data]# rm a\/ -rf\n[root@nfs01 data]# rsync -avz --delete  \/data\/ rsync_backup@172.16.1.41::backup\/\nsending incremental file list\n.\/\ndeleting a\/3.txt\ndeleting a\/2.txt\ndeleting a\/1.txt\ndeleting a\/\nsent 181 bytes  received 14 bytes  390.00 bytes\/sec\ntotal size is 0  speedup is 0.00<\/pre>\n<\/div>\n<h3><span id=\\\"383\\\">3.8.3\u00a0\u3010\u6ce8\u610f\u3011\u65e0\u5dee\u5f02\u540c\u6b65\u65b9\u6cd5\u7684\u5e94\u7528<\/span><\/h3>\n<p>01.\u00a0\u5b9e\u73b0\u50a8\u5b58\u6570\u636e\u4e0e\u5907\u4efd\u6570\u636e\u5b8c\u5168\u4e00\u81f4\uff08<strong>\u614e\u7528<\/strong>\uff09<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>  rsync -avz --delete  \/data\/ rsync_backup@172.16.1.41::backup \/<\/pre>\n<\/div>\n<p>02.\u00a0\u5feb\u901f\u5220\u9664\u5927\u6587\u4ef6\u6570\u636e<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>  1.mkdir \/null      --\u521b\u5efa\u51fa\u4e00\u4e2a\u7a7a\u76ee\u5f55\u3002\n  2.rsync -avz --delete \/null\/ \/bigdata\/\n  # \u5220\u9664\u6548\u7387\u9ad8\u4e8e rm -rf \/bigdata<\/pre>\n<\/div>\n<h2><span id=\\\"39\\\">3.9\u00a0\u5b88\u62a4\u8fdb\u7a0b\u7684\u5217\u8868\u529f\u80fd\u914d\u7f6e<\/span><\/h2>\n<p>\u7b2c\u4e00\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u5728\u670d\u52a1\u7aef\u914d\u7f6e\u6587\u4ef6\u4e2d\u5f00\u542flist\u5217\u8868\u529f\u80fd<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# vim \/etc\/rsyncd.conf\nlist = true<\/pre>\n<\/div>\n<p>\u7b2c\u4e8c\u4e2a\u91cc\u7a0b\u7891\uff1a\u91cd\u542frsync\u670d\u52a1<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@backup ~]# killall rsync &amp;&amp; sleep 1 &amp;&amp; rsync --daemon<\/pre>\n<\/div>\n<p>\u7b2c\u4e09\u4e2a\u91cc\u7a0b\u7891\uff1a\u00a0\u5ba2\u6237\u7aef\u67e5\u770b\u670d\u52a1\u7aef\u6a21\u5757\u4fe1\u606f<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 data]# rsync rsync_backup@172.16.1.41::\nbackup         \\\"backup dir by clsn\\\"\nnfsdata        \\\"nfsdata dir by clsn\\\"\nnfsbackup      \\\"nfsbackup dir by clsn\\\"<\/pre>\n<\/div>\n<p>\u8bf4\u660e\uff1a<\/p>\n<div>\n\u4e3a\u4e86\u63d0\u5347\u5907\u4efd\u670d\u52a1\u5668\u5b89\u5168\u6027\uff0c\u5efa\u8bae\u5173\u95edlist\u5217\u8868\u529f\u80fd\n<\/div>\n<h1><span id=\\\"4\\\">\u7b2c4\u7ae0\u00a0\u5e38\u89c1\u95ee\u9898<\/span><\/h1>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@nfs01 tmp]# rsync -avz \/etc\/hosts  rsync_backup@172.16.1.41::backup\nPassword:\nsending incremental file list\nhosts\nrsync: mkstemp \\\".hosts.U5OCyR\\\" (in backup) failed: Permission denied (13)\nsent 200 bytes  received 27 bytes  13.76 bytes\/sec\ntotal size is 371  speedup is 1.63\nrsync error: some files\/attrs were not transferred (see previous errors) (code 23) at main.c(1039) [sender=3.0.6]<\/pre>\n<\/div>\n<p>\u8bf4\u660e\uff1a\u5907\u4efd\u76ee\u5f55\u6743\u9650\u8bbe\u7f6e\u4e0d\u6b63\u786e<\/p>\n<div>\n\u89e3\u51b3\u529e\u6cd5\uff1a<br \/>\n\u5c06\u670d\u52a1\u7aef\u7684\u5907\u4efd\u5b58\u653e\u76ee\u5f55\uff08path\u503c\uff09\uff0c\u5c5e\u4e3b\u548c\u5c5e\u7ec4\u4fee\u6539\u4e3arsync\u3002<br \/>\n<span class=\\\"cnblogs_code\\\">[root@backup ~]#\u00a0chown -R rsync.rsync \/backup\/<\/span>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u7b2c1\u7ae0 rsync \u8f6f\u4ef6\u4ecb\u7ecd 1.1\u00a0\u4ec0\u4e48\u662frsync rsync\u00a0\u662f\u4e00\u6b3e\u5f00\u6e90\u7684\u3001\u5feb\u901f\u7684\u3001\u591a\u529f\u80fd\u7684\u3001\u53ef\u5b9e\u73b0\u5168\u91cf &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"http:\/\/www.weijing.co\/?p=5418\"> <span class=\"screen-reader-text\">rsync \u670d\u52a1\u90e8\u7f72\u8be6\u89e3<\/span> \u67e5\u770b\u5168\u6587 &raquo;<\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"default","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":""},"categories":[102,124],"tags":[],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"mailpoet_newsletter_max":false,"woocommerce_thumbnail":false,"woocommerce_single":false,"woocommerce_gallery_thumbnail":false,"shop_catalog":false,"shop_single":false,"shop_thumbnail":false},"uagb_author_info":{"display_name":"weijing","author_link":"http:\/\/www.weijing.co\/?author=4"},"uagb_comment_info":0,"uagb_excerpt":"\u7b2c1\u7ae0 rsync \u8f6f\u4ef6\u4ecb\u7ecd 1.1\u00a0\u4ec0\u4e48\u662frsync rsync\u00a0\u662f\u4e00\u6b3e\u5f00\u6e90\u7684\u3001\u5feb\u901f\u7684\u3001\u591a\u529f\u80fd\u7684\u3001\u53ef\u5b9e\u73b0\u5168\u91cf&hellip;","_links":{"self":[{"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/posts\/5418"}],"collection":[{"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"http:\/\/www.weijing.co\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5418"}],"version-history":[{"count":0,"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/posts\/5418\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.weijing.co\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5418"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.weijing.co\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5418"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.weijing.co\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5418"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}