Jump to content

Wiederherstellung NTDS.DIT


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Guten Morgen zusammen,

 

ich versuche wegen einer Rechtsstreititgkeit einen Active Directory Stand von vor 3 Jahren wiederherszustellen. Mir steht leider nur eine BackupExec Sicherung der NTDS.DIT Datei zur Verfügug. Eine Image Sicherung oder NTBACKUP Sicherung gibt es leider nicht.

 

Ziel ist es den Stand der Objekte innerhalb der Active Directory Datenbank von vor drei Jahren nachzuweisen. Die Domäne muss nicht funktionsfähig sein.

 

Die Idee ist nun den Server von damals nachzubauen und ihm die NTDS.DIT unterzuschieben. Der Computer-Namen, die IP-Adresse, der Namen der Active Directory sind identisch. Das Betriebssystemversion kann ich nur grob schätzen. Eine Version von Windows Server 2003, aber welche genau kann ich nicht sagen (R2?, SP?, Patchlevel?).

 

Ich habe die NTDS.DIT im Verzeichnisdienst Wiederherstellungsmodus ausgetauscht, jedoch kommt folgende Fehlermeldung, siehe Error.jpg

 

Anschließend habe ich mit NTDSUTIL und ESENTUTL versucht die Datenbank zu reparieren.

 

 

1) Integritätscheck

C:\>ntdsutil files integrity
ntdsutil: files
file maintenance: integrity
Die Datenbank [Current] wird geöffnet.*** Fehler: DBInitializeJetDatabase mit [D
ie Datenbank ist inkonsistent.] fehlgeschlagen.

Fehler während der Wiederherstellung
Befehl wird ausgeführt: C:\WINDOWS\system32\esentutl.exe /g"C:\WINDOWS\NTDS\ntds
.dit" /o

Initiating INTEGRITY mode...
        Database: C:\WINDOWS\NTDS\ntds.dit
  Temp. Database: TEMPINTEG2440.EDB

Checking database integrity.

The database is not up-to-date. This operation may find that
this database is corrupt because data from the log files has
yet to be placed in the database.

To ensure the database is up-to-date please use the 'Recovery' operation.


                     Scanning Status (% complete)

          0    10   20   30   40   50   60   70   80   90  100
          |----|----|----|----|----|----|----|----|----|----|
          ...................................................


Integrity check completed.  Database is CORRUPTED!


Operation terminated with error -1206 (JET_errDatabaseCorrupted, Non database fi
le or corrupted db) after 2.813 seconds.


Erstellter Prozessbeendigungscode 0xfffffb4a(-1206)

Es wird empfohlen, eine semantische Datenbank-
analyse durchzuführen, wenn die Integrität
einwandfrei war. Dadurch wird die
semantische Konsistenz gewährleistet.

 

2) Sematische Analyse

 

C:\>ntdsutil
ntdsutil: semantic database analysis
semantic checker: verbose on
Ausführlicher Modus ist aktiviert.
semantic checker: go fixup
Fixup-Modus: on

Die DIT-Datenbank wird geöffnet... Das Jet-Modul konnte nicht initialisiert werd
en: Die Datenbank ist inkonsistent..
Fehler.

Die Datenbank [Current] wird geöffnet.*** Fehler: DBInitializeJetDatabase mit [
Jet-Fehler -1030] fehlgeschlagen.

 

3) Integritätscheck mit ESENTUTL

 

C:\WINDOWS\NTDS>esentutl /g ntds.dit

Microsoft(R) Windows(R) Database Utilities
Version 5.2
Copyright (C) Microsoft Corporation. All Rights Reserved.

Initiating INTEGRITY mode...
        Database: ntds.dit
  Temp. Database: TEMPINTEG1336.EDB

Checking database integrity.

The database is not up-to-date. This operation may find that
this database is corrupt because data from the log files has
yet to be placed in the database.

To ensure the database is up-to-date please use the 'Recovery' operation.


                     Scanning Status (% complete)

          0    10   20   30   40   50   60   70   80   90  100
          |----|----|----|----|----|----|----|----|----|----|
          ...................................................


Integrity check completed.  Database is CORRUPTED!


Operation terminated with error -1206 (JET_errDatabaseCorrupted, Non database fi
le or corrupted db) after 2.47 seconds.

 

4) Reparatur mit ESENTUTL

 

C:\WINDOWS\NTDS>esentutl /p ntds.dit

Microsoft(R) Windows(R) Database Utilities
Version 5.2
Copyright (C) Microsoft Corporation. All Rights Reserved.

Initiating REPAIR mode...
        Database: ntds.dit
  Temp. Database: TEMPREPAIR2772.EDB

Checking database integrity.

The database is not up-to-date. This operation may find that
this database is corrupt because data from the log files has
yet to be placed in the database.

To ensure the database is up-to-date please use the 'Recovery' operation.


                     Scanning Status (% complete)

          0    10   20   30   40   50   60   70   80   90  100
          |----|----|----|----|----|----|----|----|----|----|
          ...................................................

Initiating DEFRAGMENTATION mode...
            Database: ntds.dit
      Temp. Database: TEMPREPAIR2772.EDB

                  Defragmentation Status (% complete)

          0    10   20   30   40   50   60   70   80   90  100
          |----|----|----|----|----|----|----|----|----|----|
          ...................................................


Moving 'TEMPREPAIR2772.EDB' to 'ntds.dit'... DONE!

Note:
  It is recommended that you immediately perform a full backup
  of this database. If you restore a backup made before the
  defragmentation, the database will be rolled back to the state
  it was in at the time of that backup.

Operation completed successfully in 6.828 seconds.

 

5) Erneuter Integritätscheck mit ESENTUTL

 

C:\WINDOWS\NTDS>esentutl /g ntds.dit

Microsoft(R) Windows(R) Database Utilities
Version 5.2
Copyright (C) Microsoft Corporation. All Rights Reserved.

Initiating INTEGRITY mode...
        Database: ntds.dit
  Temp. Database: TEMPINTEG1224.EDB

Checking database integrity.

                     Scanning Status (% complete)

          0    10   20   30   40   50   60   70   80   90  100
          |----|----|----|----|----|----|----|----|----|----|
          ...................................................


Integrity check successful.

Operation completed successfully in 2.46 seconds.

 

6) Erneuter Integritätscheck

 

C:\WINDOWS\NTDS>ntdsutil
ntdsutil: files
file maintenance: integrity
Die Datenbank [Current] wird geöffnet.
Befehl wird ausgeführt: C:\WINDOWS\system32\esentutl.exe /g"C:\WINDOWS\NTDS\ntds
.dit" /o

Initiating INTEGRITY mode...
        Database: C:\WINDOWS\NTDS\ntds.dit
  Temp. Database: TEMPINTEG3028.EDB

Checking database integrity.

                     Scanning Status (% complete)

          0    10   20   30   40   50   60   70   80   90  100
          |----|----|----|----|----|----|----|----|----|----|
          ...................................................


Integrity check successful.

Operation completed successfully in 1.954 seconds.


Erstellter Prozessbeendigungscode 0x0(0)

Es wird empfohlen, eine semantische Datenbank-
analyse durchzuführen, wenn die Integrität
einwandfrei war. Dadurch wird die
semantische Konsistenz gewährleistet.

 

7) Erneute Sematische Analyse

 

C:\WINDOWS\NTDS>ntdsutil
ntdsutil: semantic database analysis
semantic checker: verbose on
Ausführlicher Modus ist aktiviert.
semantic checker: go
Fixup-Modus: off
Die Datenbank [Current] wird geöffnet.......Der Vorgang ist abgeschlossen.

Die Anzahl der Datensätze wird abrufen...8258 Einträge
Sicherheitsbeschreibungsanzahl wird abgerufen...259 Sicherheitsbeschreibung(en)

Die Zusammenfassung wird in die Protokolldatei dsdit.dmp.1 geschrieben.
Überprüfte SDs:            259
Einträge gescannt:       8258
Einträge werden verarbeitet..Der Vorgang ist abgeschlossen.

 

Somit sollte die Datenbank wieder in einem konsistenten Zustand sein. Leider kommt die gleichen Fehlermeldung dass der Verzeichnisdienst nicht gestartet werden.


Hat jemand eine Idee? Oder gibt es noch andere Möglichkeiten die Datenbank zu öffnen?

 

 

Danke und Grüße

Sebastian

 

P.S. Meine nächsten Schritte wären nun verschiedene Versionsstände (R2, SP2) mal zu probieren

post-43636-0-26492600-1362731312_thumb.jpg

Link zu diesem Kommentar

Moin,

 

ich habe erhebliche Zweifel, ob der Vorgang gelingt - und wenn er gelingt, ob irgendwer das als Nachweis anerkennt. Eine Gegenseite könnte ins Feld führen, dass erhebliche Kniffe nötig sind, um die alte Datenbank zu öffnen und dass es dabei leicht zu Manipulationen gekommen sein kann.

 

Aus technischer Sicht könnte dies hier evtl. helfen:

http://utools.com/UMove.asp

 

Gruß, Nils

Link zu diesem Kommentar
  • 2 Wochen später...

Ich habe nun doch eine brauchbare Lösung gefunden, die ich euch nicht vorhalten möchte:

 

1) Windows Server 2008R2 Domain Controller aufsetzen oder bestehendes System nutzen

 

2) Datenbank reparieren

esentutl.exe /p c:\restore\ntds.dit

 

3) Anschließend mounten

 

dsamain.exe -dbpath c:\restore\ntds.dit -ldapport 5123 -allownonadminaccess -allowupgrade 

 

4) Mit der MMC "Benutzer und Computer" die Datenbank auf Port 5123 öffnen

 

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...