Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

dump(8)

restore(8)

fs(5)

types(5)

DUMP(5)  —  UNIX Programmer’s Manual

NAME

dump, dumpdates − incremental dump format

SYNOPSIS

#include <sys/types.h>
#include <ufs/inode.h>
#include <protocols/dumprestore.h>

DESCRIPTION

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 <protocols/dumprestore.h> is:

#define NTREC   10
#define MLEN    16
#define MSIZ    4096
 #define TS_TAPE 1
#define TS_INODE2
#define TS_BITS 3
#define TS_ADDR 4
#define TS_END  5
#define TS_CLRI 6
#define MAGIC   (int) 60011
#define CHECKSUM(int) 84446
 structspcl {
intc_type;
time_tc_date;
time_tc_ddate;
intc_volume;
daddr_tc_tapea;
ino_tc_inumber;
intc_magic;
intc_checksum;
structdinodec_dinode;
intc_count;
charc_addr[BSIZE];
} spcl;
 structidates {
charid_name[16];
charid_incno;
time_tid_ddate;
};
 #defineDUMPOUTFMT"%-16s %c %s"/∗ for printf ∗/
/∗ name, incno, ctime(date) ∗/
#defineDUMPINFMT"%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 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 file system; 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, otherwise 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 off. 

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(8).

id_ddate The date of the incremental dump in system format see types(5).

FILES

/etc/dumpdates

SEE ALSO

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

4th Berkeley Distribution  —  June 18, 1985

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026