1DUMP(5) File Formats Manual DUMP(5)
2
3
4
6 dump, ddate - incremental dump format
7
9 #include <sys/types.h>
10 #include <sys/ino.h>
11 #include <dumprestor.h>
12
14 Tapes used by dump and restor(8) contain:
15
16 a header record
17 two groups of bit map records
18 a group of records describing directories
19 a group of records describing files
20
21 The format of the header record and of the first record of each
22 description as given in the include file <dumprestor.h> is:
23
24 #if UCB_NKB == 1
25 #define NTREC 10
26 #endif
27 #ifndef UCB_NKB
28 #define NTREC 20
29 #endif
30 #define MLEN 16
31 #define MSIZ 4096
32
33 #define TS_TAPE 1
34 #define TS_INODE 2
35 #define TS_BITS 3
36 #define TS_ADDR 4
37 #define TS_END 5
38 #define TS_CLRI 6
39 #define MAGIC (int)60011
40 #define CHECKSUM (int)84446
41 struct spcl
42 {
43 int c_type;
44 time_t c_date;
45 time_t c_ddate;
46 int c_volume;
47 daddr_t c_tapea;
48 ino_t c_inumber;
49 int c_magic;
50 int c_checksum;
51 struct dinodec_dinode;
52 int c_count;
53 char c_addr[BSIZE];
54 } spcl;
55
56 struct idates
57 {
58 char id_name[16];
59 char id_incno;
60 time_t id_ddate;
61 };
62
63 NTREC is the number of BSIZE (sys/param.h) byte records in a physical
64 tape block. MLEN is the number of bits in a bit map word. MSIZ is the
65 number of bit map words.
66
67 The TS_ entries are used in the c_type field to indicate what sort of
68 header this is. The types and their meanings are as follows:
69
70 TS_TAPE Tape volume label
71 TS_INODE
72 A file or directory follows. The c_dinode field is a copy of
73 the disk inode and contains bits telling what sort of file this
74 is.
75 TS_BITS A bit map follows. This bit map has a one bit for each inode
76 that was dumped.
77 TS_ADDR A subrecord of a file description. See c_addr below.
78 TS_END End of tape record.
79 TS_CLRI A bit map follows. This bit map contains a zero bit for all
80 inodes that were empty on the file system when dumped.
81 MAGIC All header records have this number in c_magic.
82 CHECKSUM
83 Header records checksum to this value.
84
85 The fields of the header structure are as follows:
86
87 c_type The type of the header.
88 c_date The date the dump was taken.
89 c_ddate The date the file system was dumped from.
90 c_volume The current volume number of the dump.
91 c_tapea The current number of this (512-byte) record.
92 c_inumber
93 The number of the inode being dumped if this is of type
94 TS_INODE.
95 c_magic This contains the value MAGIC above, truncated as needed.
96 c_checksum
97 This contains whatever value is needed to make the record sum
98 to CHECKSUM.
99 c_dinode This is a copy of the inode as it appears on the file system;
100 see filsys(5).
101 c_count The count of characters in c_addr.
102 c_addr An array of characters describing the blocks of the dumped
103 file. A character is zero if the block associated with that
104 character was not present on the file system, otherwise the
105 character is non-zero. If the block was not present on the
106 file system, no block was dumped; the block will be restored
107 as a hole in the file. If there is not sufficient space in
108 this record to describe all of the blocks in a file, TS_ADDR
109 records will be scattered through the file, each one picking
110 up where the last left off.
111
112 Each volume except the last ends with a tapemark (read as an end of
113 file). The last volume ends with a TS_END record and then the tape‐
114 mark.
115
116 The structure idates describes an entry of the file /etc/ddate where
117 dump history is kept. The fields of the structure are:
118
119 id_name The dumped file system is `/dev/id_nam'.
120 id_incno The level number of the dump tape; see dump(8).
121 id_ddate The date of the incremental dump in system format see
122 types(5).
123
125 /etc/ddate
126
128 filsys(5), types(5), dump(8), dumpdir(8), restor(8)
129
130
131
1323rd Berkeley Distribution DUMP(5)