Fehlermeldung ADPREP /RODCPREP oder DCDIAG ForestDnsZones und DomainDnsZone

Problem:
Beim Durchführen des ADPREP-Befehls kommt es zu folgender Fehlermeldung:
Adprep konnte kein Replikat für Partition DC=ForestDnsZones,DC=Root-Domäne erreichen.
ADPREP hat einen LDAP-Fehler festgestellt.
Fehlercode: 0x0. Erweiterter Server-Fehlercode: 0x0, Server-Fehlermeldung:(null).

und

Adprep konnte kein Replikat für Partition DC=DomainDnsZones,DC=Domäne,DC=de erreichen.
ADPREP hat einen LDAP-Fehler festgestellt.
Fehlercode: 0x0. Erweiterter Server-Fehlercode: 0x0, Server-Fehlermeldung:(null).


der Fehler kann aber auch beim ausführen des Befehls DCDIAG auffallen, der sich wie folgt äußert:
Starting test: NCSecDesc
Fehler: NT-AUTORITÄT\DOMÄNENCONTROLLER DER ORGANISATION besitzt
keine Replicating Directory Changes In Filtered Set
Zugriffsrechte für den Namenskontext:
DC=DomainDnsZones,DC=Domäne,DC=TLD
Fehler: NT-AUTORITÄT\DOMÄNENCONTROLLER DER ORGANISATION besitzt
keine Replicating Directory Changes In Filtered Set
Zugriffsrechte für den Namenskontext:
DC=ForestDnsZones,DC=Domäne,DC=TLD
.................. DCON01 hat den Test NCSecDesc nicht bestanden.


Lösung:
Beim Verschieben und Neuerstellen der FSMO-Rollen auf einem anderen Server werden die Anwendungspartitionen ForestDnsZones und DomainDnsZone nicht angepaßt. Dadurch wird der neue Infrastructuremaster nicht in diese Partitionen übernommen und es kommt zu den Fehlermeldungen.
Da Microsoft weder einen Hinweis noch einen Protokoll-Eintrag zur Verfügung stellt, muß man hier manuell auf die Änderung durchführen, bzw. ein von Microsoft veröffentlichtes Skript verwenden.
Hier das Skript, dass bei mir zum erfolgreichen Umzug des "RoleOwners" für beide Partitionen geführt hat:
-------fixfsmo.vbs------------------
const ADS_NAME_INITTYPE_GC = 3
const ADS_NAME_TYPE_1779 = 1
const ADS_NAME_TYPE_CANONICAL = 2

set inArgs = WScript.Arguments

if (inArgs.Count = 1) then
' Assume the command line argument is the NDNC (in DN form) to use.
NdncDN = inArgs(0)
Else
Wscript.StdOut.Write "usage: cscript fixfsmo.vbs NdncDN"
End if

if (NdncDN <> "") then

' Convert the DN form of the NDNC into DNS dotted form.
Set objTranslator = CreateObject("NameTranslate")
objTranslator.Init ADS_NAME_INITTYPE_GC, ""
objTranslator.Set ADS_NAME_TYPE_1779, NdncDN
strDomainDNS = objTranslator.Get(ADS_NAME_TYPE_CANONICAL)
strDomainDNS = Left(strDomainDNS, len(strDomainDNS)-1)

Wscript.Echo "DNS name: " & strDomainDNS

' Find a domain controller that hosts this NDNC and that is online.
set objRootDSE = GetObject("LDAP://" & strDomainDNS & "/RootDSE")
strDnsHostName = objRootDSE.Get("dnsHostName")
strDsServiceName = objRootDSE.Get("dsServiceName")
Wscript.Echo "Using DC " & strDnsHostName

' Get the current infrastructure fsmo.
strInfraDN = "CN=Infrastructure," & NdncDN
set objInfra = GetObject("LDAP://" & strInfraDN)
Wscript.Echo "infra fsmo is " & objInfra.fsmoroleowner

' If the current fsmo holder is deleted, set the fsmo holder to this domain controller.

if (InStr(objInfra.fsmoroleowner, "\0ADEL:") > 0) then

' Set the fsmo holder to this domain controller.
objInfra.Put "fSMORoleOwner", strDsServiceName
objInfra.SetInfo

' Read the fsmo holder back.
set objInfra = GetObject("LDAP://" & strInfraDN)
Wscript.Echo "infra fsmo changed to:" & objInfra.fsmoroleowner

End if

End if

gestartet wird das ganze dann wie folgt (Anpassung des Domänennames ist nötig - hier als Beispiel: contoso.com):
cscript fixfsmo.vbs DC=DomainDnsZones,DC=contoso,DC=com


Quellen für weitere Informationen bzw. manuellen Umzug der Rolle:
smtp25.blogspot.com: Replicating Directory Changes in Filtered Set access rights for the naming context
dikmenoglu.de: DCDIAG: NCSecDesc Fehler
dikmenoglu.de: Die Infrastrukturmaster der Anwendungsverzeichnispartitionen
Microsoft KB949257: Error message when you run the "Adprep /rodcprep" command in Windows Server 2008: "Adprep could not contact a replica for partition DC=DomainDnsZones,DC=Contoso,DC=com"

Wie ändere ich die Teamviewer ID z.B. bei geklonten PCs

Problem:
Nachdem Rechner mit installiertem Teamviewer geklont wurden, haben alle geklonten Rechner die selbe Teamviewer-ID.
Wenn mehrere Rechner online sind, dann weiß man im Fernwartungsfall nicht, auf welchem Rechner man "herauskommt"

Lösung:
Um Teamviewer eine neue ID generieren zu lassen wie folgt vorgehen:

1.) Regedit starten

2.) Folgende Reg-Keys löschen:
für 64 Bit : HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\TeamViewer\VersionX
für 32 bit : HKEY_LOCAL_MACHINE\SOFTWARE\TeamViewer\VersionX


Wobei das "X" für die jeweilige Teamviewer-Version steht.

Quelle: eatrocks.com: How to Change TeamViewer ID after cloning

Nach Update folgt Endlosschfeife Reboot oder Update wird nicht fertig!

Problem:
Nach der Installation eines Updates unter Vista oder Windows 7 wird ein Neustart durchgeführt. Danach will das Betriebssystem das Update konfigurieren.
Typische Meldung:
Updates werden konfiguriert: Abschnitt x von x - xxx% abgeschlossen
Schalten Sie den Computer nicht aus
Dabei bleibt das System entweder hängen oder führt einen Neustart durch. Keine Änderung möglich.

Lösung:
Hierfür gibt es zwei Lösungsansätze:

1.) Systemwiederherstellung
- Das System entweder im abgesicherten Modus (wenn das noch geht) oder mit F8 - "Computer reparieren" starten
- Systemwiederherstellung starten und System zu einem vorherigen Zeitpunkt wiederherstellen

2.) Pending.xml löschen
- Das System entweder im abgesicherten Modus (wenn das noch geht) oder mit F8 - "Computer reparieren" starten
- Eingabeaufforderung starten
- ins Verzeichnis c:\windows\winsxs wechseln
- die Datei "pending.xml" löschen
- WICHTIG! PC beim ersten Mal im abgesicherten Modus starten
- PC normal staren - alles ist gut!

Quelle: ewig-drohendes-versagen.de: Endloser Reboot Loop Windows Vista Update 3 von 3 0%

Zeitgeber-Dienst Konfiguration in einer AD - Musterbeispiel

Problem:
Man möchte ja innerhalb seiner AD ein vernünftiges Zeitmanagement haben, dass alle Server und Clients mit der selben Uhrzeit laufen.

Erklärung:
In einer AD sind die Zeitgeber hirachisch aufgebaut. Der "Zeit-Master" in einer AD ist immer der Domänen-Controller, der die Rolle "PDC-Emulator" inne hat. Also muß man dafür sorgen, dass dieser Server die richtige Zeit hat, dann haben auch alle anderen die richtige Zeit.

Hinweis: Die nachfolgende Lösung basiert auf der Konfiguration der Zeitserver von pool.ntp.org

WICHTIG: Vorsicht bei Zeitänderungen innerhalb einer ActiveDirectory. Wenn die Zeiten von Server und Client zu weit auseinanderliegen, dann kommt es zu keiner Kommunikation zwischen den beiden!!!

Lösung:
Man loggt sich als Administrator auf dem entsprechenden Domänen-Controller ein und führt folgenden Befehl aus:
w32tm /config /update /manualpeerlist:"0.pool.ntp.org,0x8 1.pool.ntp.org,0x8 2.pool.ntp.org,0x8 3.pool.ntp.org,0x8" /syncfromflags:MANUAL

Damit werden die Zeitquellen definiert. Genre können diese gegen andere Zeitserver getauscht werden.
Nun führt man nacheinander folgende Befehle aus um den Zeitgeber-Dienst neu zu starten und den Resync durchzuführen:
w32tm /config /update

net stop w32time

net start w32time

w32tm /resync /rediscover
Nun sollte im Eventlog des Servers folgendes Event geloggt werden:
Event: 32
Quelle: W32Time
Beschreibung: Der Zeitanbieter "NtpClient" empfängt momentan gültige Zeitdaten von xxxxxxxx (ntp.m|0x8|xxx.xxx.xxx.xxx->xxx.xxx.xxx.xxx).

Nun ist der Zeitgeberdienst konfiguriert und soltle auch die aktuelle Zeit geholt haben.
Nun kann man entwerde die Server und Clients neu starten, damit diese sich auch synchronisieren, oder man startet den Zeitgeber-Dienst auf den Serfvern/Clients neu.

Quellen:
support.ntp.org: Windows Time Service
1stbyte.com: Configure Windows Server 2003 and 2008 w32tm commands on domain controller

PPS-Datei wird in Windows-Mail nicht geöffnet

Problem:
Beim Versuch eine PPS-Datei aus Windows Maiul zu öffnen erhalten Sie folgende Fehlermeldung:
Der Datei ist kein Programm zur Durchführung dieser Aktion zugeordnet. Erstellen Sie eine Zuordnung in der Systemsteuerung unter Zuordnung festlegen.


Lösung:
Bei Power Point und Power Point Viewer 2003/2007 handelt es sich um einen falschen Eintrag im Registrierungseditor.

1.) Öffnen Sie den REgistry-Editor mittels regedit.exe

2.) Verfolge im Registrierungseditor folgenden Pfad:
HKEY_CLASSES_ROOT / PowerPointViewer.SlideShow.11 / Shell / hier den Unterordner "Show" mit rechts anklicken und auf "Open" umbenennen.

3.) Verfolge im Registrierungseditor auch diesen Pfad:
HKEY_CLASSES_ROOT / PowerPointViewer.SlideShow.12 / Shell / hier den Unterordner "Show" mit rechts anklicken und auf "Open" umbenennen.

4.) Fenster schliessen und Rechner neu starten.

Exchange 2007: Postfachgrößen anzeigen mittels Shell

Problem:
Man möchte gerne die Postfachgröße aller Benutzer in seiner Exchnage-Organisation angezeigt bekommen.

Lösung:
Mit folgendem Befehl für die Exchange-Verwaltungsshell lassen sich alle Benutzer und die dazugehörigen Postfachgrößen inkl. Objektanzahl anzeigen. Als keiner Zusatz werden die Benutzer nach Postfachgrößen sortiert, beginnend mit dem größten.

Get-MailboxStatistics | Sort-Object TotalItemSize -Descending | ft DisplayName,@{label="TotalItemSize(MB)";expression={$_.TotalItemSize.Value.ToMB()}},ItemCount
Kategorien: 2007
Tags für diesen Artikel:
“Das einzig sichere System müsste ausgeschaltet, in einem versiegelten und von Stahlbeton ummantelten Raum und von bewaffneten Schutztruppen umstellt sein.”
Gene Spafford (Sicherheitsexperte)