Hi, I am on a developpers list for mandrake: cooker@ and the rsync-servers broke which resulted in a lot of very unhappy people cause their rsync directories got empied.
My idea is the following. rsync is a mirroring tool. The usual thing that happens in a mirroring tool is that packages do not disappear. You server that archive: like the linux-kernel server. And you got servers that update all the time. In the first case its easy. all you have to do is get the new packages. You can trust the other ones. Removing them is silly. In the cooker-case its more subtile: A package is replace by a newer version. So if an update occurs like: kernel-1.2.3 is replaced by kernel-1.2.4 this is normal behaviour, but if package-2.4.8 is deleted and nothing is replacing it this is weird behaviour. Instead off assuming the connection is right and the mirror made no errors and removing the files lets change this behaviour and let rsync make a list like: # these are the packages that are no longer on the server. rm package-2.4.8 rm nother1-4.5.6 Now all the rsync user has to do is having a look at that list and sh it if he agrees. Off course this is optional behaviour. Just my 2ct. Btw I am not subscribed to this list, and I am not involved in rsync development. I hope you like my idea. You don't have to cc me or anything, just to let you know. Groetjes, Han. -- #!/bin/perl -sp0777i<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<j]dsj $/=unpack('H*',$_);$_=`echo 16dio\U$k"SK$/SM$n\EsN0p[lN*1 lK[d2%Sa2/d0$^Ixp"|dc`;s/\W//g;$_=pack('H*',/((..)*)$/)