On Tue, 24 Sep 2002 [EMAIL PROTECTED] wrote: > Here's the script: > ++++++++++++++++++++++++++++++++++++++++++++++++++++ > #!/bin/sh > > { > echo starting on `uname -a` > rm -rf dira dirb dirc > mkdir dira > mkdir dirb > ln -s dirb dirc > date >dira/file > rsync dira/file dirc > ls -ld `find dirb -print` > echo finished on `uname -a` > } >> $HOME/netapp/rsyncsymlinktest.log 2>&1 > ++++++++++++++++++++++++++++++++++++++++++++++++++++ > and here's the output, run on 4 different architectures: > ++++++++++++++++++++++++++++++++++++++++++++++++++++ > starting on Linux arwen.ustc.sc.philips.com 2.4.18-6mdkenterprise #1 SMP > Fri Mar 15 02:28:20 CET 2002 i686 unknown > drwxr-xr-x 2 tconway Vlsieng 4096 Sep 24 12:53 dirb > -rw-r--r-- 1 tconway Vlsieng 29 Sep 24 12:53 dirb/file > finished on Linux arwen.ustc.sc.philips.com 2.4.18-6mdkenterprise #1 SMP > Fri Mar 15 02:28:20 CET 2002 i686 unknown > ++++++++++++++++++++++++++++++++++++++++++++++++++++ > What platform are you on? What's the version of rsync? What's the > filesystem?
This script runs ok starting on Linux shannon 2.4.18 #2 Fri Apr 19 11:33:47 PDT 2002 i686 unknown unknown GNU/Linux drwxr-xr-x 2 gwen gwen 4.0K Sep 24 12:22 dirb/ -rw-r--r-- 1 gwen gwen 29 Sep 24 12:22 dirb/file finished on Linux shannon 2.4.18 #2 Fri Apr 19 11:33:47 PDT 2002 i686 unknown unknown GNU/Linux But here is a script which doesn't work for me: { echo starting on `uname -a` rm -rf source dest mkdir -p source/dira mkdir -p dest/dirb ln -s dirb dest/dira date >source/dira/file date >dest/dira/file2 cd source echo "Before" ls -ld `find ../dest -print` rsync -R dira/file ../dest/ echo "After" ls -ld `find ../dest -print` echo finished on `uname -a` cd .. } And here is the output: starting on Linux shannon 2.4.18 #2 Fri Apr 19 11:33:47 PDT 2002 i686 unknown unknown GNU/Linux Before drwxr-xr-x 3 gwen gwen 4.0K Sep 24 12:33 ../dest/ lrwxrwxrwx 1 gwen gwen 4 Sep 24 12:33 ../dest/dira -> dirb/ drwxr-xr-x 2 gwen gwen 4.0K Sep 24 12:33 ../dest/dirb/ -rw-r--r-- 1 gwen gwen 29 Sep 24 12:33 ../dest/dirb/file2 After drwxr-xr-x 4 gwen gwen 4.0K Sep 24 12:33 ../dest/ drwxr-xr-x 2 gwen gwen 4.0K Sep 24 12:33 ../dest/dira/ -rw-r--r-- 1 gwen gwen 29 Sep 24 12:33 ../dest/dira/file drwxr-xr-x 2 gwen gwen 4.0K Sep 24 12:33 ../dest/dirb/ -rw-r--r-- 1 gwen gwen 29 Sep 24 12:33 ../dest/dirb/file2 finished on Linux shannon 2.4.18 #2 Fri Apr 19 11:33:47 PDT 2002 i686 unknown unknown GNU/Linux As you can see, I can no longer access dest/dira/file2. I also tried stuff like rsync -R dira/file ../dest/dira/.././ with the same result. -- Gwen > > > Tim Conway > [EMAIL PROTECTED] > 303.682.4917 office, 303.921.0301 cell > Philips Semiconductor - Longmont TC > 1880 Industrial Circle, Suite D > Longmont, CO 80501 > Available via SameTime Connect within Philips, caesupport2 on AIM > "There are some who call me.... Tim?" > > > > > Sriram Ramkrishna <[EMAIL PROTECTED]> > Sent by: [EMAIL PROTECTED] > 09/24/2002 10:19 AM > > > To: Gwendal Stevanazzi <[EMAIL PROTECTED]> > cc: jw schultz <[EMAIL PROTECTED]> > [EMAIL PROTECTED] > (bcc: Tim Conway/LMT/SC/PHILIPS) > Subject: Re: rsync to a symlink directory > Classification: > > > > I've always tried just appending a trailing slash to the destination > that always worked for me. > > sri > > On Tue, Sep 24, 2002 at 12:28:02AM -0700, Gwendal Stevanazzi wrote: > > On Mon, 23 Sep 2002, jw schultz wrote: > > > > > On Mon, Sep 23, 2002 at 06:03:12PM -0700, Gwendal Stevanazzi wrote: > > > > > > > > Here is the structure of my servers : > > > > > > > > Source : > > > > > > > > /home/test1/link_dir > > > > sub_dir1 > > > > file1 > > > > file2 > > > > ... > > > > sub_dir2 > > > > ... > > > > > > > > Destination: > > > > > > > > /home/test2/real_dir > > > > sub_dir1 > > > > file1 > > > > file2 > > > > ... > > > > subdir2 > > > > ... > > > > /home/test2/link_dir@ -> real_dir > > > > > > > > > > > > > > > > Now I want to update file1. > > > > If I run the command > > > > rsync -aRz file1 destination:/home/test2/link_dir/sub_dir1 > > > > from /home/test1/link_dir/sub_dir1 on source, no problem, the file > is > > > > updated. > > > > > > > > If I run the command > > > > rsync -aRz link_dir/sub_dir1/file1 destination:/home/test2/ > > > > from /home/test1 on source, the new fs structure on destination is: > > > > > > > > /home/test2/real_dir > > > > sub_dir1 > > > > file1 > > > > file2 > > > > ... > > > > subdir2 > > > > ... > > > > > > > > /home/test2/link_dir > > > > sub_dir1 > > > > file1 > > > > > > > > The symlink is erase and replace by a 'real' directory. > > > > > > > > > > > > Is it the expected behaviour? > > > > > > > > How could I prevent this kind of things to happen ? > > > > > > It is inferred because you haven't yet traversed the link > > > and since rsync doesn't see a directory it will create one. Try > > > rsync -aRz link_dir/sub_dir1/file1 destination:/home/test2/./ > > > to force the traversal of the link so it is already inside > > > the destination. > > > > Thanks for your quick answer, but unforunately it didn't work any > better. > > > > Here is the output of the command with -v and --stats if it helps: > > > > building file list ... done > > link_dir/ > > link_dir/sub_dir1/ > > link_dir/sub_dir1/file1 > > rsync[17349] (server receiver) heap statistics: > > arena: 123544 (bytes from sbrk) > > rsync[17347] (sender) heap statistics: > > arena: 336536 (bytes from sbrk) > > ordblks: 2 (chunks not in use) > > smblks: 0 > > hblks: 0 (chunks from mmap) > > hblkhd: 0 (bytes from mmap) > > usmblks: 0 > > fsmblks: 0 > > uordblks: 326880 (bytes used) > > fordblks: 9656 (bytes free) > > keepcost: 5560 (bytes in releasable chunk) > > > > Number of files: 3 > > Number of files transferred: 1 > > Total file size: 266240 bytes > > Total transferred file size: 266240 bytes > > Literal data: 266240 bytes > > Matched data: 0 bytes > > File list size: 96 > > Total bytes written: 266517 > > Total bytes read: 36 > > > > wrote 266517 bytes read 36 bytes 533106.00 bytes/sec > > total size is 266240 speedup is 1.00 > > > > > > This test was done with rsync version 2.5.6cvs protocol version 26 > > but I don't think it matters ... > > > > > > -- > > Gwen > > > > -- > > To unsubscribe or change options: > http://lists.samba.org/mailman/listinfo/rsync > > Before posting, read: > http://www.tuxedo.org/~esr/faqs/smart-questions.html > -- To unsubscribe or change options: http://lists.samba.org/mailman/listinfo/rsync Before posting, read: http://www.tuxedo.org/~esr/faqs/smart-questions.html