°ò¥»rsync³]©w

§@ªÌ:csc@ocean-pioneer.com
«Ø¥ß¤é´Á:2003/09/18 
§ó·s¤é´Á:2010/04/13
°Ñ¦Ò¤å³¹:rsync,rsyncd.conf ¤â¥U, µ{¦¡:rsync,cygwin-rsyncd,,cwrsync
#³o¬O¤@­Ó¤Jªùªº³]©w,¦pªG§A­n²`¤J¤F¸Ñ¨C¤@­Ó°Ñ¼Æ½Ð°Ñ·Ó man rsync


¤@¯ë¨ÓÁ¿¸ó¥­¥xÀɮתº³Æ ¥÷¨Ã¤£«Ü®e©ö¥H«e§Ú¤]¥Î¹L¨Ï¥ÎºÏ±a¾÷¨Ó³Æ¥÷¤@¥x¤­¸U¦hÁÙ­n¶R¤@®M³nÅé¨Ó±Æµ{¤£¦PªººÝ»Ý­n¥t¥~¶R¤S¬O¤@µ§¶}¾PµM¦Ó²{¦bµwºÐ¬O¦p¦¹ªº«K ©y,®e¶q¤S¤j³t«×¤S§Ö¦]¦¹²{¦b ¥i¥H¨Ï¥ÎµwºÐ¨Ó³Æ¥÷Àɮצý¬O¦pªG§A¨Ï¥Îªº§@·~¨t²Î¥]§t¤Funix,windows,os/2 µ¥,,¥H«e¨Ã¤£®e©ö³Æ ¥÷,¦ý¬O¨Ï¥Îrsync¥i¥H¸Ñ¨M³o¨Ç°ÝÃD¡C §Ú·Q§A¥i¯àÅ¥¹Lrsync,¤]ª¾¹D¥¦¥i¥H¥H¥Î¦blinux¤§Ãþªº§@·~¨t²Î,¥¦¬Oftpºô¯¸±`¥Î¨Ó¦P¨B(½Æ»s)ªº³nÅé,§Ú¤@ª½¥H¬°¥¦¥u¯à¦blinux, unix¤W¶],¨ä¹ê¥¦¤]¬O¥i¥H¥Î¦bwinodws§@·~ ¨t²Î¤W(¶]¦bcygwin¤W),¨Ï¥Î¤èªk¤j­P ¤W¸òlinux¤U¤@¼Ë,¦]¦¹¥u­n³]©w¦n ¤F©Ò¦³ªºÀɮ׳ƥ÷³£¥i¥H¥Ñ§A¦Û¥Ñªºµo´§
¥»¤å±N½Í¨ìlinux¤Wªºrsync¤Îwindows¤Wªºrsyncªº³]©w,¦p¦¹¬Ý§¹¤F,§Ú­Ì¥i¥H¹ê§@¥ø·~ªº¸ê®Æ»·ºÝ³Æ´©,¦pªG§A¦³¨Ï¥ÎVPN«h¦w¥þ©Ê§ó °ª


®Ú¾Ú rsyncªºmanual¤Wªº»¡©ú,rsyncÃþ¦ürcp(remote cp)[¤]´N¬O»·ºÝ½Æ»s],¦ý¬O¦h¤F³\¦hªº¥\¯à,¦Ó¥B¥¦ªº³q°T¨ó©w¥i¥H¥[³tÀɮתº¶Ç°e,¨äremote-updateªº ¨ó©w¬O¨Ï¥Î®t²§©Êªº³Æ¥÷¤è¦¡¥¦¥]§t¤F server¤Î clientºÝ¦]¦¹§Ú­Ì¥i¥H¦b ¤£¦P¾÷¾¹¶¡°µ³Æ¥÷ªº°Ê§@¤£»Ý­nÃB¥~³]©w¨ä¥¦ªº¤À¨É³]©w¦p¯SÂI:


rsyncªº¨Ï¥Î¤èªk ¥H ¤U¬O rsync ¦bman¤¤´£¤Î6ºØ¥Îªk

rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST

¨Ó·½¥»¦a¨ì¥Øªº»·ºÝ(¨Ï ¥Îrsh ©Îssh ):

rsync [OPTION]... [USER@]HOST:SRC DEST

¨Ó·½»·ºÝ¨ì¥Øªº¥»¦a(¨Ï ¥Îrsh©Îssh):

rsync [OPTION]... SRC [SRC]... DEST

¨Ó·½¥»¦a¨ì¥Øªº¥»¦a,Ãþ ¦ü½Æ»sªº¥\¯à

rsync [OPTION]... [USER@]HOST::SRC [DEST]

¨Ó·½»·ºÝ¨ì¥Øªº¥»¦a(¨Ï ¥Îrsync server),¨Ï¥Î::

rsync [OPTION]... SRC [SRC]... [USER@]HOST::DEST

¨Ó·½¥»¦a¨ì¥Øªº»·ºÝ(¨Ï ¥Îrsync server),¨Ï¥Î::

rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]

¨Ó·½»·ºÝ¨ì¥Øªº¥»¦a,«ü©w»·ºÝªº¥D¾÷¨Ï¥Îrsync:// URL

#¦b¸ô®|¤¤¦³¨Ï¥Î¨ì::¤Î:¦bµy«á·|¸ÑÄÀ


¹ê §@: §Ú­n±Nwindows nt¤Wªº¸ê®Æ³Æ¤À¨ìlinux¤W,¤£ ¨Ï¥Îºô¸ôªÚ¾F,¯Â¨Ï¥Îrsync¨Ó ³Æ¥÷,¦bwindows¤W ±Ò°ÊrsyncdªA °È,¦Ólinux¨Ï ¥Îcron¨Ó ©w®É°õ ¦æ³Æ¥÷ªº¥\¯à,¥H ¤U¬O¹ê§@


LINUX

¦w ¸Ë¨ìlinux
redhat
ªºrsync¬O ¦³¤º«Ø ¦³®M¥ó,¦] ¦¹§A¥i¥Hª½±µ¦w ¸Ë¥úºÐ¤¤ªº®M¥ó´N¥i¥H¤F
rpm -Uvh rsync
 #§A ¤]¥i¥H¦Ürsync.samba.org¤U ¸ü³Ì·sª©¦Û¤w½sĶ,
rpm -ql rsync
     #¦w¸Ë§¹²¦«á, ¬d¸ß¤@¤U¦w¸Ë¤F¨º¨ÇªF¦è
/etc/xinetd.d/rsync
/usr/bin/rsync
#¥u¦³¨â­Óµ{¦¡,©M´X­Ómanual,©M ¤å¥ó,
/etc/xinetd.d/rsync
¬O³z¹Lxinetd.dªº ±Ò°ÊªA°È

rysnc ¦³¨âºØ¼Ò¦¡:

1.server

¦pªG§A­nÅý§O¤H¨Ï¥Îrsync¨Ó³Æ¥÷¥»¾÷ªº¸ê®Æ,¤@¯ë»Ý­n³]©w¥Hdaemon ªº¤è¦¡±Ò°Ê ©Ò¦³ªºµJÂI³£¦b/etc/rsyncd.conf ³o­ÓÀɤW­±§A¥i¥H°õ¦æman rsyncd.conf¬d¬Ý³]ªk ¨äµ²ºc¦³ÂI¹³sambaªºÀô¹ÒÀÉ
#¥Ø«e¤@¯ë¦blinux §Ú³£¤£±Ò°Êserver¦Ó¬O³z¹Lssh¨Ó¦ê±µ,¤]´N¬O¤£±Ò°ÊªA°È,¦Ó³z¹Lssh¨Ó³s½u
¸Ô²Ó½Ð°Ñ·Ó¥»¤å«á­±

2.client

¤@¯ë©R¥O¦C¾Þ§@ ¦Ó¤w,¥¦¥i¥H³s½ursync server¤Îssh server

/etc/rsyncd.conf ªº°Ñ¼Æ: ½Ð°Ñ¦Ò man rsyncd.conf

¥þ °ìÅܼÆ

motd file

«ü©w³s½u¶i¨ÓªºÅwªïµe­±ªºÀÉ®×

log file

³s½u°O¿ýÀɩҦb

pid file

¦æµ{ªºID

syslog facility

°O¿ýªº¸Ô²Ó«×

socket options


¨ä ¥¦±`¥Î°Ñ¼Æ

°Ñ¼Æ

µù¸Ñ

path

¸ô®|,½Ð¨Ï¥Îªº±×½u

max connections

³Ì¤j±µ¨üªº³s½u¼Æ

lock file

¹w³]/var/run/rsyncd.lock

read only

¹w³]read only =true Åý¨Ï¥ÎªÌµLªk¤W¶Ç,¦pªG­nÅý¨Ï¥ÎªÌ¥i¥H¤W¶Çread only= false ª` ·N:¤W¤U¶ÇÀɪºÅv­­ÁٻݭnÀɮרt²ÎªºÅv­­,¦pªG¨S¦³Åv­­´NµLªk¶ÇÀÉ,¦Ó¶ÇÀɪº¨Ï ¥Î ªÌ¹w³]uid.gid (nobody.nobody)

list

¦pªG³]¬°false«h¥i¥H³]©w¬°ÁôÂ꺼ҲÕ,µLªk¬d¸ß

uid

¹w³]¬Onobody,«Ø¥ßÀɮתº¾Ö¦³ªÌ

gid

¹w³]¬Onobody

exclude

³o¬O³]©w¤£­n³Æ¥÷ªº¼Ë¥»

exclude from

¦P¤W¦ý¬O¨Ï¥ÎÀÉ®×

include

©Mexclude ¬Û¤Ï

include from

©Mexclude from¬Û¤Ï

auth users

­ã³\ªº¨Ï¥ÎªÌ,­n°t¦Xsecrets file

secrets file

³]©w¤Fauth users¤§«á¤@©w­n¥[¤J¥»³]©w,¨ä®æ¦¡¬°user:passwd¨Ï¥Î«_¸¹¤À¹j,¤@­Ó ¨Ï¥ÎªÌ¤@¦æ

strict modes

ÀˬdÅv­­,­­¨î¦pªG§O¤H¥i¥HŪµLªk°õ¦æ,·|¦³¿ù»~°T®§, °±¤îÀˬd³]¬°false

hosts allow

¤©³\³s½uªº¥D¾÷¥i¥H¬O
192.168.1.23
192.168.0.0/24
192.168.0.0/255.255.255.0
*.somehost.com.tw

hosts deny

©Úµ´³s½uªº¥D¾÷

ignore errors

©¿²¤¿ù»~

ignore nonreadable

©¿²¤µLªkŪ¨ú

transfer logging

¶Ç°e°O¿ý

log format

°O¿ý®æ¦¡

¥H ¤U§Ú­Ì¶}©l³]©wrsyncd ªA°È ³]©wÀÉrsyncd.conf½d ¨Ò:

pid file =/var/run/rsyncd.pid
log file =/var/log/rsyncd.log
 
strict modes = false ³]©w¤ñ¸û¦n¥i¥H¬d¸ß³s½uªº °O¿ý,¦pªG¤£«ü©w«h¦bvar/log/messages
[vol1] ¼Ò²Õvol1
path=/home/samba/vol1 ¼Ò²Õªº¸ô®|
comment= samba share files ¼Ò²Õªº»¡©ú


[etc] ¼Ò²Õetc
path=/etc ¼Ò²Õªº¸ô®|
comment= server etc ¼Ò²Õªº»¡©ú
auth users= admin ¥i³s½uªº¨Ï¥ÎªÌadmin
secrets file=/etc/rsyncd.secrets adminªº±K½X©Ò¦bÀÉ


 [www] ¼Ò²Õwww

path=/var/www/html
comment = wwww document

 

#§Ú­Ì³oùرҰÊrsync server¨Ó´ú¸Õ,µy«á­Y§A¤£·Q­n¨Ï¥Î,¥i¥HÃö±¼¥»ªA°È

±µ µÛ­×§ï/etc/xinetd.d/rsync ±N disable=yes §ï¬°disable=no µM«á­«·s±Ò°Êxinetd.dªA°È

service xinetd restart

²{¦b§Ú§A¥i¥H´ú¸Õ³s½u §A¥i¥H±q§O¥x©Î¬O¥»¾÷´ú¸Õ °²³]¸Ó¥D¾÷¦WºÙ¬Orsync.mytest.com.tw 
rsync -av rsync.mytest.com.tw::vol1

¦pªG¥¿±`·|Åã¥Ü©Ò¦³¦b ¸Ó¥D¾÷¤Uªº©Ò¦³ÀÉ®×
¿ï¶µv¬OÂsÄýªº¼Ò¦¡,a=rlptgoD(r=recursive,l=link,p=perms,t=times,g=group,o=owner,D=Device)
¤]´N¬O ¥]§t¤U­±ªº¿ï¶µ
:(¤l¥Ø¿ý,Ãìµ²ÀÉ,Åv­­,®É¶¡,¸s²Õ,ÀÉ®×¾Ö¦³ªÌ,³]³Æ),¦]¬°¨S¦³«ü©w¥Øªº©Ò¥H¬OÅã¥Ü©Ò¦³ªº ÀÉ®×
(
´¿¸g¦b®Ñ§½¬Ý¨ì¤@¥»®Ñ,¨ä¤¤¦³¤¶²Ðrsync,³ºµM±N°Ñ¼Æa©Mroµ¥°Ñ ¼Æ¦X¥Î,¯u¤£¾å±o¥i¥H¦p¦¹¥X®Ñ,¤Ó¯ó²v)
rsync -av admin@rsync.mytest.com.tw::etc

¦P¤W¥u¬O¥[¤Jªº¨Ï¥ÎªÌ,¥¦·|´£¥Ü±K½X 
rsync -av admin@rsync.mytest.com.tw::etc --password-file=/home/backup/mypasswd

¤W­z¦h¤F¤@­Ó°Ñ¦Ò
--password-file,§Ú­Ì±N±K½X¼g¦b /home/backup/mypasswd(¦pªGÅv­­¤£¹ï,µLªk¨Ï¥Î,¥¦±j¨î, other¤£ ¥i¥HŪ,°Ñ¦Òstrict modeªº ³]©w)¦p¦¹¥¦´N¤£·|°Ý§A±K½X,¥i¥H§å¦¸°õ¦æ
chmod o-r /home/backup/mypasswd
chmod 600 /home/backup/mypasswd
#
ª`·N¤£­n±N¨ä©Mrysncd.conf¤¤ªº "secrets file "°Ñ¼Æ§Ë²V,¸Ó°Ñ¼Æ«ü©wªºÀɮ׮榡¬O"¨Ï¥ÎªÌ:±K½X",¦Ó--password-file©Ò«ü©wÀɮפº¥u§t"±K½X"¦Ó¤w


windows

2008/03/12 ·s¼W

¦w ¸Ëwindows xp/2003/2000 rsyncd server 
cwRsync
¬O¤@­Ó¥´¥]µ¹windows¨Ï¥Îªºrsync(¥]§t¤Fserverh©Mclient )

serverºÝ¦b¦w¸Ë®É¥¦·|À°§A«Ø¥ß¤@­Ó±b¸¹µ¹ rsync server ¨Ó¨Ï¥Î
¹w³]ªA°È¤w¸g¸Ë§A¸Ë¦n¨Ã±Ò¥Î¤F,¦]¬°¦³¤F³o­Ó±b¸¹¥i¥H¥[±j¨ä¦w¥þ©Ê,¦b³]©w¼Ò²Õ®É­Y­n¥Ñ»·ºÝ¼g¤J®É,°Oªº­n±N±ÂÅvµ¹¥»¾÷¨Ï¥ÎªÌSvcwRsyncªº¹ï¦P¨B¸ê®Æ§¨¼g¤JÅv
¦p¦¹¤~¥i¥H§ó·s

³]©w¤§«e½Ð¥ý°Ñ¦Ò¸ô®|ªºªí¥Ü¤èªk

¸ô®|ªº¹ïÀ³¸Ô±¡½Ð°Ñ·Ówindows path
³]©wrsyncd.conf,½Ð¦bcwrsyncªº¦w¸Ë¸ê®Æ§¨¤¤¶}±Ò¥»ÀÉ 
¥H ¤U¬O¥Ñ¹w³]rsyncd.conf©Ò­×§ï¦Ó¨Ó

use chroot = false
max connections = 4
log file = c:/rsyncd/rsyncd.log
pid file = c:/rsyncd/rsyncd.pid
lock file = c:/rsyncd/rsyncd.lock


[vol1]
path=/cygdrive/c/v1
    comment =vol1
    strict modes = false
    auth users = csc
    secrets file = /cygdrive/c/rsyncd/rsyncd.secrets
    hosts allow = 192.168.0.0/24
    read only = true
    list = false
[test]
path=/cygdrive/D/v1/
comment=test    

#windows ¨S¦³ chroot³o­Ó©R¥O ³Ì ¤j³s½u °O ¿ýÀÉ ¼Ò ²Õvol1 ¤£ ÀˬdÀɮתºÅv­­ ¼Ò ²Õtest
¦b Àô¹ÒÀɤ¤¦³¤@­Ó«Ü­«­nªº³]©w

use chroot = false
³o¤@¦æ¤@©w­n,¦]¬°§A¦bwindows¨t ²Î,µL ªk¤Á´«¨ìrootªº¨­¥÷(°õ ¦æchroot) ¥t¥~¸ô®|ªº³]ªk³Ì¦n¬O¨Ï¥Îunix¤§ Ãþ§@·~¨t²Îªº¥Îªk/¦Ó¤£¬O\ ¨Ò¦p:
c:/windows  (
¤ñ¸û¦n)
c:\windows
°²³]¥»¾÷¬O192.168.0.1

±Ò°ÊªA°Èªº¤è¦¡
¥Ø«e¨Ï¥Îcwrsync ¤w¸g§¹¾ãÀ°§A¸Ë¦n

¶i ¶¥³]©w(Àɮ׼˥»,«ü©wÀɮ׳W «h,­n³Æ¥÷©Î¬O¤£³Æ¥÷)
exclude
exclude-from
include
include-from
¤W­zªºªº°Ñ¼Æ¬O¥Î¨Ó±Æ°£,©Î ¬O¥]§t¬Y¨Ç¼Ë¥»(¦p¥Ø¿ý©ÎÀÉ®×) ¨Ò¦p:
--exclude "*.tmp"
±N°ÆÀɦW¬Otmp±Æ°£¤£³Æ¥÷

§Ú­Ì¦b³Æ¥÷®É¥i¯à¬°¤F±Æ°£¬Y¨Ç¤£»Ý­n³Æ¥÷ªºÀÉ®×Ãþ«¬©Î¥Ø¿ý,¥Î ¨Ó´î¤Ö³Æ¥÷ªº®É¶¡¤ÎªÅ¶¡,¤@¯ë¬Oª½±µ¤U©R¥O,¦ý¬O¦pªG¤Ó¦h¼Ë¥»,§Ú­Ì·|±N¨ä³]©w¨ìÀɮפ§¤¤¤] ´N¬O¨Ï¥Î¤U­±:
exclude-from=
ÀÉ®×
include-from=
ÀÉ®× ªº¦n³B

¼Ë¥»³W«h

»¡©ú

/¬°±Ò©l,¥Nªí¬O¼Ò²Õªº®Ú¥Ø¿ý

¥Ñ©ó¬Y¤@¼Ò²Õ¤º¦³³\¦h¥Ø¿ý¤ÎÀÉ®×,¦p ¦¹³]©w¦³ÂI¹³ µ´¹ï¸ô®|

/¬°µ²§À,¥Nªí¬O¨ä¤Uªº¤l¥Ø¿ý(¤£¥]§t¸Ó¥Ø¿ý¤UªºÀÉ®×)

³Æ¥÷¥D­n¤À¬°ÀɮפΥؿý,¦p¦ó°Ï¤À,´N¦bµ²§À

¥i¥H¨Ï¥Î*,?,[

*¥Nªí0­Ó¥H¤Wªº¥ô·N¦r
*.exe
?
¥Nªí¤@­Ó¥ô·N¦r
abc???.txt
[  ---------
§ÚÁÙ¤£ª¾¹D¬O§_¦p¤@¯ëªº¥¿³Wªí¥Üªk?
[abcd] -
¥N ªíabcdªº¥ô¤@­Ó¦r

**¥Nªí

§Ú­Ì¦³®É­n«ü©w«e­±¥Ø¿ý¤Î«á­±¥Ø¿ý,¤¤ ¶¡ªº¥Ø¿ý¥¼«ü©ú(¥i¥H¬O¦h¼h)
/directory/
¥¼ª¾¥Ø¿ý  /food
/directory/**/food

/ ¦ý¤£¬O¦bµ²§À

¥¦¬O¥Nªí¸ô®|

+¦bexclude¥i¥H¥Î+¨Ó³]©winclude,¦p¦¹¥i¥H¦X¨Ö exclude¤Îinclude¦b¤@­ÓÀɮפº


-¦binclude¥i¥H¥Î-¨Ó³]©wexclude,¦p¦¹¥i¥H¦X¨Ö include ¤Îexclude¦b ¤@­ÓÀɮפº



#
¸Ó¨Ï¥Î¦bserverºÝÁÙ¬OclientºÝ?
¦brsync ©R¥O¦C¬O--exclude-from=ÀÉ ®× ¦brsyncd.conf ¤¤  exclude from = ÀÉ®×¥i¬O­n³]¦bserverºÝ¦nÁÙ¬OclientºÝ ¦n©O
§Ú¬O»{¬°±`¥Î³W«h³]¦b
serverºÝ ¤ñ¸û¦n,¦Ó¤£±`¥Îªº³W«h«h¬O³]¦bclient,ºÞ ²z¤ñ¸û¤è«K,¥i §_¨â­Ó¤@°_¥Î?

©R¥O¦C½d¨Ò:
--exclude "*.o"  
¤£§t¥ô¦ó°ÆÀɦW¬Oo(¥ô ¦ó¥Ø¿ý¤¤)
--exclude "/foo" 
¤£§t¦b®Ú¥Ø¿ý¤U¨ä¥Ø¿ý¬°fooªº ¥ô¦óÀÉ®×(¤£§t¤l¥Ø¿ý)
--exclude "foo/" 
¤£§t¥Ø¿ý¬°foo(¦b ¥ô¦ó¦a¤è)
--exclude "/foo/*/bar"
¤£§t®Ú¥Ø¿ý¤U¨ä¥Ø¿ý¬°foo¤Î¤@¼h¥Ø¿ý¤Îbar¥Ø¿ý¤Uªº¥ô¦óÀÉ®×
--exclude "/foo/**/bar"
¦P¤W¦ý¬O¤¤¶¡§t¤F¦h¼h¥Ø¿ý
--include "*/" --include "*.c" --exclude "*"
¥]§t¥ô¦ó¥Ø¿ý,°ÆÀɦW¬°.c¤£§t¨ä¥¦ªºÀÉ®×
--include "foo/" --include "foo/bar.c" --exclude "*"
¥]§t¥Ø¿ýfooÀÉ®×bar.c¤£§t¨ä¦PªºÀÉ®×

ª`·N:¨C¤@­Óexclude¥u¯à¨Ï¥Î¤@­Ó¼Ë¥»³W«h,¦pªG§A­n¨Ï¥Î¦h­Ó¦b©R¥O¦C¤¤½Ð°Ñ¦Ò¤U ­± --exclude '/foo' --exclude '/abc/'    --exclude '/abc.*'

¨Ï ¥Î-- exclude-from=ÀÉ ®×§¹¾ã¸ô®| ¦bÀɮפ¤¤£ ¥Î¥[¤Þ¸¹" "©Î' ' ¦Ó¥B¬O¤@¦æ¤@­Ó¼Ë¥»,¦p ¤U:
*.tmp
*.TMP
*.lnk
/temp
/EDIDMS/APP/*.DBF

ª` ·N:¦p ªGrsyncd¬O °õ¦æ¦bwindows¨t ²Î«h¤j¤p¼g¬O¤@¼Ëªº,¦ý ¬O¦blinux«h ¤j¤p¼g¤£¤@¼Ë


§R°£¤£¦s¦bªºÀÉ®×

¦b¨Ó·½¤Î¥Ø ªº¥D¾÷¤W±`¦³¤@ºØ±¡§Î¬O,¨Ó ·½¥D¾÷­ì¨Ó¦³¤@­ÓÀÉ®×,¦ý ¬O«á¤~³Q§R°£,¦Ó¥Øªº¥D¾÷¤Wªº¦P¤@ÀÉ ®×¹w³]¬O¤£ ·|³Q§R°£,¥i§_²M°£¤£¥ÎªºÀɮשO?
rsync -az --delete 
¨Ó·½  ¥Øªº ³Ì¦n¬O¥ý¨Ï¥Î -n  ¬d ¬Ý¨º¨ÇÀÉ®×·|³Q§R°£,¦p ªG¤Óªø¥i¥HÂনÀÉ®× > ÀÉ ¦W
rsync -az --delete-excluded
¨Ó·½ ¥Øªº ³o¬O±Æ°£Àɮתº§R°£¤èªk ¤W­z³£¬O¥u§R°£±µ¦¬ºÝ(¥Ø ªº),¤£ §R°£¨Ó·½ªºÀÉ®×


rsyncªººtºâªk­ì²z-®t²§©Ê³Æ¥÷¦p¦ó¹B§@

°Ñ¦Ò:®M ¥ó¤¤ªºtech_report.tex ¤@¯ë³Ì²³æªº³Æ¥÷¬Oª½±µ½Æ»s,¦ý ¬O¦pªG¥u¬OÅܰʳ¡¥÷´N­n¥þ³¡³Æ¥÷,³o·|®ö¶O¤Ó¦h®É ¶¡¤F,¦]¦¹¦³¤H·Q¥X®t²§©Ê³Æ¥÷,¨ä ­ì²z²³æ»¡©ú¦p¤U: °²³]¦³¨â¥x¹q¸£,A,B. A¾÷¾¹¤W¦³¤@­ÓÀÉ®×¥sAF,B¾÷ ¾¹¦³¤@­ÓÀÉ®×¥sBF(¤@¯ëªºÀɦW ¬O¬Û¦Pªº,¦ý ³oùجO¬°¤F°Ï§O)§Ú ­Ì­n§ó·sA->B,¤] ´N¬O AF->BF,­º ¥ýrsync·| ±NAF¤ÎBF¥H300K¦Ü500Kªº °Ï¶ô­p ºâ64¤Î128¦ì ¤¸ªºchecksum,µM «á¤ñ¹ï¨ä¬O§_¬Ûµ¥,¦p ªG¤£¬Ûµ¥ «h·|±N¸Ó°Ï¶ô¶Ç°eB¹q ¸£,¦Ó ¦bB¹q ¸£¨Ì¾ÚBFÀÉ ®×¨Ó­««ØBFÀÉ(§ó ·s¬°AFÀÉ),°Ï ¶ôªº¤ñ¹ï¬O ¸ó¨ì§Oªº°Ï¶ôªºchecksum(§A ¥i¯à·|¥H¬°¥u¦³Àɮ׫᭱ÅÜ °Ê¤~·|´î¤ÖÀɮתº¶Ç°e,¦] ¬°¬O¸ó°Ï¶ô,©Ò ¥H¤£ºÞ¸ê®Æªº­×§ï¬O¦b¨ºùس£¬O¥i¥H¹B¥Î),¦b ¶Ç°eªº¹Lµ{¤¤¤]¥i¥H¥[¤JÀ£ÁYªº¥\¯à,¦p ¦¹¥i¥H¥[³t¶Ç°eªº³t«×,¦p ªG§A ­nª¾¹D§ó¸Ô²Óªº¸ê®Æ½Ð°Ñ¦Òtech_report.txt


¨Ï ¥Îssh

§A ¥i¯à¦b«e ­±³Q::¤Î:©Ò·d²V¤F,§Ú¤]¬O¤@ª½µLªk²z¸Ñ¤å¥ó¤¤ªº»¡ªk ³Ì«á­n³]©wsshªº®É¤~µo²{¤@¨Ç­«­nªºÆ[©À
1.rsync
ªºclient¦³¨âºØ³s½u¤è¦¡
   1.
³s½ursync server
   2.
³s½usshd sever(©Îrsh server³o ­Ó§Ú¤£·|)

¦pªG­n³s½ursync server ­n ¨Ï¥Î:: «á­±±µ¼Ò²Õ ¦pªG­n³s½usshd server­n ¨Ï¥Î«á­±±µ¸ô®| ,¨Ã¨Ï¥Î-e ssh

¦]¬°ssh¨ÃµLªk³]©w¦prsyncd.conf ªºÀô¹ÒÀɩҥH«á­±­n±µµ´¹ï¸ô ®|
ssh
¨âºØ¥Îªk:
rsync -avz -e ssh root@dns1:/etc /backup/dns1
rsync --rsh="ssh -l root" dns1:/etc /backup/dns1

#¬°¤F¦w¥þªº¦]¯À,¦³¤H·|Åܧósshªº port,¥u¯à¨Ï¥Î²Ä¤GºØ¤èªk °²³]sshªºÅܧó³s±µ°ð¬°122,¦b--rsh ¤¤¥[¤J°Ñ¼Æ-p 122
rsync -avz --rsh="ssh -l root -p 122"  dns1:/etc /backup/dns1


ssh§K¥Î±K½Xµn¤J ½Ð°Ñ¦Ò¤å³¹ssh°ò¥»À³¥Î


Åv­­°ÝÃD 

¦b³]©wrsync ®É±`·|¸I¨ì Åv­­°ÝÃD,¦pªG­nÁ×§K³o­Ó°ÝÃD,§Ú¤@¯ë¬O³]©w¥Ñ¨Ó·½ªº¾÷¾¹¤W¤U©R¥O,¦Ó¤£¬O¥Ñ¥Øªº¾÷¾¹¤W¤U©R¥O,³o¼Ë¥i¥HÁ×§KŪ¨ú¨Ó·½Àɮɵo¥ÍÅv­­¤£¨¬ªº°ÝÃD


windows¤UºÏºÐ¾÷¤Î¸ô®|³]©w¤è¦¡(2008/11/18§ó·s)

¦]¬°¨Ï¥Îcygwin¨Ó²¾´Óµ{¦¡¨ìwindows,¦]¦¹§A¥i¥H¨Ï¥Îcygwinªº¬ÛÃö°Ñ ¼Æ

°Ñ¼Æ »¡©ú ½d¨Ò
cygdrive µwºÐªº®Ú¥Ø¿ý c: = /cygdrive/c/
d:\abc = /cygdrive/d/abc/
cygwin cygwinªº¦w¸Ë¥Ø¿ý

¦pªG§AÁÙ¤£ª¾¹D¦p¦ó¹ïÀ³¥i¥H¨Ï¥Îcygwinªºµ{¦¡(§Ú¦b¦w¸Ëcwrsyncªºbin¤¤§ä¨ì)

cygpath ½d¨Ò

©R¥O ¦^À³ »¡©ú
cygpath -W  /cygdrive/c/windows windows¦w¸Ë¥Ø¿ý
cygpath -H /cygdrive/c/Document and Settings  ®a¥Ø¿ý
cygpath -S /cygdrive/c/windows/system32 ¨t²Î¥Ø¿ý
cygpath windows¸ô®| Âରcygwinªº®æ¦¡ «Ü¦³¥Î,·í§A¤£ª¾¹DÀ³¦p¦óÂà´«®É¥i¥H¨Ï¥Î¥»©R¥O¨ÓÂà


ªÅ¥Õ¸ô®|ªº°ÝÃD
windows ¤U¨â­Ó±`¥Îªº¸ô®|c:\Program Files\,c:\Documents and Settings\,¥ý¨Ï¥Îcygpath¨Ó¸ÑªR,¸ÑªR§¹²¦«á,§A¥u­n¦b¸ô®|ªº«e«á¥[¤JÂù¤Þ¸¹,cwrsync´N¥i¥H¥¿±`¾Þ§@,¦pªG³o¼Ë¤]µLªk¸Ñ¨M§Aªº°ÝÃD,½Ð¥ýÂ÷

«á¨¥: §Ú¥»¦³¤@¥x¹q¸£¤@¯ë±Nªñ(1.86GB)³Æ ¥÷­n¤@¨â­Ó¤p®É,¦pªG¨Ï¥ÎºÏ±a¾÷ «h§ó¤[,¦] ¬°¨Ï¥Î®t²§©Êªº³Æ¥÷,¦³ ®É­Ô¥i¥H¦b´X¤Q¤ÀÄÁ¤º§¹¦¨,·Q »¡¤@¥y¸Ü ¯u¬O¤Ó¯«©_¤F,³Ç §J.... ¥i¥H³Æ¥÷,¤] ´î¤Ö¤FµwºÐªº¦s¨ú¦¸¼Æ,¯u ¬O¤@Á|¼Æ±o ¦pªG§Aªº¹q¸£¤À´²¦b¤£¦Pªº¦a¤è,§Ú ­Ì¥i¥H¥H¦¹¤èªk¨Ó°µ¸ê®Æ³Æ´©ªº°Ê§@,¦ý¬O³Ì¦n¬O¥[¤Wvpn©Î ¬Osshªº ¤è¦¡


°ÝÃD©Mµª®×:
1.cwrsync serverºÝµLªk«ü©w¼Ò¥Ø¥]§t¤¤¤å¸ô®|
  ÁöµM§Ú­ÌµLªk«ü©w,¦ý¬O¥u­n¬O¤l¥Ø¿ý¬O¤¤¤å³£¥i¥H¥¿±`ªº¦P¨B,¦]¦¹¸Ñ¨M¤èªk¬OserverºÝªº¼Ò²Õ¨Ï¥Î­^¤å"©Î¸ê®Æ§¨¤W¼h¦³­^¤åªº¥Ø¿ý«h¥H¥¦¨Ó³]¼Ò²Õ",
  clientºÝ¨Ï¥Î­^¤å¼Ò²Õ¨Ã±µ¤¤¤å¸ô®|¨Ó¨Ï¥Î,¤]´N¬OclientºÝ¨Ó«ü©w¤¤¤å

2.rsync ©R¥O¤¤­Y¸ô®|§t¦³ªÅ®æ«h±N¾ã­Ó¸ô®|¬A°_¨Ó""
3.2010/04/13³Ì·sª©ªºcwrsync ¨Ï¥Îcygwin-1.7.0-62¤w¸g¤ä´©utf-8¦]¦¹¤£¥Î¤Wºô¤U¸ü³Ìcygwinªºutf-8­×¥¿dll¨Ó´À
4.chdir()¿ù»~,¤@¯ë¬O¸ê®Æ§¨³]©w¦³°ÝÃD,¤£¬O¸ê®Æ§¨¤£¦s¦b(¸ô®|³]¿ù),©Î¬O¤£¤ä´©¸Ó½s½X
5.¥tÅv­­ªº¿ù»~ÁÙ¦³¤@ºØ,­Y³]©wÀɨS¦³³]©wuid«h·|¨Ï¥Înobody ,¦]¦¹§A­Y¨S¦³¦w¥þ©Êªº°ÝÃD,¥i¥H±Nuid=root