VENTI-BACKUP(8)                                   VENTI-BACKUP(8)

          rdarena, wrarena - copy arenas between venti servers

          venti/rdarena [ -qv ] arenapart arenaname

          venti/wrarena [ -o fileoffset ] [ -h host ] arenafile [
          clumpoffset ]

          Rdarena extracts the named arena from the arena partition
          arenapart and writes this arena to standard output.  This
          command is typically used to back up an arena to external
          media.  The -v option generates more verbose output on stan-
          dard error; -q generates only errors on standard error.

          Wrarena writes the blocks contained in the arena arenafile
          (typically, the output of rdarena) to a Venti server.  It is
          typically used to reinitialize a Venti server from backups
          of the arenas.  For example,

               venti/rdarena /dev/sdC0/arenas arena.0 >
               venti/wrarena -h venti2

          writes the blocks contained in arena.0 to the Venti server
          venti2 (typically not the one using /dev/sdC0/arenas).

          The -o option specifies that the arena starts at byte
          fileoffset (default 0) in arenafile . This is useful for
          reading directly from the Venti arena partition:

               venti/wrarena -h venti2 -o 335872 /dev/sdC0/arenas

          (In this example, 335872 is the offset shown in the Venti
          server's index list (344064) minus one block (8192).  You
          will need to substitute your own arena offsets and block

          Finally, the optional offset argument specifies that the
          writing should begin with the clump starting at offset
          within the arena.  Wrarena prints the offset it stopped at
          (because there were no more data blocks).  This could be
          used to incrementally back up a Venti server to another
          Venti server:

               last=`{cat last}
               venti/wrarena -h venti2 -o 335872 /dev/sdC0/arenas $last >output
               awk '/^end offset/ { print $3 }' offset >last

          Of course, one would need to add wrapper code to keep track

     Page 1                       Plan 9             (printed 4/13/24)

     VENTI-BACKUP(8)                                   VENTI-BACKUP(8)

          of which arenas have been processed.  See
          /sys/src/cmd/venti/words/backup.example for a version that
          does this.


          venti(6), venti(8)

          Wrarena can't read a pipe or network connection containing
          an arena; it needs a file already containing the entire

     Page 2                       Plan 9             (printed 4/13/24)