On Feb 12 22:34, Christian Franke via Cygwin wrote:
> Corinna Vinschen via Cygwin wrote:
> > On Feb 12 17:32, Cedric Blancher via Cygwin wrote:
> > > Good afternoon!
> > > 
> > > Is copying sparse files broken in 3.6.0-0.362.g68c13dc92f65.x86_64?
> > > 
> > > cp --version
> > > cp (GNU coreutils) 9.5
> > > Packaged by Cygwin (9.5-1
> > > 
> > > Checklist:
> > > - Volume has FILE_SUPPORTS_SPARSE_FILES
> > > - Cygwin mount has "sparse" option (mount Y: -o sparse,exec /cygdrive/y)
> 
> Do all mount points below /cygdrive have 'sparse,exec' set?
> 
> If not, this may not work because different mount options for individual
> /cygdrive/s are not supported (AFIAK).
> 
> 
> > > - source file has FILE_ATTRIBUTE_SPARSE_FILE set
> > > 
> > > But  cp --sparse=auto ... or any other combination of --sparse does
> > > copy holes, i.e. turns 500GB of hole into 500GB of data (zero bytes).
> > > 
> > > echo "hello sparse file\n" >testcase17_sparse_begins_with_data && dd
> > > if=/dev/null of=testcase17_sparse_begins_with_data oflag=append bs=1
> > > count=1 seek=$((65536*512)) && echo "endoffile"
> > > > > testcase17_sparse_begins_with_data
> > Works for me:
> > 
> > $ uname -r
> > 3.6.0-0.362.g68c13dc92f65.x86_64
> > 
> > $ pwd
> > /home/corinna/tmp
> > 
> > $ mount | grep tmp
> > C:/cygwin64/home/corinna/tmp on /home/corinna/tmp type ntfs 
> > (binary,sparse,user,bind)
> 
> This mount is independent from /cygdrive. That may make the difference.

You're right!  I didn't notice this.

This:

> - Cygwin mount has "sparse" option (mount Y: -o sparse,exec /cygdrive/y)

doesn't work:

  $ cat /etc/fstab
  Y: /mnt/y binary,posix=0,sparse 0 0
  none /mnt cygdrive binary,posix=0 0 0
  $ mount
  [...]
  Y: on /mnt/y type ntfs (binary,posix=0,noumount,auto)

As you can see, the options for drive Y are ignored and the options
for the cygdrive prefix are used.  This is even documented in a special
note in https://cygwin.com/cygwin-ug-net/using.html#cygdrive

Thanks for pointing this out, Christian!


Corinna

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to