Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (4.2BSD)
Apropos / Subsearch:
optional field

DUMP(5)                       File Formats Manual                      DUMP(5)

       dump, dumpdates - incremental dump format

       #include <&lt;sys/types.h>&gt;
       #include <&lt;sys/inode.h>&gt;
       #include <&lt;dumprestor.h>&gt;

       Tapes used by dump and restore(8) contain:

              a header record
              two groups of bit map records
              a group of records describing directories
              a group of records describing files

       The  format  of  the  header  record  and  of  the first record of each
       description as given in the include file &lt;dumprestor.h&gt; is:

       #define NTREC       10
       #define MLEN        16
       #define MSIZ        4096

       #define TS_TAPE     1
       #define TS_INODE    2
       #define TS_BITS     3
       #define TS_ADDR     4
       #define TS_END      5
       #define TS_CLRI     6
       #define MAGIC       (int) 60011
       #define CHECKSUM    (int) 84446

       struct    spcl {
            int       c_type;
            time_t         c_date;
            time_t         c_ddate;
            int       c_volume;
            daddr_t        c_tapea;
            ino_t          c_inumber;
            int       c_magic;
            int       c_checksum;
            struct         dinode         c_dinode;
            int       c_count;
            char      c_addr[BSIZE];
       } spcl;

       struct    idates {
            char      id_name[16];
            char      id_incno;
            time_t         id_ddate;

       #define   DUMPOUTFMT     "%-16s %c %s"       /* for printf */
                                     /* name, incno, ctime(date) */
       #define   DUMPINFMT "%16s %c %[^\n]\n"  /* inverse for scanf */

       NTREC is the number of 1024 byte records  in  a  physical  tape  block.
       MLEN  is  the  number of bits in a bit map word.  MSIZ is the number of
       bit map words.

       The TS_ entries are used in the c_type field to indicate what  sort  of
       header this is.  The types and their meanings are as follows:

       TS_TAPE      Tape volume label
       TS_INODE     A file or directory follows.  The c_dinode field is a copy
                    of the disk inode and contains bits telling what  sort  of
                    file this is.
       TS_BITS      A  bit  map  follows.  This bit map has a one bit for each
                    inode that was dumped.
       TS_ADDR      A subrecord of a file description.  See c_addr below.
       TS_END       End of tape record.
       TS_CLRI      A bit map follows.  This bit map contains a zero  bit  for
                    all inodes that were empty on the file system when dumped.
       MAGIC        All header records have this number in c_magic.
       CHECKSUM     Header records checksum to this value.

       The fields of the header structure are as follows:

       c_type       The type of the header.
       c_date       The date the dump was taken.
       c_ddate      The date the file system was dumped from.
       c_volume     The current volume number of the dump.
       c_tapea      The current number of this (1024-byte) record.
       c_inumber    The  number  of  the inode being dumped if this is of type
       c_magic      This contains the value MAGIC above, truncated as needed.
       c_checksum   This contains whatever value is needed to make the  record
                    sum to CHECKSUM.
       c_dinode     This is a copy of the inode as it appears on the file sys-
                    tem; see fs(5).
       c_count      The count of characters in c_addr.
       c_addr       An array of characters describing the blocks of the dumped
                    file.   A  character  is zero if the block associated with
                    that character was not present on the file system,  other-
                    wise  the  character  is  non-zero.   If the block was not
                    present on the file system, no block was dumped; the block
                    will  be  restored as a hole in the file.  If there is not
                    sufficient space in this record to  describe  all  of  the
                    blocks  in  a  file,  TS_ADDR  records  will  be scattered
                    through the file, each one picking up where the last  left

       Each  volume  except  the  last ends with a tapemark (read as an end of
       file).  The last volume ends with a TS_END record and  then  the  tape-

       The  structure  idates  describes  an  entry in the file /etc/dumpdates
       where dump history is kept.  The fields of the structure are:

       id_name  The dumped filesystem is `/dev/id_nam'.
       id_incno The level number of the dump tape; see dump(8).
       id_ddate The  date  of  the  incremental  dump  in  system  format  see


       dump(8), restore(8), fs(5), types(5)

4th Berkeley Distribution        18 July 1983                          DUMP(5)