Rsync to a Read Only file system

Douglas Wade Needham site.samba at ka8zrt.com
Tue Feb 12 20:12:33 GMT 2008


The one thing I can see is that perhaps part of what is being sync'ed
is on a read-only filesystem, while portions of the underlying tree
are not.  For example, it is common to mount the root file system
read-only, while areas such as /var are read-write.

On the flip side, there is also the problem where the top portions of
a tree being rsync'ed would be in a read-write area, and areas under
it would potentially be in a read-only partition.  I have seen this a
number of times, where developers would have multiple areas mounted
under their home directories onto a build server.

On the performance improvements... I am sure that there are some which
can be made... always is, always will be.  About the best I can see in
this would be perhaps test and set/clear a flag every time one directory is
traversed.  This likely could be done by looking at the st_dev member
of the stat structure, IIRC.

- Doug

Quoting smokin.jake at mac.com (smokin.jake at mac.com):
> I think your product is awesome, but I am experiencing an unexpected  
> behaviour.
> 
> $ rsync -avviPH /Users/alan/Desktop/rsync_test\ Folder/   
> root at slug::Downloads
> 
> opening tcp connection to slug port 873
> sending daemon args: --server -vvlHogDtpre30.16i "--log-format=%i" -- 
> partial . Downloads
> sending incremental file list
> .d..t..g... ./
> rsync: failed to write xattr user.rsync.%stat for "/." (in  
> Downloads): Read-only file system (30)
> rsync: failed to set times on "/." (in Downloads): Read-only file  
> system (30)
> <f.st..g... .DS_Store
>         6148 100%    4.76MB/s    0:00:00 (xfer#1, to-check=12/14)
> cd+++++++++ RSYNC_TEST/
> rsync: recv_generator: mkdir "/RSYNC_TEST" (in Downloads) failed:  
> Read-only file system (30)
> *** Skipping any contents from this failed directory ***
> rsync: mkstemp "/..DS_Store.iiOfRf" (in Downloads) failed: Read-only  
> file system (30)
> total: matches=6  hash_hits=8  false_alarms=0 data=1948
> 
> sent 2414 bytes  received 144 bytes  1705.33 bytes/sec
> total size is 146404  speedup is 57.23
> rsync error: some files could not be transferred (code 23) at main.c 
> (1058) [sender=3.0.0pre8]
> 
> The destination file system is  Read Only, but RSYNC takes the time  
> and looks as if the transfer is happening, but of course it is not.
> I would like RSYNC to terminate as soon as it knows its destination  
> is Read only.
> 
> The transfer is from a  Mac OSX to Debian Linux HFSPlus file system.
> 
> OSX
>  rsync  version 3.0.0pre8  protocol version 30.PR16
>  Capabilities:
>     64-bit files, 32-bit inums, 32-bit timestamps, 64-bit long ints,
>     socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
>     append, ACLs, xattrs, iconv, file-flags
> 
> Linux
> rsync  version 3.0.0pre8  protocol version 30.PR16
> Capabilities:
>     64-bit files, 64-bit inums, 32-bit timestamps, 64-bit long ints,
>     socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
>     append, ACLs, xattrs, iconv
> 
> Thanks
> 
> 
> -- 
> To unsubscribe or change options: 
> https://lists.samba.org/mailman/listinfo/rsync
> Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html

-- 
Douglas Wade Needham - KA8ZRT        UN*X Consultant & UW/BSD kernel programmer
Email:  cinnion @ ka8zrt . com       http://www.ka8zrt.com
Disclaimer: My opinions are my own.  Since I don't want them, why
            should my employer, or anybody else for that matter! 


More information about the rsync mailing list