REMSYNC.1
上传用户:datang2001
上传日期:2007-02-01
资源大小:53269k
文件大小:6k
源码类别:

操作系统开发

开发平台:

C/C++

  1. REMSYNC(1)                Minix Programmer's Manual                 REMSYNC(1)
  2. NAME
  3.      remsync - remotely synchronize file trees
  4. SYNOPSIS
  5.      remsync -sxv tree [state-file]
  6.      remsync -duxvD tree [state-file [diff-file]]
  7.      remsync [-xv] tree [diff-file]
  8. DESCRIPTION
  9.      Remsync synchronizes file trees of distant machines, i.e.  machines  that
  10.      do  not  have a fast network between them.  It accomplishes this in three
  11.      steps:
  12.           Create a state file containing a description of the  machine  to  be
  13.           updated.
  14.           Compute a file of differences on the source machine using the  state
  15.           file to compare the two file trees.
  16.           Update the target machine using the data in the differences file.
  17.      This process requires that you move two files,  a  state  file  from  the
  18.      target  machine  to  the  source machine, and a differences file from the
  19.      source machine to the target machine.  The state file is  an  ASCII  file
  20.      that  may  be  edited,  usually to make remsync ignore some files or file
  21.      trees.
  22.      The argument tree may be a single file or a directory.   A  directory  is
  23.      traversed  recursively.  The state-file and diff-file arguments may be of
  24.      any file type.  The differences file contains an end marker, so it may be
  25.      followed  by  trailing  junk.   Standard input or output is used if these
  26.      arguments are omitted or replaced by a minus sign.
  27.   State file format
  28.      A state file has a line for each file in a tree.  A line looks like  this
  29.      formally for a simple file:
  30.           name mode owner group length date [link-number [last]]
  31.      The best way to show how each type of file is represented is by example:
  32.           /         d755    0   0
  33.           bin       d755    2   0
  34.             [         644     2   0   233   759160857   1
  35.             cat       755     2   0   3772  768742021
  36.             test      755     2   0   233   759160857   1   last
  37.           dev       d755    0   0
  38.             fd0       b666    0   0   200
  39.             console   c600    10  0   400
  40.             sd2       b600    0   0   a02
  41.                                                                              1
  42. REMSYNC(1)                Minix Programmer's Manual                 REMSYNC(1)
  43.             fifo      p700    2   0
  44.           opt       ->      usr/opt
  45.           usr       ignore (Cross-device link)
  46.      The root of the tree is always represented by a /, no matter what type of
  47.      file  it may be.  Directory entries of the root follow at the same level.
  48.      Files in subdirectories are indented by two spaces.   (Eight  spaces  are
  49.      replaced  by a TAB.)  Normal files have their length and modified time in
  50.      the state file, devices have their device number in hex, etc.   If  files
  51.      are hard linked to each other then they all get an extra "link number" to
  52.      bind them together.  The last link is marked with the word last.
  53.      One usually only modifies a state file to ignore differences between  two
  54.      files.   One  does  this  by  replacing the file attributes with the word
  55.      ignore.  (Remsync generates this keyword too, with the reason  why  added
  56.      in parentheses.)
  57. OPTIONS
  58.      -s   Generate a state file.
  59.      -d   Generate a differences file.  (The default is to apply a differences
  60.           file.)
  61.      -u   Only add new files or update files with newer versions.
  62.      -x   Do not cross device boundaries.  This allows one to operate  on  the
  63.           root file system for instance ignoring the /usr file system.
  64.      -D   Debug differences file generation.  With this flag no file  contents
  65.           are  added  to  the  differences  file.   The  result  is then human
  66.           readable.
  67.      -v   Lists the commands added to the differences  file,  or  the  actions
  68.           done  applying  a  differences  file.   The  output  looks like UNIX
  69.           commands  except  for  the  words  "add",  "restore"  and   "update"
  70.           indicating  addition  of  a new file, replacing a file with an older
  71.           version, or replacement by a newer version.
  72. EXAMPLES
  73.      Actions taken by the author to update his notebook "finiah" from his main
  74.      machine "darask":
  75.           finiah# remsync -s /usr /tmp/finiah.state
  76.           Edit the state file to ignore .Xauthority files and /usr/var.
  77.           finiah# tar cvf /dev/fd0 /tmp/finiah.state
  78.           darask# tar xvf /dev/fd0
  79.                                                                              2
  80. REMSYNC(1)                Minix Programmer's Manual                 REMSYNC(1)
  81.           darask# remsync -dv /usr /tmp/finiah.state | vol 1440 /dev/fd0
  82.           finiah# vol 1440 /dev/fd0 | remsync -v /usr
  83.      One could add a file compression/decompression  program  between  remsync
  84.      and  vol,  to  reduce  the  number  of  floppies  to move about, but that
  85.      actually slows things down!  (Note that one only  needs  to  shuffle  two
  86.      floppies  about  if  the  two  machines are adjacent.  To update a remote
  87.      machine it does make sense to use compression to  reduce  the  number  of
  88.      floppies to carry.)
  89. SEE ALSO
  90.      synctree(1), vol(1), tar(1).
  91. NOTES
  92.      Nothing stops you from using remsync  over  a  fast  network  of  course.
  93.      Synctree  can  be  a  bit tedious if you only want to ignore a few files.
  94.      Editing a state file is then easier.
  95. BUGS
  96.      Files are overwritten, not removed, when they are  updated.   This  means
  97.      that  links  outside  the  tree  are  also  updated.   The less desirable
  98.      alternative to this is to break the link before the update.
  99.      The verbose option may say that a link is to be  created  when  making  a
  100.      differences  file.  The link is often already there when the update takes
  101.      place, so no action is taken, and thus no talk about it.  So you may miss
  102.      a few mutterings about links if you compare the messages.
  103. AUTHOR
  104.      Kees J. Bot (kjb@cs.vu.nl)
  105.                                                                              3