dumpdates man page on OpenIndiana

Man page or keyword search:  
man Server   20441 pages
apropos Keyword Search (all sections)
Output format
OpenIndiana logo
[printable version]

ufsdump(4)			 File Formats			    ufsdump(4)

NAME
       ufsdump, dumpdates - incremental dump format

SYNOPSIS
       #include <sys/types.h>

       #include <sys/inode.h>

       #include <protocols/dumprestore.h>

       /etc/dumpdates

DESCRIPTION
       Tapes used by ufsdump(1M) and ufsrestore(1M) contain:

	   o	  a header record

	   o	  two groups of bit map records

	   o	  a group of records describing directories

	   o	  a group of records describing files

       The  format  of the header record and the format of the first record of
       each description in the <protocols/dumprestore.h> include file are:

	 #define TP_BSIZE_MAX	 65536
	 #define TP_BSIZE_MIN	 1024
	 #define ESIZE_SHIFT_MAX 6

	 #ifdef SUPPORTS_MTB_TAPE_FORMAT
	 #define TP_BUFSIZE	 TP_BSIZE_MAX
	 #else
	 #define TP_BSIZE	 1024
	 #define TP_BUFSIZE	 TP_BSIZE
	 #endif /* SUPPORTS_MTB_TAPE_FORMAT */

	 #define NTREC		 10
	 #define HIGHDENSITYTREC 32
	 #define CARTRIDGETREC	 63
	 #define TP_NINDIR	 (TP_BSIZE_MIN/2)
	 #define TP_NINOS	 (TP_NINDIR / sizeof (long))
	 #define LBLSIZE	 16
	 #define NAMELEN	 64

	 #define OFS_MAGIC	 (int)60011
	 #define NFS_MAGIC	 (int)60012
	 #define MTB_MAGIC	 (int)60013
	 #define CHECKSUM	 (int)84446

	 union u_data {
		 char	 s_addrs[TP_NINDIR];
		 int32_t s_inos[TP_NINOS];
	 };

	 union u_shadow {
		 struct s_nonsh {
			 int32_t c_level;
			 char	 c_filesys[NAMELEN];
			 char	 c_dev[NAMELEN];
			 char	 c_host[NAMELEN];
		 } c_nonsh;
		 char	 c_shadow[1];
	 };

	 union u_spcl {
		 char dummy[TP_BUFSIZE];
		 struct	 s_spcl {
			 int32_t c_type;
			 time32_t c_date;
			 time32_t c_ddate;
			 int32_t c_volume;
			 daddr32_t c_tapea;
			 ino32_t c_inumber;
			 int32_t c_magic;
			 int32_t c_checksum;
			 struct	 dinode	 c_dinode;
			 int32_t c_count;
			 union	 u_data c_data;
			 char	 c_label[LBLSIZE];
			 union	 u_shadow c_shadow;
			 int32_t c_flags;
			 int32_t c_firstrec;
	 #ifdef SUPPORTS_MTB_TAPE_FORMAT
			 int32_t c_tpbsize;
			 int32_t c_spare[31];
	 #else
			 int32_t c_spare[32];
	 #endif /* SUPPORTS_MTB_TAPE_FORMAT */
	 } s_spcl;
	 } u_spcl;

	 int32_t		    c_type;
	 time32_t		    c_date;
	 time32_t		    c_ddate;
	 int32_t		    c_volume;
	 daddr32_t		    c_tapea;
	 ino32_t		    c_inumber;
	 int32_t		    c_magic;
	 int32_t		    c_checksum;
	 struct dinode		    c_dinode;
	 int32_t		    c_count;
	 union			    u_data c_data;
	 char			    c_label[LBLSIZE];
	 union			    u_shadow c_shadow;
	 int32_t		    c_flags;
	 int32_t		    c_firstrec;
	 #ifdef SUPPORTS_MTB_TAPE_FORMAT
	 int32_t		    c_tpbsize;
	 int32_t		    c_spare[31];
	 #else
	 int32_t		    c_spare[32];
	 #endif			      /*
	      SUPPORTS_MTB_TAPE_FORMAT */

	    } s_spcl;
	 } u_spcl;
	 #define spcl u_spcl.s_spcl
	 #define c_addr c_data.s_addrs
	 #define c_inos c_data.s_inos
	 #define c_level c_shadow.c_nonsh.c_level
	 #define c_filesys c_shadow.c_nonsh.c_filesys
	 #define c_dev c_shadow.c_nonsh.c_dev
	 #define c_host c_shadow.c_nonsh.c_host

	 #define TS_TAPE	 1
	 #define TS_INODE	 2
	 #define TS_ADDR	 4
	 #define TS_BITS	 3
	 #define TS_CLRI	 6
	 #define TS_END		 5
	 #define TS_EOM		 7

	 #define DR_NEWHEADER	 1
	 #define DR_INODEINFO	 2
	 #define DR_REDUMP	 4
	 #define DR_TRUEINC	 8
	 #define DR_HASMETA	 16

       This header describes three formats for the  ufsdump/ufsrestore	inter‐
       face:

	   o	  An  old  format,  non-MTB,  that supports dump sizes of less
		  than 2 terabytes. This format is represented by NFS_MAGIC.

	   o	  A new format, MTB, that supports dump sizes of greater  than
		  2 terabytes using a variable block size and 2 new constants:
		  TP_BSIZE_MIN and TP_BSIZE_MAX. This format is represented by
		  MTB_MAGIC.

	   o	  A  much  older format that might be found on existing backup
		  tapes. The ufsrestore command can restore tapes of this for‐
		  mat,	but  no longer generates tapes of this format. Backups
		  in this format have the OFS_MAGIC magic number in their tape
		  headers.

       The constants are described as follows:

       TP_BSIZE		   Size	 of  file blocks on the dump tapes for the old
			   format. Note that TP_BSIZE must be  a  multiple  of
			   DEV_BSIZE  This  is	applicable  for	 dumps of type
			   NFS_MAGIC or OFS_MAGIC, but is not  applicable  for
			   dumps of type MTB_MAGIC.

       TP_BSIZE_MIN	   Minimum  size  of file blocks on the dump tapes for
			   the new MTB format (MTB_MAGIC) only.

       TP_BSIZE_MAX	   Maximum size of file blocks on the dump  tapes  for
			   the new MTB format (MTB_MAGIC) only.

       NTREC		   Number  of TP_BSIZE blocks that are written in each
			   tape record.

       HIGHDENSITYNTREC	   Number of TP_BSIZE blocks that are written in  each
			   tape record on  6250 BPI or higher density tapes.

       CARTRIDGETREC	   Number  of TP_BSIZE blocks that are written in each
			   tape record on cartridge tapes.

       TP_NINDIR	   Number  of  indirect	 pointers  in  a  TS_INODE  or
			   TS_ADDR record. It must be a power of 2.

       TP_NINOS		   The maximum number of volumes on a tape.

       LBLSIZE		   The maximum size of a volume label.

       NAMELEN		   The maximum size of a host's name.

       OFS_MAGIC	   Magic number that is used for the very old format.

       NFS_MAGIC	   Magic number that is used for the non-MTB format.

       MTB_MAGIC	   Magic number that is used for the MTB format.

       CHECKSUM		   Header records checksum to this value.

       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_ADDR	   A subrecord of a file description. See s_addrs below.

       TS_BITS	   A bit map follows. This bit map has	a  one	bit  for  each
		   inode that was dumped.

       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.

       TS_END	   End of tape record.

       TS_EOM	   diskette  EOMindicates that the restore is compatible  with
		   old dump

       The flags are described as follows:

       DR_NEWHEADER	New format tape header.

       DR_INFODEINFO	Header contains starting inode info.

       DR_REDUMP	Dump contains recopies of active files.

       DR_TRUEINC	Dump is a "true incremental".

       DR_HASMETA	The metadata in this header.

       DUMPOUTFMT	Name, incon, and ctime (date) for printf.

       DUMPINFMT	Inverse for scanf.

       The fields of the header structure are as follows:

       s_addrs		An  array of bytes describing the blocks of the dumped
			file.  A byte is  zero if the  block  associated  with
			that  byte  was not present on the file system; other‐
			wise, the byte is non-zero.   If  the  block  was  not
			present	 on the file lsystem, no block was dumped; the
			block will be stored as a    hole  in  the  file.   If
			there  is  not	sufficient  space  in  this  record to
			describe all the blocks in a  file,   TS_ADDR  records
			will  be  scattered through the file, each one picking
			up where the  last left off

       s_inos		The starting inodes on tape.

       c_type		The type of the record.

       c_date		The date of the previous dump.

       c_ddate		The date of this dump.

       c_volume		The current volume number of the dump.

       c_tapea		The logical block of this 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.

       c_count		The count of bytes in s_addrs.

       u_data c_data	The union of either  u_data c_data The union of either
			s_addrs or  s_inos.

       c_label		Label for this dump.

       c_level		Level of this dump.

       c_filesys	Name of dumped file system.

       c_dev		Name of dumped service.

       c_host		Name of dumped host.

       c_flags		Additional information.

       c_firstrec	First record on volume.

       c_spare		Reserved for future uses.

       c_tpbsize	Tape block size for MTB format only.

       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 dump history is kept in the file /etc/dumpdates.  It	 is  an	 ASCII
       file with three fields separated by white space:

	   o	  The  name  of	 the  device  on  which the dumped file system
		  resides.

	   o	  The level number of the dump tape; see ufsdump(1M).

	   o	  The date of the incremental dump in the format generated  by
		  ctime(3C).

       DUMPOUTFMT is the format to use when using printf(3C) to write an entry
       to /etc/dumpdates; DUMPINFMT is the format to use when using  scanf(3C)
       to read an entry from /etc/dumpdates.

ATTRIBUTES
       See attributes(5) for a description of the following attributes:

       ┌─────────────────────────────┬─────────────────────────────┐
       │      ATTRIBUTE TYPE	     │	    ATTRIBUTE VALUE	   │
       ├─────────────────────────────┼─────────────────────────────┤
       │Interface Stability	     │Uncommitted		   │
       └─────────────────────────────┴─────────────────────────────┘

SEE ALSO
       ufsdump(1M),    ufsrestore(1M),	 ctime(3C),   printf(3C),   scanf(3C),
       types.h(3HEAD), attributes(5),

SunOS 5.11			  9 Apr 2003			    ufsdump(4)
[top]

List of man pages available for OpenIndiana

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net