dump(5) dump(5)
dump, dumpdates - incremental dump format
#include <sys/types.h>
#include <protocols/dumprestore.h>
Tapes used by dump and restore(1M) 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 <protocols/dumprestore.h> is:
#define TP_BSIZE 1024
#define NTREC 10
#define LBLSIZE 16
#define NAMELEN 64
#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 bsd_dinode c_dinode;
int c_count;
char c_addr[TP_BSIZE/2];
char c_label[LBLSIZE];
long c_level;
char c_filesys[NAMELEN];
char c_dev[NAMELEN];
long c_flags;
} spcl;
Page 1
dump(5) dump(5)
struct idates {
char id_name[255];
char id_incno;
time_t id_ddate;
};
#define DUMPOUTFMT "%-16s %c %s"
#define DUMPINFMT "%[^ ] %c %[^\n]\n"
TP_BSIZE is the size of file blocks on the dump tapes. NTREC is the
default number of 1024 byte records in a physical tape block (blocking
factor).
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 indicating the type of
the file.
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 filesystem 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 filesystem 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
TS_INODE.
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 filesystem.
Extent File System (see fs(4)) disk inodes differ from the
Berkeley Fast File System inode format. Dump converts EFS
disk inodes to Berkeley's format, before dumping them on
tape.
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 filesystem, otherwise the
character is non-zero. If the block was not present on the
Page 2
dump(5) dump(5)
filesystem, 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 off.
c_label Dump label.
c_level Level of this dump. See dump(1M).
c_filesys Name of the dumped filesystem.
c_dev Name of the dump device.
c_host Name of the dumped host.
c_flags Additional information.
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 tapemark.
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(1M).
id_ddate The date of the incremental dump in system format see types(5).
/etc/dumpdates
dump(1M), restore(1M), fs(4), types(5)
PPPPaaaaggggeeee 3333 [ Back ]
|