Man Linux: Main Page and Category List

NAME

       zsyncmake - Build control file for zsync(1)

SYNTAX

       zsyncmake  [  {  -z  |  -Z } ] [ -e ] [ -C ] [ -u url ] [ -U url ] [ -b
       blocksize ] [ -o outfile ] [ -f targetfilename ] [ -v ] filename

       zsync -V

DESCRIPTION

       Constructs a metafile for the zsync client program to  use  to  perform
       partial  file  downloads.  filename  is  the  file  that  users wish to
       downloads; zsyncmake constructs the  appropriate  metafile  and  writes
       filename.zsync in the current directory.

       zsync  will  need  at  least  one  URL  from which to download the file
       content. If the .zsync will be in the same directory  as  the  file  to
       download, you can accept the default - zsync includes a relative URL in
       the control file. If not, use the -u option to  specify  the  URL.  You
       should  also  specify  a  URL  for  the uncompressed content with -U if
       available, as zsync can make use of this for more  efficient  downloads
       sometimes.  (You can edit the .zsync file and add these afterwards - it
       has a simple key: value format in the header - but I suggest  you  only
       do this once you are familiar with the tool.)

       Note  that  zsyncmake  itself  does  not (currently) verify the URLs or
       download any data, you must provide the file data locally and check the
       URLs yourself.

OPTIONS

       -b blocksize
              Specify  the  blocksize  to  the  underlying  rsync algorithm. A
              smaller blocksize may be more efficient for  files  where  there
              are  likely  to  be  lots  of  small,  scattered changes between
              downloads; a larger blocksize is more efficient for  files  with
              fewer  or less scattered changes. This blocksize must be a power
              of two. If not specified, zsyncmake chooses one which it  thinks
              is  best  for this file (currently either 2048 or 4096 depending
              on file size) - so normally tyou should not need to override the
              default.

       -C     Tells  zsyncmake  not to generate any instructions in the .zsync
              telling the client to compress the data  it  receives.  This  is
              implied  by  -z,  but this option is here in case you compress a
              file yourself only for the transfer, but want the client to  end
              up with the uncompressed file (e.g. you are transferring an ISO,
              which is held compressed on the server,  but  which  the  client
              cannot  use  unless  it  is uncompressed). Without -C, zsyncmake
              will produce directions for the client to compress the  file  it
              receives  where  appropriate;  -C  is  here  so  you can stop it
              telling the client to do that.

       -e     Tells zsyncmake that the client must  be  able  to  receive  the
              exact  file  that  was  supplied. Without this option, zsyncmake
              only gives a weaker guarantee - that the client will receive the
              data  it  contains  (e.g.  it  might  transfer  the uncompressed
              version of a .gz to the client). Note that  this  still  doesn’t
              guarantee  that the client will get it - the client could ignore
              the directives in the zsync  file,  or  might  be  incapable  of
              exactly  reproducing  the compression used. But with -e you know
              that zsyncmake has made it possible to get the exact data  -  it
              will exit with an error if it cannot.

       -f filename
              Set the filename to include in the output file (this is what the
              file will be called when a user finished downloading it).

       -o outputfile
              Override the default output file name.

       -u url Specifies the URL from which users can download the  content  of
              the  supplied file. Users need the control file in order to find
              out what parts of the file they already have, and they need  the
              URLs  to  retrieve the parts of the file that they don’t already
              have. You can specify multiple URLs by  specifying  -u  multiple
              times.  If  not  specified,  zsync assumes that the file and the
              .zsync will reside in the same public directory, and includes  a
              single relative URL.

       -U url Specifies a URL corresponding to the decompressed content of the
              file (only applicable if it is a gzip file). zsync can sometimes
              download  more  efficiently from the uncompressed data than from
              the compressed  data  -  it  will  take  advantage  of  this  if
              available.  If  no  URLs  are  specifies, zsync looks for a file
              without the .gz extension and assumes that this will be  in  the
              same  public  dir  as the .zsync, and includes a relative URL to
              it.

       -v     Enable verbose messages.

       -V     Prints the version of zsync.

       -z     Compress the file to transfer. Note  that  this  overwrites  any
              file  called  filename.gz  without  warning (if you don’t give a
              filename, e.g. because you are reading from  stdin,  then  zsync
              will  use  the  name  supplied  with  -f, or as a last fallback,
              zsync-target.gz).

       zsync can work with compressed data, and, in most cases where the  data
       is  not  already compressed, it is more efficient to compress it first.
       While you can just compress the file to transfer with gzip, if you  use
       this  option then zsyncmake will compress the file for you, producing a
       .gz file which is optimised for zsync. This can be 30%  more  efficient
       at download time than compressing with gzip --best - but the compressed
       file will not be as small at that produced by gzip.

       -Z     zsyncmake automatically looks inside gzip compressed  files  and
              exports the underlying, uncompressed data to the zsyncmake file.
              In  testing  this  has  proved  to  provide   greater   download
              efficiency.  -Z  overrides the default behaviour and treats gzip
              files as just binary data. Use this if it is essential that  the
              user  receives  the  compressed  data  (for  instance  because a
              cryptographic signature is available  only  for  the  compressed
              data).  zsync  is typically no use if you specify -Z, unless the
              gzip file was compressed with the special --rsync option to make
              it friendly to differential transfers.

EXAMPLES

       zsyncmake -C -u http://ftp.uk.debian.org/debian/dists/sarge/main/binary
       -i386/Packages.gz Packages.gz

       Note use of -C to save the client compressing the file on receipt;  the
       Debian package system uses the file uncompressed.

       zsyncmake -z my-subversion-dump

       In  this  case  there  is  a large, compressible file to transfer. This
       creates a gzipped version of the file  (optimised  for  zsync),  and  a
       .zsync  file.  A URL is automatically added assuming that the two files
       will be served from the same directory on the web server.

       zsyncmake -e -u http://www.mirrorservice.org/sites/ftp.freebsd.org/pub/
       FreeBSD/ports/distfiles/zsync-0.2.2.tar.gz zsync-0.2.2.tar.gz

       This  creates  a zsync referring to the named source tarball, which the
       client should  download  from  the  given  URL.  This  example  is  for
       downloading  a source tarball for a FreeBSD port, hence -e is specified
       so the client will be able to match its md5sum.

AUTHORS

       Colin Phipps <cph@moria.org.uk>

SEE ALSO

       zsync(1)