Browse Prior Art Database

Utility to Reconstruct Corrupt Server Database Files

IP.com Disclosure Number: IPCOM000112305D
Original Publication Date: 1994-Apr-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 2 page(s) / 82K

Publishing Venue

IBM

Related People

Callaway, JR: AUTHOR [+2]

Abstract

Disclosed is a method for reconstructing corrupt domain controller database files.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Utility to Reconstruct Corrupt Server Database Files

      Disclosed is a method for reconstructing corrupt domain
controller database files.

      Information about some Network Operation Systems (NOS) domain
objects is kept in a number of database files that reside on server
machines in a LAN domain.  These files are called the Domain Control
Database (DCDB) files.  In the case of software errors or server
machine failure, these files may become corrupted and unusable.

      There is no facility to salvage damaged database files.  They
must either be replaced with old backup copies, or the database must
be re-initialized.  In either case, an administrator must attempt to
determine what information has been lost, and then re-add that
information to the database.  This is a time-consuming and often
impossible task, since there is no way to track the changes that may
have been made to the file.

      Fixdcdb is a utility to rebuild new DCDB files using
information from the corrupted DCDB files.

      A DCDB file is comprised of three sections.  The first two
sections are fixed-length and the third is grown and shrunk
dynamically.  The first section is the header and contains global
information about the file, including the database file checksum.
The second section contains the database name and other unique
information for each database file.  For example, the "user.a" file
contains fixed-length network application information, such as
required network redirections or application type.  The third section
contains variable-length data (if any), such as the list of serial
devices in the serial alias database file (dcdb.d).

      Fixdcdb works in three passes, each pass being designed for
each of the three file sections.  The first pass performs several
operations.  First, it reads one of the database files into a buffer
and ensures that the file length is at least as large as the required
header.  Second, it calculates the checksum of the file and compares
it to the stored checksum in the header.

      In the second pass, Fixdcdb ensures that the fixed-data area
for the file is large enough for the type of database file.  In
addition, it calculates the checksum for this data area and compares
it to the stored checksum for the fixed data.  Finally, it saves the
stored offsets that point to the third data area.

      In the final pass, Fixdcdb determines whether the offsets found
in the second pass point to a valid data area within the buffer.  If
so, the data residing at that offset is saved.  If not, the offsets
are zeroed o...