<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title>My private collection of articles found on the net, i dont own them but they helped me.</title><updated>2012-02-23T15:23:06Z</updated><id>http://blog.meigh.eu/atom.aspx</id><link href="http://blog.meigh.eu/atom.aspx" rel="self" type="application/rss+xml" /><link href="http://blog.meigh.eu" rel="alternate" type="application/rss+xml" /><generator uri="http://app.onlinequickblog.com/" version="2.6.7">Quick Blogcast</generator><entry><title>Control as Virus Outbreak</title><link rel="alternate" href="http://blog.meigh.eu/2011/03/21/control-as-virus-outbreak.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-03-21:592c60d7-4ae8-456b-9165-56c8c6b35214</id><author><name>Madferret</name></author><category term="Exchange 2007" /><updated>2011-03-21T13:09:59Z</updated><published>2011-03-21T13:09:59Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;BR&gt;&lt;div&gt; &lt;/div&gt;&lt;BR&gt;&lt;div&gt;Export-Mailbox is a task developed by the migration team to allow Administrators to export content from active mailboxes to a folder inside other active mailboxes. The initial idea for this task was to be a complete replacement for ExMerge. The implementation of some of this functionality was problematic and it required more time than initially planned. In this post I will describe what we are missing, which workarounds are available, and some of our future plans. &lt;BR&gt;&lt;P&gt;&lt;B&gt;The need for an ExMerge replacement &lt;/B&gt;&lt;BR&gt;&lt;P&gt;ExMerge is a tool created by Microsoft Support in the Exchange 5.5 timeframe, used to allow Administrators to export and import mailbox content to/from PST files. Over the years this tool became popular since, because of its flexibility, it could be used in a number of scenarios where specific tools did not exist. As a result of this popularity, the Exchange team took on development ownership of ExMerge for Exchange 2003 and released it as a tool over the web. &lt;BR&gt;&lt;P&gt;Even though ExMerge proved to be a helpful tool for Exchange Administrators, there were several problems that needed to be addressed in : &lt;BR&gt;&lt;ul&gt;&lt;BR&gt;&lt;li&gt;&lt;B&gt;Separate Code Base:&lt;/B&gt; One of the goals for  is to reduce the number of separate tools and code bases supported for migration operations. ExMerge has always been completely separate from all shared Exchange migration code. This has caused several technical problems like the need to support an independent PST provider (that is why the current version is not able to support mailboxes larger than 2 GB and Unicode) and so on. These issues have caused delays in updates, limited functionality and extra support costs for customers and Microsoft as well.&lt;/li&gt;&lt;BR&gt;&lt;li&gt;&lt;B&gt;Independent Tool:&lt;/B&gt; Besides the technical implications of having a separate code base, the fact that ExMerge is an independent tool has caused a lot of unintended consequences regarding the scenarios where it is used.. Every time a tool is used for something it was not designed for the risk of unintended consequences and bugs increase. Also, over use of the Exmerge tool works as an incentive to under use our other migration tools where they are better suited. This adds extra cost to the management of Exchange.&lt;/li&gt;&lt;/ul&gt;&lt;BR&gt;&lt;P&gt;&lt;B&gt;Export-Mailbox &lt;/B&gt;&lt;BR&gt;&lt;P&gt;Export-Mailbox was built to address scenarios where mailbox content needs to be copied from one active mailbox to another without actually migrating the whole mailbox object. Source and target servers used by export-mailbox need to be part of a Single Forest or Resource Forests. That is, mailbox content can only be exported to mailboxes within the same forest. &lt;BR&gt;&lt;P&gt;The following versions are supported by export-mailbox: &lt;BR&gt;&lt;ul&gt;&lt;BR&gt;&lt;li&gt;Source Server:&lt;/li&gt;&lt;BR&gt;&lt;ul&gt;&lt;BR&gt;&lt;li&gt;Exchange 2000 SP3 (or later)&lt;/li&gt;&lt;BR&gt;&lt;li&gt;Exchange 2003 SP2 (or later)&lt;/li&gt;&lt;BR&gt;&lt;li&gt;&lt;/li&gt;&lt;/ul&gt;&lt;BR&gt;&lt;li&gt;Target Server:&lt;/li&gt;&lt;BR&gt;&lt;ul&gt;&lt;BR&gt;&lt;li&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;BR&gt;&lt;P&gt;Exchange Permission requirements: &lt;BR&gt;&lt;ul&gt;&lt;BR&gt;&lt;li&gt;Logon account for the user who is running Export-Mailbox needs to be a member of "Exchange Servers Administrators" for source and target Server. Permissions for previous Exchange Servers remain the same as they were for Exchange 2003 Move Mailbox Task (Exchange Administrator).&lt;/li&gt;&lt;/ul&gt;&lt;BR&gt;&lt;P&gt;&lt;B&gt;Current functionality available for Export-Mailbox&lt;/B&gt; &lt;BR&gt;&lt;P&gt;&lt;B&gt;&lt;em&gt;Pre-Validation and New and Improved Logging&lt;/em&gt;&lt;/B&gt; &lt;BR&gt;&lt;P&gt;&lt;B&gt;&lt;em&gt;&lt;/em&gt;&lt;/B&gt;&lt;BR&gt;&lt;P&gt;Export-Mailbox benefits from a pre-validation functionality similar to the one present in move-mailbox. This feature saves time by identifying most errors right away before the export begins, instead of waiting until they happen during an actual export. &lt;BR&gt;&lt;P&gt;Also available for Export-Mailbox is the comprehensive log feature: Event logs, a XML Report and a troubleshooting log. All logs are enabled by default and are located at &lt;ExchangeRoot&gt;\Logging\MigrationLogs\. &lt;BR&gt;&lt;P&gt;&lt;B&gt;&lt;em&gt;Export-mailbox available options &lt;/em&gt;&lt;/B&gt;&lt;BR&gt;&lt;ul&gt;&lt;BR&gt;&lt;li&gt;Export mailbox content from a active mailbox to a folder inside another mailbox &lt;/li&gt;&lt;BR&gt;&lt;li&gt;Filter content to be exported based on:&lt;/li&gt;&lt;BR&gt;&lt;ul&gt;&lt;BR&gt;&lt;li&gt;List of included or excluded Folders (included using â€"IncludeFolders or excluded using -ExcludeFolders)&lt;/li&gt;&lt;BR&gt;&lt;li&gt;Message subject (-SubjectKeywords)&lt;/li&gt;&lt;BR&gt;&lt;li&gt;Message and attachments content (-ContentKeywords)&lt;/li&gt;&lt;BR&gt;&lt;li&gt;Attachment file names (-AttachmentFilenames)&lt;/li&gt;&lt;BR&gt;&lt;li&gt;Message locale (-Locale)&lt;/li&gt;&lt;BR&gt;&lt;li&gt;"OR" search of Message subject, message content and attachment content (-AllContentKeywords)&lt;/li&gt;&lt;BR&gt;&lt;li&gt;Date range (-StartDate and â€"EndDate)&lt;/li&gt;&lt;/ul&gt;&lt;BR&gt;&lt;li&gt;Delete content from source mailbox after exporting it to target mailbox&lt;/li&gt;&lt;BR&gt;&lt;li&gt;Automatically exports dumpster items as regular messages in the target mailbox&lt;/li&gt;&lt;/ul&gt;&lt;BR&gt;&lt;P&gt;&lt;B&gt;&lt;em&gt;Features postponed &lt;/em&gt;&lt;/B&gt;&lt;BR&gt;&lt;P&gt;The following options were not included for : &lt;BR&gt;&lt;P&gt;&lt;em&gt;&lt;/em&gt;&lt;BR&gt;&lt;P&gt;&lt;em&gt;- Exporting content directly to a PST file: &lt;/em&gt;Part of the challenge here was to adapt our code to the Outlook PST provider, which provides the most up to date PST functionality. Currently Administrators can export content to folders inside one or more mailboxes and then manually export this content to PST files using Outlook. Also,  will not actively block access from ExMerge clients supported by Exchange 2003. This is not a scenario officially tested but customers have reported that running ExMerge from an Exchange 2003 server and accessing  databases indeed works. Native  support for this PST is being planned to be part of Service Pack 1.&lt;em&gt;&lt;/em&gt; &lt;BR&gt;&lt;P&gt;&lt;em&gt;&lt;/em&gt;&lt;BR&gt;&lt;P&gt;&lt;em&gt;- UI interface: &lt;/em&gt;Since most of the common scenarios for ExMerge were related to bulk operations we have decided to focus on delivering the needed functionality first and a GUI later. There is no defined date for the creating of such interface for the export-mailbox task at this point. &lt;BR&gt;&lt;P&gt;&lt;B&gt;Customer scenarios and examples&lt;/B&gt; &lt;BR&gt;&lt;P&gt;These are the supported customer scenarios for Export-Mailbox: &lt;BR&gt;&lt;ol&gt;&lt;BR&gt;&lt;li&gt;&lt;B&gt;Exporting mailbox content during litigation process&lt;/B&gt;&lt;/li&gt;&lt;/ol&gt;&lt;BR&gt;&lt;P&gt;During a litigation process, Administrators may need to regularly export mailbox content from selected users. These searches will be based on criteria defined by lawyers. This content will be exported from one or more source mailboxes into a temporary mailbox that the lawyers can access. The lawyers would then process the data and send the data to opposing counsel. &lt;BR&gt;&lt;ol&gt;&lt;BR&gt;&lt;li&gt;&lt;B&gt;Exporting email content to former users&lt;/B&gt;&lt;/li&gt;&lt;/ol&gt;&lt;BR&gt;&lt;P&gt;When accounts are about to be removed from a server (as in college students graduating or users leaving a hosting account)administrators might want to send mailbox content to the former users that for some reason could not manually copy the email content themselves. Admin would use the Export-Mailbox option to export the data to some intermediary mailbox and then manually export data to end users via PST files. &lt;BR&gt;&lt;ol&gt;&lt;BR&gt;&lt;li&gt;&lt;B&gt;IT Emergency Response Process &lt;/B&gt;&lt;/li&gt;&lt;/ol&gt;&lt;BR&gt;&lt;P&gt;In the course of daily operations of an IT Emergency Response organization, administrators need the ability to scan a large number of messages based on specified criteria, and perform mass deletion of any suspect email found. By using Export-Mailbox and the â€"DeleteContent parameter along with specific filter options, they are able to search and delete such messages. &lt;B&gt;&lt;/B&gt;&lt;BR&gt;&lt;P&gt;&lt;B&gt;&lt;/B&gt;&lt;BR&gt;&lt;P&gt;&lt;B&gt;&lt;em&gt;Export-Mailbox examples: &lt;/em&gt;&lt;/B&gt;&lt;BR&gt;&lt;P&gt;&lt;B&gt;&lt;em&gt;Exporting mailbox content based on Organizational information:&lt;/em&gt;&lt;/B&gt; &lt;BR&gt;&lt;P&gt;Export all content from all mailboxes where user Title starts with VP to a folder called VPData in the Administrator mailbox: &lt;BR&gt;&lt;P&gt;&lt;em&gt;Get-user | where { $_.Title -ilike "VP*" } | export-mailbox -TargetFolder "VPData" -TargetMailbox Administrator&lt;/em&gt; &lt;BR&gt;&lt;P&gt;Export all content from all mailboxes from the Accounting department to a folder called AccountingData in the Administrator mailbox: &lt;BR&gt;&lt;P&gt;&lt;em&gt;Get-user | where { $&lt;a href="http://_.Department"&gt;_.Department&lt;/a&gt; -Eq "Accounting" } | export-mailbox -TargetFolder " AccountingData" -TargetMailbox Administrator&lt;/em&gt; &lt;BR&gt;&lt;P&gt;&lt;B&gt;&lt;/B&gt;&lt;BR&gt;&lt;P&gt;&lt;B&gt;&lt;em&gt;Using filtering when Exporting mailbox content:&lt;/em&gt;&lt;/B&gt; &lt;BR&gt;&lt;P&gt;Export all content from UserMailbox1's mailbox received between 02/02/05 and 02/05/05 to a folder called User1Data in the UserMailbox2's mailbox: &lt;BR&gt;&lt;P&gt;&lt;em&gt;Export-mailbox -id UserMailbox1 â€"StartDate "02/02/05" â€"EndDate "02/05/05" -TargetFolder 'User1Data' -TargetMailbox UserMailbox2&lt;/em&gt; &lt;BR&gt;&lt;P&gt;Export all content from the Sent Items folder of UserMailbox1's mailbox to a folder called User1SentItems in the UserMailbox2's mailbox: &lt;BR&gt;&lt;P&gt;&lt;em&gt;Export-mailbox -id UserMailbox1 -IncludeFolders "\Sent Items" -TargetFolder ' User1SentItems' -TargetMailbox UserMailbox2&lt;/em&gt; &lt;BR&gt;&lt;P&gt;Filters out content from the Deleted Items folder and only exports messages that are in Japanese to a folder called User1JapaneseItems in the UserMailbox2's mailbox: &lt;BR&gt;&lt;P&gt;&lt;em&gt;Export-mailbox -id UserMailbox1 -ExcludeFolders "\Deleted Items" -Locale ja-jp -TargetFolder 'User1JapaneseItems' -TargetMailbox UserMailbox2 &lt;/em&gt;&lt;BR&gt;&lt;P&gt;&lt;B&gt;&lt;em&gt;Using filtering to Export and delete mailbox content:&lt;/em&gt;&lt;/B&gt; &lt;BR&gt;&lt;P&gt;Export and delete all messages that contain "Confidential" in their subject from all mailboxes from the DB1 database to a folder called ConfidentialData in the Administrator mailbox: &lt;BR&gt;&lt;P&gt;&lt;em&gt;Get-mailbox -database 'DB1' | export-mailbox â€"SubjectKeywords "Confidential" -TargetFolder "ConfidentialData" -TargetMailbox Administrator â€"DeleteContent&lt;/em&gt; &lt;BR&gt;&lt;P&gt;Export and deletes all messages that have an attachment that contains the word "movie" in its name from all mailboxes from the DB1 database to a folder called MovieAttachmentMessages in the Administrator mailbox: &lt;BR&gt;&lt;P&gt;&lt;em&gt;Get-mailbox -database 'DB1' | export-mailbox â€"AttachmentFilenames "movie" -TargetFolder "MovieAttachmentData" -TargetMailbox Administrator â€"DeleteContent&lt;/em&gt; &lt;BR&gt;&lt;P&gt;Export and deletes all messages that contains the word "virus" in its body or in its attachment body from all mailboxes from the DB1 to a folder called VirusMessages in the Administrator mailbox: &lt;BR&gt;&lt;P&gt;&lt;em&gt;Get-mailbox -database 'DB1' | export-mailbox -ContentKeywords "virus" -TargetFolder "VirusMessages" -TargetMailbox Administrator â€"DeleteContent&lt;/em&gt; &lt;/div&gt;</content></entry><entry><title>Powershell Setting Active Sync Based on group membership</title><link rel="alternate" href="http://blog.meigh.eu/2011/03/04/powershell-setting-active-sync-based-on-group-membership.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-03-04:2e74f9ab-e6c2-458b-8579-dd2b123a05a4</id><author><name>Madferret</name></author><category term="Setting Active Sync based on group membership" /><updated>2011-03-04T09:34:48Z</updated><published>2011-03-04T09:34:48Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;#Start-Transcript c:\activesyncerror.txt&lt;br&gt;&lt;br&gt;&lt;br&gt;# Set Report File&lt;br&gt;echo MM &gt; "c:\active.csv"&lt;br&gt;$outfile = "c:\active.csv"&lt;br&gt;&lt;br&gt;#Users to query&lt;br&gt;$user = Get-CASMailbox -resultsize unlimited&lt;br&gt;foreach ($userfound in $user)&lt;br&gt;{&lt;br&gt;$userdn = $userfound.distinguishedName&lt;br&gt;$usersm = $&lt;a href="http://userfound.SamAccountName"&gt;userfound.SamAccountName&lt;/a&gt;&lt;br&gt;$ADuser=[ADSI]"LDAP://$userdn"&lt;br&gt;$res = $&lt;a href="http://aduser.memberOf"&gt;aduser.memberOf&lt;/a&gt;&lt;br&gt;#$res&lt;br&gt;&lt;br&gt;#Group to query membership off&lt;br&gt;$group = get-group "pda users"&lt;br&gt;$groupdn = $group.distinguishedName&lt;br&gt;$ADGroup=[ADSI]"LDAP://$Groupdn"&lt;br&gt;&lt;br&gt;#Check if user is a member of the group&lt;br&gt;#if not then Active Sync is disabled for the account&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;if ($res -contains $ADGroup.distinguishedName)&lt;br&gt;&lt;br&gt;{Write-output "$usersm Is a member of  $group , Enabled" &gt;&gt; $outfile&lt;br&gt;#Set-CASMailbox $&lt;a href="http://users.SamAccountName"&gt;users.SamAccountName&lt;/a&gt; -ActiveSyncEnabled $true &lt;br&gt;Write-Host $usersm "Enabled"&lt;br&gt;}&lt;br&gt;&lt;br&gt;if ($res -notcontains $ADGroup.distinguishedName)&lt;br&gt;&lt;br&gt;{Write-output "$usersm Is not a member of  $group , Disabled" &gt;&gt; $outfile&lt;br&gt;Set-CASMailbox $usersm â€"ActiveSyncEnabled $false -whatif&lt;br&gt;Write-host $usersm "Disabled"&lt;br&gt;}&lt;br&gt;}&lt;br&gt;#Stop-Transcript&lt;br&gt;$&lt;a href="http://users.count"&gt;users.count&lt;/a&gt;&lt;br&gt;notepad $outfile&lt;br&gt;&lt;br&gt;&lt;/div&gt;</content></entry><entry><title>Powershell Users Group Membership</title><link rel="alternate" href="http://blog.meigh.eu/2011/03/04/powershell-users-group-membership.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-03-04:2672c210-8973-462c-b4f9-158cd6bbfa1f</id><author><name>Madferret</name></author><category term="Active Directory Powershell" /><updated>2011-03-04T07:04:24Z</updated><published>2011-03-04T07:04:24Z</published><content type="html">&lt;div&gt;     &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Script to list a users group membership.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;#Users to query&lt;br&gt;$users = Get-casMailbox Username &lt;br&gt;$userdn = $users.distinguishedName&lt;br&gt;$ADuser=[ADSI]"LDAP://$userdn"&lt;br&gt;$res = $&lt;a href="http://aduser.memberOf"&gt;aduser.memberOf&lt;/a&gt;&lt;br&gt;$res&lt;br&gt;&lt;/div&gt;</content></entry><entry><title>PDA Statistics</title><link rel="alternate" href="http://blog.meigh.eu/2011/03/02/pda-statistics.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-03-02:e66500ef-1529-423c-a15d-48768d57668b</id><author><name>Madferret</name></author><category term="Powershell Exchange 2007" /><updated>2011-03-02T12:16:16Z</updated><published>2011-03-02T12:16:16Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Script to list Active Sync Device Statistics.&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;$mbx = get-casmailbox -Filter {HasActivesyncDevicePartnership -eq $true -and -not DisplayName -like "CAS_{*"}&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;[string]::join(',',("Name","Display Name","","Model","Phone No","Device ID","DeviceIMEI","First Sync","Last Sync","Device OS","Device Friend Name","Device Type"))&gt; "C:\ocs scripts\pda.csv"&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;foreach ($user in $mbx) {&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;$dev = get-activesyncdevicestatistics -mailbox $&lt;a href="http://user.Name"&gt;user.Name&lt;/a&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;foreach ($phone in $dev)&lt;/div&gt; &lt;div&gt;{&lt;/div&gt; &lt;div&gt;[string]::join(',',($&lt;a href="http://user.name"&gt;user.name&lt;/a&gt;, $user.DisplayName, $&lt;a href="http://phone.devicemodel"&gt;phone.devicemodel&lt;/a&gt;, $&lt;a href="http://phone.devicephonenumber"&gt;phone.devicephonenumber&lt;/a&gt;, $&lt;a href="http://phone.deviceid"&gt;phone.deviceid&lt;/a&gt;, $&lt;a href="http://phone.DeviceIMEI"&gt;phone.DeviceIMEI&lt;/a&gt;, $&lt;a href="http://phone.FirstSyncTime"&gt;phone.FirstSyncTime&lt;/a&gt;, $&lt;a href="http://phone.LastSuccessSync"&gt;phone.LastSuccessSync&lt;/a&gt; ,$&lt;a href="http://phone.DeviceOS"&gt;phone.DeviceOS&lt;/a&gt;, $&lt;a href="http://phone.DeviceFriendlyName"&gt;phone.DeviceFriendlyName&lt;/a&gt;, $&lt;a href="http://phone.DeviceType"&gt;phone.DeviceType&lt;/a&gt;)) &gt;&gt; "C:\ocs scripts\pda.csv"&lt;/div&gt; &lt;div&gt;}&lt;/div&gt; &lt;div&gt;}&lt;/div&gt; &lt;div&gt;#$phone.&lt;/div&gt; &lt;div&gt;#notepad "C:\pda.csv"&lt;/div&gt; &lt;div&gt;________________________________________________________________________ &lt;/div&gt;&lt;br&gt;&lt;/div&gt;</content></entry><entry><title>Setting GC Global Catalog through powershell</title><link rel="alternate" href="http://blog.meigh.eu/2011/02/17/setting-gc-global-catalog-through-powershell.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-02-17:592af691-ec4d-446a-aca0-5bb6aba95fbc</id><author><name>Madferret</name></author><category term="Active Directory Recovery" /><updated>2011-02-17T14:03:22Z</updated><published>2011-02-17T14:03:22Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Script to set Global Catalog role when not GC's are available&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;code&gt;&lt;br&gt;# ---------------------------------------------------------------------------------------------------&lt;br&gt;function set-GCrole&lt;br&gt;# ---------------------------------------------------------------------------------------------------&lt;br&gt;{&lt;br&gt;Param (&lt;br&gt;  $serverName,&lt;br&gt;  $IsGC = "enable"&lt;br&gt;  )&lt;br&gt;  $dse  = [adsi]("LDAP://"+$Servername+"/RootDSE")&lt;br&gt;  $ntds  = [adsi]("LDAP://"+$dse.dsServiceName)&lt;br&gt;  &lt;br&gt;  # 1 = enable, 0 or nothing = disable&lt;br&gt;  If ($IsGC -eq "disable")&lt;br&gt;  {&lt;br&gt;    $ntds.options = 0&lt;br&gt;  }&lt;br&gt;  else&lt;br&gt;  {&lt;br&gt;    $ntds.options = 1&lt;br&gt;  }&lt;br&gt;  $&lt;a href="http://ntds.SetInfo"&gt;ntds.SetInfo&lt;/a&gt;()&lt;br&gt;}&lt;br&gt; &lt;br&gt;# ---------------------------------------------------------------------------------------------------&lt;br&gt;If ($&lt;a href="http://Args.count"&gt;Args.count&lt;/a&gt; -ne 2)&lt;br&gt;{&lt;br&gt;  write-host "You need to provide the Name of the DC,"&lt;br&gt;  write-host "and the ""enable"" or ""disable"" keyword."&lt;br&gt;  write-host "example: &lt;a href="http://Set-GCrole.ps1"&gt;Set-GCrole.ps1&lt;/a&gt; ""server1"" ""enable"""&lt;br&gt;  write-host&lt;br&gt;  exit&lt;br&gt;}&lt;br&gt;Set-GCrole $Args[0] $args[1]&lt;/code&gt;&lt;br&gt;&lt;/div&gt;</content></entry><entry><title>Full Server Recovery of a Domain Controller</title><link rel="alternate" href="http://blog.meigh.eu/2011/02/15/full-server-recovery-of-a-domain-controller.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-02-15:e0695440-959c-4e5c-9589-cb45c784c813</id><author><name>Madferret</name></author><category term="Active Directory Recovery" /><updated>2011-02-15T08:06:45Z</updated><published>2011-02-15T08:06:45Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;Full Server Recovery of a Domain Controller   (a nonauthoritative restore) &lt;/div&gt; &lt;div&gt;02 February 2011&lt;/div&gt; &lt;div&gt;07:45&lt;/div&gt; &lt;div&gt;Scenario 1&lt;/div&gt; &lt;div&gt;Loss of a DC, Not a FSMO Role Holder&lt;/div&gt; &lt;div&gt;Requirements: Full Bare Metal &amp; System State of Single DC&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;To recover: Windows, Disks and Applications&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Performing Nonauthoritative Restore of Active Directory Domain Services&lt;/div&gt; &lt;div&gt;Updated: January 9, 2009&lt;/div&gt; &lt;div&gt;Applies To: Windows Server 2008, Windows Server 2008 R2&lt;/div&gt; &lt;div&gt;A nonauthoritative restore is the method for restoring Active Directory Domain Services (AD DS) from a system state, critical-volumes, or full server backup. A nonauthoritative restore returns the domain controller to its state at the time of backup and then allows normal replication to overwrite that state with any changes that occurred after the backup was taken. After you restore AD DS from backup, the domain controller queries its replication partners. Replication partners use the standard replication protocols to update AD DS and associated information, including the SYSVOL shared folder, on the restored domain controller. &lt;/div&gt; &lt;div&gt;You can use a nonauthoritative restore to restore the directory service on a domain controller without reintroducing or changing objects that have been modified since the backup. The most common use of a nonauthoritative restore is to reinstate a domain controller, often after catastrophic or debilitating hardware failures. In the case of data corruption, do not use nonauthoritative restore unless you have confirmed that the problem is with AD DS. &lt;/div&gt; &lt;div&gt; &lt;table valign="top"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td&gt;   &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt;   &lt;div&gt;Note &lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td&gt;   &lt;div&gt;If your objective   is to recover objects that were deleted since the last backup, first perform   a nonauthoritative restore from backup to reinstate the deleted objects and   then perform an authoritative restore to mark the deleted objects as   authoritative so that they are not overwritten during replication. When you   are performing both a nonauthoritative restore and an authoritative restore,   do not allow the domain controller to restart after the nonauthoritative   restore. For information about performing authoritative restore, see &lt;a href="http://technet.microsoft.com/en-us/library/cc816878%28WS.10%29.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc816878%28WS.10%29.aspx"&gt;Performing   Authoritative Restore of Active Directory Objects&lt;/a&gt;. &lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Pasted from &lt;&lt;a href="http://technet.microsoft.com/en-us/library/cc816627%28WS.10%29.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc816627%28WS.10%29.aspx"&gt;http://technet.microsoft.com/en-us/library/cc816627(WS.10).aspx&lt;/a&gt;&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Nonauthoritative Restore Requirements&lt;/div&gt; &lt;div&gt;You can perform a nonauthoritative restore from backup on a Windows Server 2008 system that is a stand-alone server, member server, or domain controller. &lt;/div&gt; &lt;div&gt;On domain controllers that are running Windows Server 2008, you can stop and restart AD DS as a service. Therefore, in Windows Server 2008, performing offline defragmentation and other database management tasks does not require restarting the domain controller in Directory Services Restore Mode (DSRM). However, you cannot perform a nonauthoritative restore after simply stopping the AD DS service in regular startup mode. You must be able to start the domain controller in Directory Services Restore Mode (DSRM). If the domain controller cannot be started in DSRM, you must first reinstall the operating system. If you need to reinstall the operating system and then restore AD DS, see &lt;a href="http://technet.microsoft.com/en-us/library/cc816620%28WS.10%29.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc816620%28WS.10%29.aspx"&gt;Restoring a Domain Controller Through Reinstallation&lt;/a&gt; or &lt;a href="http://technet.microsoft.com/en-us/library/cc816620%28WS.10%29.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc816620%28WS.10%29.aspx"&gt;Restoring a Domain Controller Through Reinstallation&lt;/a&gt;. &lt;/div&gt; &lt;div&gt;To perform a nonauthoritative restore, you need one of the following types of backup for your backup source: &lt;/div&gt; &lt;ul&gt;  &lt;li&gt;System state      backup: Use this      type of backup to restore AD DS. If you have reinstalled the      operating system, you must use a critical-volumes or full server backup.      If you are restoring a system state backup, use the wbadmin start      systemstaterecovery command. &lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;Critical-volumes backup: A      critical-volumes backup includes all data on all volumes that contain      operating system and registry files, boot files, SYSVOL files, or      Active Directory files. Use this type of backup if you want to      restore more than the system state. To restore a critical-volumes backup,      use the wbadmin start recovery command.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;Full server      backup: Use this      type of backup only if you cannot start the server or you do not have a      system state or critical-volumes backup. A full server backup is generally      larger than a critical-volumes backup. Restoring a full server backup not      only rolls back data in AD DS to the time of backup, but it also      rolls back all data in all other volumes. Rolling back this additional      data is not necessary to achieve nonauthoritative restore of AD DS..      For information about performing a full server backup for disaster      recovery, see Performing a Full Server Recovery of a Domain Controller on      the Microsoft Web site (&lt;a href="http://go.microsoft.com/fwlink/?LinkId=116206" mce_href="http://go.microsoft.com/fwlink/?LinkId=116206"&gt;http://go.microsoft.com/fwlink/?LinkId=116206&lt;/a&gt;).&lt;/li&gt; &lt;/ul&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Pasted from &lt;&lt;a href="http://technet.microsoft.com/en-us/library/cc816627%28WS.10%29.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc816627%28WS.10%29.aspx"&gt;http://technet.microsoft.com/en-us/library/cc816627(WS.10).aspx&lt;/a&gt;&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Performing a full server recovery of a domain controller by using the GUI&lt;/div&gt; &lt;div&gt;You can use this procedure to perform full server recovery of a domain controller with Windows Complete PC Restore.&lt;/div&gt; &lt;div&gt;There are no administrative credential requirements. No authentication is performed when you start in Windows RE.&lt;/div&gt; &lt;div&gt;To perform full server recovery of a domain controller (a nonauthoritative restore) by using the GUI&lt;/div&gt; &lt;ol&gt;  &lt;li&gt;Insert the Windows      Server 2008 installation DVD into the disk drive, and then restart      the domain controller.&lt;/li&gt;  &lt;li&gt;When you are prompted, press      a key to start from the DVD.&lt;/li&gt;  &lt;li&gt;At the initial Windows screen, accept or select      language options, the time and currency format, and a keyboard layout, and      then click Next.&lt;/li&gt;  &lt;li&gt;At the Install now screen, click Repair your      computer.&lt;/li&gt;  &lt;li&gt;In the System      Recovery Options      dialog box, click anywhere to clear any operating systems that are      selected for repair, and then click Next.&lt;/li&gt;  &lt;li&gt;Under Choose a      recovery tool,      click Windows Complete PC Restore.&lt;/li&gt;  &lt;li&gt;If the backup is stored on a      remote server, a message indicates that Windows cannot find a backup on      the hard disks or DVDs on this computer. Click Cancel to close the message.&lt;/li&gt;  &lt;li&gt;Click Restore a      different backup,      and then click Next.&lt;/li&gt;  &lt;li&gt;On the Select the      location of the backup page, perform either set of the following steps, depending on      whether the backup is stored locally or on a network shared folder:&lt;/li&gt;  &lt;ol&gt;   &lt;li&gt;If the backup is       stored on the local computer, select the location of the backup, and then       click Next.&lt;br&gt;             &lt;br&gt;             Or&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;If the backup is       stored on a network shared folder, click Advanced, and then click Search for       a backup on the network.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Click Yes to confirm that       you want to connect to the network.&lt;/li&gt;   &lt;li&gt;In Network       Folder, type       the Universal Naming Convention (UNC) name for the network share, and       then click OK.&lt;/li&gt;   &lt;li&gt;Type credentials for a user       account that has sufficient permissions to restore the backup, and then       click OK. &lt;/li&gt;   &lt;li&gt;On the Select the       location of the backup page, click the location of the backup, and then click Next.&lt;/li&gt;  &lt;/ol&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Click the backup to restore,      and then click Next. &lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;If you want to replace all      data on all volumes, regardless of whether they are included in the      backup, on the Choose how to restore the backup page, select the Format and      repartition disks      check box. &lt;/li&gt;  &lt;li&gt;To prevent volumes that are      not included in the restore from being deleted and re-created, click Exclude      Disks, select      the check box for the disks that you want to exclude, and then click OK. &lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Click Next, and then click Finish.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Select the I confirm      that I want to format the disks and restore the backup check box, and then click OK. &lt;/li&gt; &lt;/ol&gt; &lt;div&gt;Performing a full server recovery of a domain controller by using the command line&lt;/div&gt; &lt;div&gt;Use the following procedure to perform full server recovery of a domain controller from the command line.&lt;/div&gt; &lt;div&gt;There are no administrative credential requirements. No authentication is performed when you start in Windows RE. &lt;/div&gt; &lt;div&gt;To perform full server recovery of a domain controller (a nonauthoritative restore) by using the command line&lt;/div&gt; &lt;ol&gt;  &lt;li&gt;Insert the Windows      Server 2008 installation DVD into the disk drive, and then restart      the domain controller.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;When you are prompted, press      a key to start from the DVD.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;At the initial Windows screen, accept or select      language options, the time and currency format, and a keyboard layout, and      then click Next.&lt;/li&gt;  &lt;li&gt;At the Install now screen, click Repair your      computer.&lt;/li&gt;  &lt;li&gt;In the System      Recovery Options      dialog box, click anywhere to clear any operating systems that are      selected for repair, and then click Next.&lt;/li&gt;  &lt;li&gt;Under Choose a      recovery tool,      click Command Prompt.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;At the Sources prompt, type      diskpart, and then press ENTER.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;At the Diskpart prompt, type      list vol, and then press ENTER.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Identify the volume from the      list that corresponds to the location of the full server backup that you      want to restore. &lt;br&gt;           The drive letters in Windows RE do not necessarily match the      volumes as they appear in Windows Server 2008.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Type exit, and then press      ENTER.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;At the Sources prompt, type      the following command, and then press ENTER:&lt;br&gt;           wbadmin get versions -backupTarget:&lt;targetDrive&gt;: &lt;br&gt;           -machine:&lt;BackupComputerName&gt; &lt;br&gt;           Where:&lt;/li&gt;  &lt;ul&gt;   &lt;li&gt;&lt;targetDrive&gt;: is the       location of the backup that you want to restore.&lt;/li&gt;   &lt;li&gt;&lt;BackupComputerName&gt;       is the name of the computer where you want to recover the backup. This       parameter is required, if the backup is stored on a remote computer. &lt;/li&gt;  &lt;/ul&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Identify the version that you      want to restore. &lt;br&gt;           You must enter this version exactly in the next step.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;At the Sources prompt, type      the following command, and then press ENTER:&lt;br&gt;           wbadmin start sysrecovery -version:&lt;MM/DD/YYYY-HH:MM&gt; &lt;br&gt;           -backuptarget:&lt;targetDrive&gt;:      -machine:&lt;BackupComputerName&gt; &lt;br&gt;           -restoreAllVolumes &lt;br&gt;           Where:&lt;/li&gt;  &lt;ul&gt;   &lt;li&gt;&lt;MM/DD/YYYY-HH:MM&gt; is       the version of the backup that you want to restore.&lt;/li&gt;   &lt;li&gt;&lt;targetDrive&gt;: is the       drive that contains the backup.&lt;/li&gt;   &lt;li&gt;&lt;BackupComputerName&gt;       is the name of the computer where you want to recover the backup. This       parameter is useful when you have backed up multiple computers to the       same location or you have renamed the computer since the backup was       taken. &lt;/li&gt;  &lt;/ul&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;When you are prompted, press      Y to proceed with the restore process.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;After the recovery operation      has completed, minimize the command window, and then, in the System      Recovery Options      dialog box, click Restart.&lt;/li&gt; &lt;/ol&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Post Recovery Tests&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Repadmin /replsum&lt;/div&gt; &lt;div&gt;dcdiag /test:CheckSecurityError /s:DRDC01&lt;/div&gt; &lt;div&gt;repadmin /showrepl&lt;/div&gt; &lt;div&gt;w32tm /monitor&lt;/div&gt; &lt;div&gt;dcdiag /s:DCName&lt;/div&gt; &lt;div&gt;dcdiag /test:dns /e /s:DCName&lt;/div&gt; &lt;div&gt;dcdiag /test:netlogons /v /s:DCName&lt;/div&gt; &lt;div&gt;dcdiag /test:fsmocheck /s:DCName&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;&lt;&lt;a href="http://NTDS.ps1&gt;&amp;gt"&gt;NTDS.ps1&gt;&amp;gt&lt;/a&gt;;&lt;/div&gt; &lt;div&gt;Additional considerations&lt;/div&gt; &lt;div&gt;Be aware of the following issues when you perform a full server recovery of a domain controller: &lt;/div&gt; &lt;ul&gt;  &lt;li&gt;Wbadmin.exe does not require      that you provide the recovery target. By specifying the backup version      that you want to recover, the command proceeds to recover to the source      location of the specified backup version.&lt;/li&gt;  &lt;li&gt;Backup files are named for      the date and time of the backup. When you recover, the version must be      stated in the form MM/DD/YYYY-HH:MM, which specifies the name of the      backup that you want to recover. &lt;/li&gt;  &lt;li&gt;After the restore is      completed, restart the server normally, and perform basic verification.      When you restart the computer normally, AD DS and Active Directory      Certificate Services (AD CS) automatically detect that they have been      recovered from a backup. They perform an integrity check and index the      database again.&lt;/li&gt;  &lt;li&gt;After you log on to the      system, browse AD DS. Verify that the following conditions are met:&lt;/li&gt;  &lt;ul&gt;   &lt;li&gt;All of the user objects and       group objects that were present in the directory at the time of the       backup are restored. &lt;br&gt;             &lt;/li&gt;  &lt;/ul&gt; &lt;/ul&gt; &lt;div&gt; &lt;table valign="top"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td&gt;   &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt;   &lt;div&gt;Note &lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td&gt;   &lt;div&gt;Active Directory   replication updates the objects that you restore with any changes that have   been made to them since the time that the backup was taken.&lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt; &lt;ul&gt;  &lt;li&gt;Files that were members of a      File Replication Service (FRS) replica set and certificates that were      issued by AD CS are present.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;The Windows Time service      (W32time) is synchronized correctly.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;The NETLOGON and SYSVOL      folders are properly shared.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;The Preferred DNS server      address is configured correctly.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;Host (A) and service (SRV)      resource records are registered correctly in Domain Name System (DNS).&lt;/li&gt; &lt;/ul&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Pasted from &lt;&lt;a href="http://technet.microsoft.com/en-us/library/cc772519%28WS.10%29.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc772519%28WS.10%29.aspx"&gt;http://technet.microsoft.com/en-us/library/cc772519(WS.10).aspx&lt;/a&gt;&gt; &lt;/div&gt;&lt;br&gt;&lt;/p&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_63e80.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_d9830.gif" alt="" /&gt;</content></entry><entry><title>Requirements - Full Server Recovery of a Domain Controller</title><link rel="alternate" href="http://blog.meigh.eu/2011/02/15/requirements--full-server-recovery-of-a-domain-controller.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-02-15:2501328b-f322-416f-8b2f-c2fcda6e5d3e</id><author><name>Madferret</name></author><category term="Active Directory Recovery" /><updated>2011-02-15T08:04:31Z</updated><published>2011-02-15T08:04:31Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;Requirements - Full Server Recovery of a Domain Controller&lt;/div&gt; &lt;div&gt;02 February 2011&lt;/div&gt; &lt;div&gt;09:09&lt;/div&gt; &lt;div&gt;When you perform a full server recovery, you recover all volumes from the backup set to the server. The procedure to perform full server recovery of a domain controller is the same as for any server running Windows Server 2008. Whenever you perform a full server recovery of a domain controller, you perform a nonauthoritative restore of Active Directory Domain Services (AD DS). &lt;/div&gt; &lt;div&gt;You can use these procedures to perform full server recovery of a domain controller by using Windows Complete PC Restore (a graphical user interface (GUI) tool) and Wbadmin.exe from the command line&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Pasted from &lt;&lt;a href="http://technet.microsoft.com/en-us/library/cc772519%28WS.10%29.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc772519%28WS.10%29.aspx"&gt;http://technet.microsoft.com/en-us/library/cc772519(WS.10).aspx&lt;/a&gt;&gt; &lt;/div&gt; &lt;div&gt;Requirements for performing a full server recovery of a domain controller&lt;/div&gt; &lt;div&gt;Full server recovery of a domain controller has the following requirements:&lt;/div&gt; &lt;ul&gt;  &lt;li&gt;You must have a full server      backup available. This type of backup contains all volumes that were on      the server at the time that you made the backup.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;You can store the backup on a      separate, internal or external hard drive or a DVD. If you performed a      manual backup, you can perform a full server recovery from a network      shared folder.&lt;/li&gt; &lt;/ul&gt; &lt;div&gt; &lt;table valign="top"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td&gt;   &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt;   &lt;div&gt;Note &lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td&gt;   &lt;div&gt;Windows Server   Backup does not enumerate drives that are not attached or turned on when you   start the Recovery Wizard. If you attach or turn on a drive after you start   the wizard, and you do not see it in the list of backup locations that you   can restore from, close, and then restart Windows Server Backup.&lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt; &lt;ul&gt;  &lt;li&gt;You must have the Windows      Server 2008 operating system DVD or have Windows RE installed on      a different partition than the critical partitions that are used by the      domain controller that you are restoring.&lt;/li&gt;  &lt;li&gt;If you are recovering to new      hardware, the new hardware must provide enough storage capacity to recover      all volumes. In other words, the hard drives that you are recovering data      to must be as large as-or larger than-the drives that are included in the      backup set.&lt;/li&gt; &lt;/ul&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Pasted from &lt;&lt;a href="http://technet.microsoft.com/en-us/library/cc772519%28WS.10%29.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc772519%28WS.10%29.aspx"&gt;http://technet.microsoft.com/en-us/library/cc772519(WS.10).aspx&lt;/a&gt;&gt; &lt;/div&gt;&lt;br&gt;&lt;/p&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_c37a0.gif" alt="" /&gt;</content></entry><entry><title>Forest Recovery Post recovery steps</title><link rel="alternate" href="http://blog.meigh.eu/2011/02/15/forest-recovery-post-recovery-steps.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-02-15:2610197a-f1db-41dc-865a-c0a4fc39d59e</id><author><name>Madferret</name></author><category term="Active Directory Recovery" /><updated>2011-02-15T08:03:21Z</updated><published>2011-02-15T08:03:21Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Forest Recovery Post recovery steps&lt;/div&gt; &lt;div&gt;Perform the following post recovery steps as needed:&lt;/div&gt; &lt;div&gt;Ensure DC's are health by running admin scripts below&lt;/div&gt; &lt;div&gt;Â·    After the entire forest is recovered, you can revert to the original DNS configuration, including configuration of the preferred and alternate DNS servers on each of the domain controllers. After the DNS servers are configured as they were before the malfunction, their previous name resolution capabilities will be restored. Delete any DNS records for domain controllers that have not been recovered.&lt;/div&gt; &lt;div&gt;Â·    Delete Windows Internet Name Service (WINS) records for all domain controllers that have not been recovered. &lt;/div&gt; &lt;div&gt;Â·    You can transfer the operations master roles to other domain controllers in the domain or forest and add more global catalog servers based on your pre-failure configuration. &lt;/div&gt; &lt;div&gt;Â·    Because the entire forest is restored to a previous state, any objects (such as users and computers) that were added and all updates (such as password changes) that were made to existing objects after this point are lost. Therefore, you should re-create these missing objects and reapply the missing updates as appropriate. &lt;/div&gt; &lt;div&gt;Â·    You might also need to restore outgoing trusts with external domains, because these external trust relationships are not restored automatically from backups. &lt;/div&gt; &lt;div&gt;Â·    If you suspect that the forest-wide failure was related to network intrusion or malicious attack, you can reset the account passwords for members of the Enterprise Admins and Domain Admins groups. &lt;/div&gt; &lt;div&gt;Â·    Restore or reinstall any software applications that were running on domain controllers before recovery. Restoring AD DS on the first domain controller in the domain also restores the registry because they both are part of System State data. Keep this in mind if you had any applications running on these domain controllers and if they had any information stored in the registry.&lt;/div&gt; &lt;div&gt;Â·    For client computers, you might have to reset their secure channel with domain controllers or rejoin them to the domain. To reset the secure channel, you can use Netdom.exe. At a command prompt, type the following command, and then press ENTER:&lt;/div&gt; &lt;div&gt;netdom reset &lt;computername&gt; /domain:&lt;domainname&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Repadmin /replsum&lt;/div&gt; &lt;div&gt;dcdiag /test:CheckSecurityError /s:DRDC01&lt;/div&gt; &lt;div&gt;repadmin /showrepl&lt;/div&gt; &lt;div&gt;w32tm /monitor&lt;/div&gt; &lt;div&gt;dcdiag /s:DCName&lt;/div&gt; &lt;div&gt;dcdiag /test:dns /e /s:DCName&lt;/div&gt; &lt;div&gt;dcdiag /test:netlogons /v /s:DCName&lt;/div&gt; &lt;div&gt;dcdiag /test:fsmocheck /s:DCName&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&lt;&lt;&lt;a href="http://NTDS..ps1&gt;&amp;gt"&gt;NTDS.ps1&gt;&amp;gt&lt;/a&gt;;&lt;/div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;</content></entry><entry><title>Forest Recovery Procedures - Stage 2</title><link rel="alternate" href="http://blog.meigh.eu/2011/02/15/forest-recovery-procedures--stage-2.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-02-15:2b6ef27a-b5b2-462f-9197-6b4b5161b4de</id><author><name>Madferret</name></author><category term="Active Directory Recovery" /><updated>2011-02-15T08:00:52Z</updated><published>2011-02-15T08:00:52Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;Forest Recovery Procedures - Stage 2&lt;/div&gt; &lt;div&gt;31 January 2011&lt;/div&gt; &lt;div&gt;13:59&lt;/div&gt; &lt;div&gt;Removing the global catalog&lt;/div&gt; &lt;div&gt;Use the following procedure to remove the global catalog from a domain controller.&lt;/div&gt; &lt;div&gt;Restoring a global catalog server from backup could result in the global catalog holding newer data for one of its partial replicas than the corresponding domain that is authoritative for that partial replica. In such a case, the newer data will not be removed from the global catalog and might even replicate to other global catalog servers. As a result, even if you did restore a domain controller that was a global catalog server, either inadvertently or because that was the solitary backup you trusted, you should remove the global catalog soon after the restore operation is complete. When the global catalog is removed, the computer removes all its partial replicas. The following procedure applies to domain controllers that run Windows Server 2003 or Windows Server 2008.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;To remove the global catalog&lt;/div&gt; &lt;div&gt;1.    Click Start, point to All Programs, point to Administrative Tools, and then click Active Directory Sites and Services.&lt;/div&gt; &lt;div&gt;2.    In the console tree, expand the Sites container, and then select the appropriate site that contains the target server. &lt;/div&gt; &lt;div&gt;3.    Expand the Servers container, and then expand the server object for the domain controller from which you want to remove the global catalog.&lt;/div&gt; &lt;div&gt;4.    Right-click NTDS Settings, and then click Properties.&lt;/div&gt; &lt;div&gt;5.    Clear the Global Catalog check box.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Raising the value of available RID pools&lt;/div&gt; &lt;div&gt;Use the following procedure to raise the value of the relative ID (RID) pools that the RID operations master will allocate after that domain controller is restored. By raising the value of the available RID pools, you can ensure that no domain controller allocates a RID for a security principal that was created after the backup that was used to restore the domain. The following procedure applies to domain controllers that run Windows Server 2003 or Windows Server 2008.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;To raise the value of available RID pools&lt;/div&gt; &lt;div&gt;1.    At the command prompt, change directories to the folder that contains the Windows Support Tools, type the following command, and then press ENTER:&lt;/div&gt; &lt;div&gt;ldp&lt;/div&gt; &lt;div&gt;2.    Click Connection, click Connect, type the name of the server on which you want to raise the RID pool, and then click OK. &lt;/div&gt; &lt;div&gt;3.    Click Connection, click Bind, type your administrative credentials, and then click OK.&lt;/div&gt; &lt;div&gt;4.    Click View, click Tree, and then type the following distinguished name path:&lt;/div&gt; &lt;div&gt;CN=RID Manager$,CN=System,DC=&lt;domain name&gt;&lt;/div&gt; &lt;div&gt;This account has an attribute named rIDAvailablePool. This attribute value maintains the global RID space for an entire domain. The value is a large integer with upper and lower parts. The upper part defines the number of security principals that can be allocated for each domain (0x3FFFFFFF or just over 1 billion). The lower part is the number of RIDs that have been allocated in the domain. To view both parts, in Ldp.exe use the Large Integer Converter command in the Utilities menu.&lt;/div&gt; &lt;div&gt;Â·    Sample Value: 4611686014132422708 (Insert in Large Integer Calculator in the Utilities menu of Ldp.exe)&lt;/div&gt; &lt;div&gt;Â·    Low Part: 2100 (beginning of the next RID pool to be allocated)&lt;/div&gt; &lt;div&gt;Â·    Upper Part: 1073741823 (total number of RIDs that can be created in a domain)&lt;/div&gt; &lt;div&gt;When you increase the value of the large integer, you increase the value of the low part. For example, if you add 100,000 to the sample value of 4611686014132422708 for a sum of 4611686014132522708, the new low part is 102100. This indicates that the next RID pool that will be allocated by the RID master will begin with 102100 instead of 2100. &lt;/div&gt; &lt;div&gt;5.    Click Browse, and then click Modify. &lt;/div&gt; &lt;div&gt;6.    Add 100,000 to the current rIDAvailablePool value, and then type the sum into Values. &lt;/div&gt; &lt;div&gt;7.    In Dn, type cn=RID Manager$,cn=System,dc=&lt;domain name&gt;. &lt;/div&gt; &lt;div&gt;8.    In Edit Entry Attribute, type rIDAvailablePool. &lt;/div&gt; &lt;div&gt;9.    Select Replace as the operation, and then click Enter. &lt;/div&gt; &lt;div&gt;10.    Click Run to run the operation.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&amp;nbsp;String:&lt;BR&gt;High Part:&lt;BR&gt;Low Part:&lt;BR&gt;Close&lt;BR&gt;11073741823&lt;BR&gt;1103101&lt;BR&gt;Run" width="283" height="137"&gt;&lt;BR&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&amp;nbsp;r Edit Entry&lt;BR&gt;Attribute: rlDAvailablePool&lt;BR&gt;Values: 4611686014132623709&lt;BR&gt;Operation&lt;BR&gt;r r Add r Delete ( Replace [nsert fil Enter&lt;BR&gt;Entry List&lt;BR&gt;[Repa:&amp;Ã®CDA .ablePool:46 11686014132623709&lt;BR&gt;Edit Remove&lt;BR&gt;P' Synchronous Close&lt;BR&gt;r Extended Run" width="342" height="368"&gt;&lt;BR&gt;&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Seizing an operations master role - If the recovered DC does not hold the FSMO Roles&lt;/div&gt; &lt;div&gt;Use the following procedure to seize an operations master role (also known as a flexible single master operations (FSMO) role). You can use Ntdsutil.exe, a command-line tool that is installed automatically on all domain controllers. The following procedure applies to domain controllers that run Windows Server 2003 or Windows Server 2008.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;To seize an operations master role&lt;/div&gt; &lt;div&gt;1.    At the command prompt, type the following command, and then press ENTER:&lt;/div&gt; &lt;div&gt;ntdsutil&lt;/div&gt; &lt;div&gt;2.    At the ntdsutil: prompt, type the following command, and then press ENTER:&lt;/div&gt; &lt;div&gt;roles&lt;/div&gt; &lt;div&gt;3.    At the FSMO maintenance: prompt, type the following command, and then press ENTER:&lt;/div&gt; &lt;div&gt;connections&lt;/div&gt; &lt;div&gt;4.    At the server connections: prompt, type the following command, and then press ENTER:&lt;/div&gt; &lt;div&gt;Connect to server ServerFQDN&lt;/div&gt; &lt;div&gt;Where ServerFQDN is the fully qualified domain name (FQDN) of this domain controller, for example: connect to server &lt;a href="http://nycdc01.example.com"&gt;nycdc01.example.com&lt;/a&gt;. &lt;/div&gt; &lt;div&gt;If ServerFQDN does not succeed, use the NetBIOS name of the domain controller.&lt;/div&gt; &lt;div&gt;5.    At the server connections: prompt, type the following command, and then press ENTER:&lt;/div&gt; &lt;div&gt;quit&lt;/div&gt; &lt;div&gt;6.    Depending on the role that you want to seize, at the FSMO maintenance: prompt, type the appropriate command as described in the following table, and then press ENTER.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;table valign="top"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td&gt;   &lt;div&gt;Role&lt;/div&gt;   &lt;/td&gt;   &lt;td&gt;   &lt;div&gt;Credentials&lt;/div&gt;   &lt;/td&gt;   &lt;td&gt;   &lt;div&gt;Command&lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td&gt;   &lt;div&gt;Domain naming   master&lt;/div&gt;   &lt;/td&gt;   &lt;td&gt;   &lt;div&gt;Enterprise   Admins&lt;/div&gt;   &lt;/td&gt;   &lt;td&gt;   &lt;div&gt;For Windows   Server 2003: Seize domain naming master&lt;/div&gt;   &lt;div&gt;For Windows   Server 2008: Seize naming master&lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td&gt;   &lt;div&gt;Schema master&lt;/div&gt;   &lt;/td&gt;   &lt;td&gt;   &lt;div&gt;Schema Admins&lt;/div&gt;   &lt;/td&gt;   &lt;td&gt;   &lt;div&gt;Seize schema master&lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td&gt;   &lt;div&gt;Infrastructure   master&lt;/div&gt;   &lt;/td&gt;   &lt;td&gt;   &lt;div&gt;Domain Admins&lt;/div&gt;   &lt;/td&gt;   &lt;td&gt;   &lt;div&gt;Seize infrastructure master&lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td&gt;   &lt;div&gt;PDC emulator   master&lt;/div&gt;   &lt;/td&gt;   &lt;td&gt;   &lt;div&gt;Domain Admins&lt;/div&gt;   &lt;/td&gt;   &lt;td&gt;   &lt;div&gt;Seize pdc&lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td&gt;   &lt;div&gt;RID master&lt;/div&gt;   &lt;/td&gt;   &lt;td&gt;   &lt;div&gt;Domain Admins&lt;/div&gt;   &lt;/td&gt;   &lt;td&gt;   &lt;div&gt;Seize rid master&lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;After you confirm the request, Active Directory or AD DS attempts to transfer the role. When the transfer fails, some error information appears, and Active Directory or AD DS proceeds with the seizure. After the seizure is complete, a list of the roles and the Lightweight Directory Access Protocol (LDAP) name of the server that currently holds each role appears.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;Note &lt;/div&gt; &lt;div&gt;If this computer was not a RID master before the failure and you attempt to seize the RID master role, the computer tries to synchronize with a replication partner before accepting this role. However, because this step is performed when the computer is isolated, it will not succeed in synchronizing with a partner. Therefore, a dialog box appears asking you whether you want to continue with the operation despite this computer not being able to synchronize with a partner. Click Yes.&lt;/div&gt; &lt;div&gt;Windows Server 2008: Deleting a domain controller using Active Directory Users and Computers&lt;/div&gt; &lt;div&gt;When you use the version of Active Directory Users and Computers in Windows Server 2008, metadata cleanup is performed automatically when you delete the domain controller object. In addition, the server object and the computer object are also deleted automatically, which eliminates the need to perform those additional procedures. &lt;/div&gt; &lt;div&gt;As an alternative, you can also use Active Directory Sites and Services in Windows Server 2008 to delete a domain controller object. If you use Active Directory Sites and Services, you must delete the associated server object and NTDS Settings object before you can delete the domain controller object.&lt;/div&gt; &lt;div&gt;If you do not have Windows Server 2008, you can instead download and use the Microsoft Remote Server Administration Tools for Windows Vista (&lt;a href="http://go.microsoft.com/fwlink/?LinkID=115118" mce_href="http://go.microsoft.com/fwlink/?LinkID=115118"&gt;http://go.microsoft.com/fwlink/?LinkID=115118&lt;/a&gt;) to perform this procedure. &lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;To delete a domain controller object using Active Directory Users and Computers in Windows Server 2008&lt;/div&gt; &lt;div&gt;1.    Click Start, click Administrative Tools, and then click Active Directory Users and Computers. &lt;/div&gt; &lt;div&gt;2.    In the console tree, double-click the domain container, and then double-click the Domain Controllers organizational unit (OU).&lt;/div&gt; &lt;div&gt;3.    In the details pane, right-click the domain controller that you want to delete, and then click Delete.&lt;/div&gt; &lt;div&gt;Resetting the krbtgt password&lt;/div&gt; &lt;div&gt;Use the following procedure to reset the krbtgt password for the domain. The following procedure applies to domain controllers that run Windows Server 2003 or writable domain controllers (not read-only domain controllers (RODCs)) that run Windows Server 2008.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;Important &lt;/div&gt; &lt;div&gt;If you leave RODCs online during the forest recovery, do not delete the krbtgt accounts for the RODCs. The krbtgt account for an RODC is listed in the format krbtgt_number.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;To reset the krbtgt password&lt;/div&gt; &lt;div&gt;1.    Click Start, point to Control Panel, point to Administrative Tools, and then click Active Directory Users and Computers. &lt;/div&gt; &lt;div&gt;2.    In the console tree, double-click the domain container, and then click Users.&lt;/div&gt; &lt;div&gt;3.    In the details pane, right-click the krbtgt user account, and then click Reset Password.&lt;/div&gt; &lt;div&gt;4.    In New password, type a new password, retype the password in Confirm password, and then click OK.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;Notes &lt;/div&gt; &lt;div&gt;As mentioned in "Recovery steps," earlier in this guide, you should perform this operation twice.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Resetting the computer account password of the domain controller&lt;/div&gt; &lt;div&gt;Use the following procedure to reset the computer account password of the domain controller. The following procedure applies to domain controllers that run Windows Server 2003 or Windows Server 2008.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;To reset the computer account password of the domain controller&lt;/div&gt; &lt;div&gt;1.    At a command prompt, type the following command, and then press ENTER:&lt;/div&gt; &lt;div&gt;netdom help resetpwd&lt;/div&gt; &lt;div&gt;2.    Use the syntax that this command provides for using the NetDom command-line tool to reset the computer account password, for example: &lt;/div&gt; &lt;div&gt;netdom resetpwd /server:&lt;domain controller name&gt; /userD:administrator /passwordd:*&lt;/div&gt; &lt;div&gt;Where &lt;domain controller name&gt; is the local domain controller that you are recovering.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;Note &lt;/div&gt; &lt;div&gt;As mentioned in "Recovery steps," earlier in this guide, you should run this command twice.&lt;/div&gt; &lt;div&gt;Resetting a trust password on one side of the trust - If you have trusts inplace&lt;/div&gt; &lt;div&gt;Use the following procedure to reset a trust password on one side of the trust. This includes implicit trusts between child and parent domains as well as explicit trusts between this domain (the trusting domain) and another domain (the trusted domain). &lt;/div&gt; &lt;div&gt;Reset the password on only the trusting domain side of the trust, known in Windows Server 2003 as the incoming trust (the side where this domain belongs). Then, use the same password on the trusted domain side of the trust. In Windows Server 2003, this trusted domain is called the specified domain, and the trust is called the outgoing trust. Reset the password of the outgoing trust when you restore the first domain controller in each of the other (trusted) domains. &lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;Important &lt;/div&gt; &lt;div&gt;To perform the following procedure, use the latest Netdom.exe command-line tool in the Windows Server 2003 Service Pack 1 32-bit Support Tools, which you can download from the Microsoft Download Center (&lt;a href="http://go.microsoft.com/fwlink/?LinkId=70775" mce_href="http://go.microsoft.com/fwlink/?LinkId=70775"&gt;http://go.microsoft.com/fwlink/?LinkId=70775&lt;/a&gt;), or use Netdom.exe, which is included in Windows Server 2008 or in the Microsoft Remote Server Administration Tools for Windows Vista. Do not use older versions of the Netdom.exe command-line tool.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;To reset a trust password on one side of the trust&lt;/div&gt; &lt;div&gt;1.    At a command prompt, type the following command, and then press ENTER:&lt;/div&gt; &lt;div&gt;netdom experthelp trust&lt;/div&gt; &lt;div&gt;2.    Use the syntax that this command provides for using the NetDom tool to reset the trust password.&lt;/div&gt; &lt;div&gt;For example, if there are two domains in the forest-parent and child-and you are running this command on the restored domain controller in the parent domain, use the following command syntax:&lt;/div&gt; &lt;div&gt;netdom trust &lt;parent domain name&gt; /domain:&lt;child domain name&gt; /resetOneSide /passwordT:&lt;password&gt; /userO:administrator /passwordO:*&lt;/div&gt; &lt;div&gt;When you run this command in the child domain, use the following command syntax:&lt;/div&gt; &lt;div&gt;netdom trust &lt;child domain name&gt; /domain:&lt;parent domain name&gt; /resetOneSide /passwordT:&lt;password&gt; /userO:administrator /passwordO:*&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;Note &lt;/div&gt; &lt;div&gt;passwordT should be the same value on both sides of the trust. Run this command only once (unlike the netdom resetpwd command) because it automatically resets the password twice.&lt;/div&gt; &lt;div&gt;Adding the global catalog&lt;/div&gt; &lt;div&gt;Use the following procedure to add the global catalog to a domain controller. The following procedure applies to domain controllers that run Windows Server 2003 or Windows Server 2008.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;To add the global catalog &lt;/div&gt; &lt;div&gt;1.    Click Start, point to All Programs, point to Administrative Tools, and then click Active Directory Sites and Services.&lt;/div&gt; &lt;div&gt;2.    In the console tree, expand the Sites container, and then select the appropriate site that contains the target server. &lt;/div&gt; &lt;div&gt;3.    Expand the Servers container, and then expand the server object for the domain controller to which you want to add the global catalog.&lt;/div&gt; &lt;div&gt;4.    Right-click NTDS Settings, and then click Properties.&lt;/div&gt; &lt;div&gt;5.    Select the Global Catalog check box.&lt;/div&gt; &lt;div&gt;Once complete Plug back the NIC and restart&lt;/div&gt; &lt;div&gt;On all Rebuilt DC boxes configure the Name, IP and configuration as per the topology report&lt;/div&gt; &lt;div&gt;Once each machine join back to the domain and run DCPROMO as per original design&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Additional considerations&lt;/div&gt; &lt;div&gt;Be aware of the following issues when you perform a nonauthoritative restore of AD DS: &lt;/div&gt; &lt;ul&gt;  &lt;li&gt;If the nonauthoritative      restore procedure is preliminary to performing an authoritative restore of      any restored objects, do not restart the domain controller until after you      have completed the authoritative restore procedure.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;When you use System Recovery      Options to restore a Windows Server 2008 domain controller in an      environment that has Distributed File System (DFS) Replication      implemented, the SYSVOL restore is performed nonauthoritatively by      default. To perform an authoritative restore of SYSVOL, include the -authsysvol switch in your recovery      command, as shown in the following example:&lt;br&gt;           &lt;br&gt;           wbadmin start systemstaterecovery &lt;otheroptions&gt; -authsysvol&lt;/li&gt; &lt;/ul&gt; &lt;div&gt; &lt;/div&gt; &lt;ul&gt;  &lt;li&gt;If you use File Replication      Service (FRS), the restore operation sets the BURFLAGS registry keys for FRS, which      affects all replica sets that are replicated by FRS. &lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;Wbadmin.exe does not require      that you provide the target for the recovery. By specifying the backup      version that you want to recover, the command proceeds to recover to the      source location of the specified backup version.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;Backup files are named for      the date and time of the backup. When you recover, the version must be      stated in the form MM/DD/YYYY-HH:MM, which specifies the name of backup      that you want to recover. &lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;After the restore is      completed, restart the server normally, and perform basic verification.      When you restart the computer normally, AD DS and      Active Directory Certificate Services (AD CS) automatically      detect that they have been recovered from a backup. They perform an      integrity check and index the database again.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;After you log on to the      system, browse AD DS, and verify that the following conditions are      met:&lt;/li&gt;  &lt;ul&gt;   &lt;li&gt;All of the user objects and       group objects that were present in the directory at the time of the       backup are restored. &lt;br&gt;             &lt;/li&gt;  &lt;/ul&gt; &lt;/ul&gt; &lt;div&gt; &lt;table valign="top"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td&gt;   &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt;   &lt;div&gt;Note &lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td&gt;   &lt;div&gt;Active Directory   replication updates the objects that you restore with any changes that have   been made to them since the time that the backup was taken.&lt;/div&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt; &lt;ul&gt;  &lt;li&gt;Files that were members of a      FRS replica set and certificates that were issued by AD CS are      present.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;The Windows Time service      (W32time) is synchronized correctly.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;The NETLOGON and SYSVOL      folders are properly shared.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;The Preferred DNS server      address is configured correctly.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt;  &lt;li&gt;Host (A) and service (SRV)      resource records are registered correctly in Domain Name System (DNS).&lt;/li&gt; &lt;/ul&gt;&lt;br&gt;&lt;/p&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_dc07b.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage004.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_df399.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_96134.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_9e4fb.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_479f3.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_0f54f.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage005.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage004_ba5de.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage004_a1f48.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_31c10.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage004_83553.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage003_95a8a.png" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage005_2f431.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage002_8ad12.png" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_0ab2f.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage006.gif" alt="" /&gt;</content></entry><entry><title>Forest Bare Metal Recovery -</title><link rel="alternate" href="http://blog.meigh.eu/2011/02/15/forest-bare-metal-recovery-.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-02-15:d7cc66e5-da36-4b72-8c7b-0c9d70c60dcb</id><author><name>Madferret</name></author><category term="Active Directory Recovery" /><updated>2011-02-15T07:57:50Z</updated><published>2011-02-15T07:57:50Z</published><content type="html">&lt;div&gt; &lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;Forest Bare Metal Recovery - Windows &amp; AD Failed&lt;/div&gt; &lt;div&gt;02 February 2011&lt;/div&gt; &lt;div&gt;12:48&lt;/div&gt; &lt;div&gt;To recover: Windows, Disks and Applications&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Loss of a Active Directory Forest&lt;/div&gt; &lt;div&gt;Requirements: Full Bare Metal backup &amp; System State&lt;/div&gt; &lt;div&gt;You need to make sure that a full server backup is available!&lt;/div&gt; &lt;div&gt;You need to know the DSRM Admin account and password&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Performing a full Forest recovery of a domain controller by using the GUI&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Because this is the first writable domain controller in the domain, you must perform a nonauthoritative restore of AD DS and an authoritative restore of the SYSVOL folder&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;An authoritative restore of SYSVOL is required because replication of the SYSVOL replicated folder must be started after you recover from a disaster. All subsequent domain controllers that are added in the domain must resynchronize their SYSVOL folder with a copy of the folder that has been selected to be authoritative before the folder can be advertised&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;If you are restoring a domain controller that runs Windows Server 2008, use Wbadmin.exe to perform a nonauthoritative restore of AD DS. At the same time, perform an authoritative restore of SYSVOL by including the -authsysvol switch in your recovery command, as shown in the following example: &lt;/div&gt; &lt;div&gt;wbadmin start systemstaterecovery &lt;otheroptions&gt; -authsysvol&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;The first DC we will restore is the FSMO owner in the root domain, this will be a complete bare metal recovery so that it restores the server with Directory Services installed. Once recovered then the latest system state with authorative sysvol will be recovered.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;You can use this procedure to perform full server recovery of a domain controller with Windows Complete PC Restore.&lt;/div&gt; &lt;div&gt;There are no administrative credential requirements. No authentication is performed when you start in Windows RE.&lt;/div&gt; &lt;div&gt;Make sure the DC is not connected to the network&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;A full server recovery recovers every volume on the server. Use this type of recovery to recover from hard drive failures or file corruption on the same hardware with the same operating system installed.&lt;/div&gt; &lt;div&gt;A full server recovery reformats and repartitions all disks that are attached to the server. Use this scenario if you want to recover onto new hardware or if all other attempts to recover the server on the existing hardware have failed.&lt;/div&gt; &lt;div&gt;Before you perform a full server recovery, be aware that any existing data that is not included in the backup will be deleted when you complete this operation. This includes any volumes that are currently used by the server but not included in the backup.&lt;/div&gt; &lt;div&gt;For example, suppose you back up drives C, D, and E and disk 1, and the server also includes application data on disk 2. When you use that backup to perform a full server recovery, all the application data on disk 2 is lost. &lt;/div&gt; &lt;div&gt;If you recover to a dynamic disk that is not included in the backup, the partition-and the data that is stored on it-are deleted and then re-created without the data. &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;To perform full server recovery of a domain controller by using the GUI&lt;/div&gt; &lt;ol&gt;  &lt;li&gt;Insert the Windows      Server 2008 installation DVD into the disk drive, and then restart      the domain controller.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;When you are prompted, press      a key to start from the DVD.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;At the initial Windows screen, accept or select      language options, the time and currency format, and a keyboard layout, and      then click Next.&lt;/li&gt;  &lt;li&gt;At the Install now screen, click Repair your      computer.&lt;/li&gt;  &lt;li&gt;In the System      Recovery Options      dialog box, click anywhere to clear any operating systems that are      selected for repair, and then click Next.&lt;/li&gt;  &lt;li&gt;Under Choose a      recovery tool,      click Windows Complete PC Restore.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;If the backup is stored on a      remote server, a message indicates that Windows cannot find a backup on      the hard disks or DVDs on this computer. Click Cancel to close the message.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Click Restore a      different backup,      and then click Next.&lt;/li&gt;  &lt;li&gt;On the Select the      location of the backup page, perform either set of the following steps, depending on      whether the backup is stored locally or on a network shared folder:&lt;/li&gt;  &lt;ol&gt;   &lt;li&gt;If the backup is       stored on the local computer, select the location of the backup, and then       click Next.&lt;br&gt;             &lt;br&gt;             Or&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;If the backup is       stored on a network shared folder, click Advanced, and then click Search for       a backup on the network.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Click Yes to confirm that       you want to connect to the network.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;In Network       Folder,       type the Universal Naming Convention (UNC) name for the network share,       and then click OK.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Type credentials       for a user account that has sufficient permissions to restore the backup,       and then click OK. &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;On the Select the       location of the backup page, click the location of the backup, and then click       Next.&lt;/li&gt;  &lt;/ol&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Click the backup to restore,      and then click Next. &lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;If you want to replace all      data on all volumes, regardless of whether they are included in the      backup, on the Choose how to restore the backup page, select the Format and      repartition disks      check box. &lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Note the drive with the      backup is already excluded so you can just select next&lt;/li&gt; &lt;/ol&gt; &lt;div&gt; &lt;/div&gt; &lt;ol&gt;  &lt;li&gt;To prevent volumes that are      not included in the restore from being deleted and re-created, click Exclude      Disks, select      the check box for the disks that you want to exclude, and then click OK. &lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Click Next, and then click Finish.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Select the I confirm      that I want to format the disks and restore the backup check box, and then click OK. &lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Next we need to restore to      the best system state &lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Click Start, click Command      Prompt, and then      click Run as administrator.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;At the command prompt, type      the following command, and then press ENTER:&lt;br&gt;           bcdedit /set safeboot dsrepair&lt;/li&gt; &lt;/ol&gt; &lt;div&gt; &lt;/div&gt; &lt;ol&gt;  &lt;li&gt;Type the following command,      and then press ENTER:&lt;br&gt;           shutdown -t 0 -r&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;The server will now boot into      Directory Services Repair Mode&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;At the Windows logon screen, click Switch User, and then click Other User. &lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Type .\administrator as the user name, type the      DSRM password for the server, and then press ENTER.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Click Start, right-click Command      Prompt, and then      click Run as Administrator..&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;At the command prompt, type      the following command, and then press ENTER:&lt;/li&gt; &lt;/ol&gt; &lt;div&gt; &lt;/div&gt; &lt;ol&gt;  &lt;li&gt;wbadmin get versions      -backuptarget:&lt;targetDrive&gt;: &lt;br&gt;           -machine:&lt;BackupComputerName&gt; &lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;&amp;nbsp;wbadmin get&lt;BR&gt;wbadmin 1.0 - Backup command-line tool&lt;BR&gt;(C) Copyright 2004 Microsoft Corp.&lt;BR&gt;Backup time: 1/28/2011 1:05 PM&lt;BR&gt;Backup target: 1394/USB Disk labeled E:&lt;BR&gt;Uersion identifier: 01/28/2011-13:05&lt;BR&gt;onsbackuPtaret:e:&lt;BR&gt;Can Recover: Application(s), System State&lt;BR&gt;Backup time: 1/31/2011 12:18 PM&lt;BR&gt;Backup target: 1394/USB Disk labeled E:&lt;BR&gt;Ijersion identifier: 01/31/2011-12:18&lt;BR&gt;Can Recover: Application(s), System State" width="575" height="168"&gt;&lt;BR&gt;&lt;/li&gt; &lt;/ol&gt; &lt;div&gt; &lt;/div&gt; &lt;ol&gt;  &lt;li&gt;Where:&lt;/li&gt;  &lt;ul&gt;   &lt;li&gt;&lt;targetDrive&gt;: is the       location of the backup that you want to restore.&lt;/li&gt;   &lt;li&gt;&lt;BackupComputerName&gt;       is the name of the computer where you want to recover the backup. This       parameter is useful when you have backed up multiple computers to the       same location or you have renamed the computer since the backup was       taken. &lt;/li&gt;  &lt;/ul&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;Identify the version that you      want to restore. &lt;br&gt;           You must enter this version exactly in the next step.&lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;At the command      prompt, type the following command, and then press ENTER:&lt;br&gt;           wbadmin start systemstaterecovery -version:&lt;MM/DD/YYYY-HH:MM&gt;      &lt;br&gt;           -backuptarget:&lt;targetDrive&gt;:      -machine:&lt;BackupComputerName&gt; -authsysvol&lt;br&gt;           -quiet &lt;/li&gt; &lt;/ol&gt; &lt;ol&gt;  &lt;li&gt;&amp;nbsp;Backup target: 1394/USB Disk labeled E:&lt;BR&gt;Uersion identifier: 01/28/2011-13:05&lt;BR&gt;Can Recover: Application(s). System State&lt;BR&gt;Backup time: 1/31/2011 12:18 PM&lt;BR&gt;Backup target: 1394/USB Disk labeled E:&lt;BR&gt;Uersion identifier: 01/31/2011-12:18&lt;BR&gt;Can Recover: Application(s), System State&lt;BR&gt;C:\Users\Administrator.DRDCOÃ&gt;wbadmin start systemstaterecovery -version:01/31/2&lt;BR&gt;011-12:18 -backuptarget:E: -machine:DRDCO1 -authsysvol&lt;BR&gt;wbadmin 1.0 - Backup command-line tool&lt;BR&gt;(C) Copyright 2004 Microsoft Corp.&lt;BR&gt;Do you want to start the system state recovery operation?&lt;BR&gt;[Y] Yes [N] No y" width="598" height="220"&gt;&lt;BR&gt;&lt;/li&gt; &lt;/ol&gt; &lt;div&gt; &lt;/div&gt; &lt;ol&gt;  &lt;li&gt;Where:&lt;/li&gt;  &lt;ul&gt;   &lt;li&gt;&lt;MM/DD/YYYY-HH:MM&gt; is       the version of the backup that you want to restore.&lt;/li&gt;  &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;targetDrive&gt;: is the       volume that contains the backup.&lt;/li&gt;   &lt;li&gt;t&lt;BackupComputerName&gt;       is the name of the computer where you want to recover the backup. This       parameter is useful when you have backed up multiple computers to the       same location or you have renamed the computer since the backup was       taken. &lt;br&gt;             &lt;br&gt;             If you do not specify the -quiet parameter, you are prompted to       press Y to proceed with the restore process and press Y to confirm that       the replication engine for SYSVOL has not changed since you created the       backup.&lt;br&gt;             After the recovery operation has completed, if you are not going to       perform an authoritative restore of any restored objects, restart the       server as below &lt;/li&gt;  &lt;/ul&gt; &lt;/ol&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;Now Restart the server and follow STAGE 2&lt;/div&gt; &lt;ol&gt;  &lt;li&gt;To restart the server      normally after you perform the restore operation, type the following      command, and then press ENTER to have the server restart normally:&lt;br&gt;           &lt;br&gt;           bcdedit /deletevalue safeboot&lt;br&gt;           &lt;br&gt;           Type the following command, and then press ENTER:&lt;br&gt;           &lt;br&gt;           shutdown -t 0 -r&lt;/li&gt; &lt;/ol&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt;&lt;br&gt;&lt;/p&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage002_8ff60.png" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_a0eff.png" alt="" /&gt;</content></entry><entry><title>Forest Recovery Roadmap</title><link rel="alternate" href="http://blog.meigh.eu/2011/02/15/forest-recovery-roadmap.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-02-15:3889e7e1-ebd9-4a44-b951-fc29e157b981</id><author><name>Madferret</name></author><category term="Active Directory Recovery" /><updated>2011-02-15T07:56:08Z</updated><published>2011-02-15T07:56:08Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;Forest Recovery roadmap&lt;/div&gt; &lt;div&gt;This section provides an overview of the recommended path for recovering a forest. It is important to understand the recovery roadmap before you proceed with the forest recovery steps, which are described in detail later..&lt;/div&gt; &lt;div&gt;The following list summarizes the recovery steps at a high level:&lt;/div&gt; &lt;div&gt;1.    Perform prerecovery steps.&lt;/div&gt; &lt;div&gt;Prerecovery steps include determining the current forest structure, identifying the functions that each domain controller performs, and other related tasks.&lt;/div&gt; &lt;div&gt;2.    In each domain, perform an offline restore for one writable domain controller.&lt;/div&gt; &lt;div&gt;3.    Starting with the forest root domain controller, introduce the restored domain controllers to the network. &lt;/div&gt; &lt;div&gt;4.    Make the forest root domain controller a global catalog server. Perform replication synchronization between the forest root domain and each domain in the forest.&lt;/div&gt; &lt;div&gt;Although it is preferred that the forest root domain controller become a global catalog, it is possible to elect any of the restored domain controllers to become a global catalog. &lt;/div&gt; &lt;div&gt;While steps 1 through 4 are being performed, you can simultaneously start installing the operating system on each of the remaining writable domain controllers in the forest (that is, on those writable domain controllers that are not being restored from backup). This prepares them for step 5.&lt;/div&gt; &lt;div&gt;You do not necessarily have to rebuild RODCs at this point in the process. Instead, they can continue to allow access to local resources that are cached on the RODCs in their respective sites while the recovery operations are going on in parallel. Local resources, such as users and computers, that are not cached on the RODC in that site will have authentication requests forwarded to a writable domain controller. These requests will fail because writable domain controllers are offline. &lt;/div&gt; &lt;div&gt;If you are using a hub-and-spoke network architecture, you can concentrate first on recovering the writable domain controllers in the hub sites. Later, you can rebuild the RODCs in remote sites. &lt;/div&gt; &lt;div&gt;Remember that some operations in the remote sites, such as password changes, will not work until you recover writable domain controllers.&lt;/div&gt; &lt;div&gt;5.    Install AD DS on the remaining domain controllers in the forest. During the AD DS installation, each remaining domain controller will replicate data from the single domain controller for the domain that you restored from backup in step 2.&lt;/div&gt; &lt;div&gt;6.    Perform postrecovery steps.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt; &lt;div&gt;Important &lt;/div&gt; &lt;div&gt;Restoring system state backups depends on the original operating system and server of the backup. For example, you should not restore a system state backup to a different server. In this case, you may see the following warning: &lt;/div&gt; &lt;div&gt;"The specified backup is of a different server than the current one. We do not recommend performing a system state recovery with the backup to an alternate server because the server might become unusable. Are you sure you want to use this backup for recovering the current server?"&lt;/div&gt; &lt;div&gt;If you need to restore Active Directory to different hardware, create full server backups and plan to perform a full server recovery.&lt;/div&gt; &lt;div&gt;If the time of the occurrence of the failure is unknown, investigate further to identify backups that hold the last safe state of the forest. This approach is less desirable. Therefore, we strongly recommend that you keep detailed logs about the health state of AD DS on a daily basis so that, if there is a forest-wide failure, the approximate time of failure can be identified. You should also keep a local copy of backups to enable faster recovery.&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt;&lt;br&gt;&lt;/p&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_b07b0.gif" alt="" /&gt;</content></entry><entry><title>Directory Domain Services Database Mounting Tool</title><link rel="alternate" href="http://blog.meigh.eu/2011/02/15/directory-domain-services-database-mounting-tool.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-02-15:5bc212dd-df51-42b3-8c2c-846b0a0755e9</id><author><name>Madferret</name></author><category term="Active Directory Recovery" /><updated>2011-02-15T07:43:34Z</updated><published>2011-02-15T07:43:34Z</published><content type="html">&lt;div&gt; &lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;p&gt;Active Directory Domain Services Database Mounting Tool&lt;/div&gt; &lt;div&gt;31 January 2011&lt;/div&gt; &lt;div&gt;07:37&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;ul&gt;  &lt;div&gt;Active Directory  Domain Services Database Mounting Tool (Snapshot Viewer or Snapshot Browser)  Step-by-Step Guide&lt;/div&gt;  &lt;div&gt;Updated: March 28,  2009&lt;/div&gt;  &lt;div&gt;Applies To: Windows  Server 2008&lt;/div&gt;  &lt;div&gt;This guide shows  how you can use an improved version of Ntdsutil and a new  Active DirectoryÂ® database mounting tool in  Windows ServerÂ® 2008 to create and view snapshots of data that is  stored in Active Directory Domain Services (AD DS) or Active  Directory Lightweight Directory Services (AD LDS), without restarting the  domain controller or AD LDS server. A snapshot is a shadow copy-created  by the Volume Shadow Copy Service (VSS)-of the volumes that contain the Active Directory  database and log files. &lt;/div&gt;  &lt;div&gt;  &lt;table valign="top"&gt;   &lt;tbody&gt;&lt;tr&gt;    &lt;td&gt;    &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt;    &lt;div&gt;Note &lt;/div&gt;    &lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td&gt;    &lt;div&gt;During product    development, this feature has also been known by other names, including    Snapshot Viewer, Snapshot Browser, and Active Directory data mining    tool.&lt;/div&gt;    &lt;/td&gt;   &lt;/tr&gt;  &lt;/tbody&gt;&lt;/table&gt;  &lt;/div&gt;  &lt;div&gt;The Active  Directory database mounting tool (Dsamain..exe) can improve recovery processes  for your organization by providing a means to compare data as it exists in  snapshots that are taken at different times so that you can better decide  which data to restore after data loss. This eliminates the need to restore  multiple backups to compare the Active Directory data that they contain.&lt;/div&gt;  &lt;div&gt;This guide provides  step-by-step instructions for using the Active Directory database  mounting tool, including creating, listing, and mounting snapshots of  AD DS; preparing them for viewing as a Lightweight Directory Access  Protocol (LDAP) server; and viewing the data itself.&lt;/div&gt;  &lt;div&gt;For more  information about VSS snapshots, see Shadow Copies and Shadow Copy Sets (VSS)  (&lt;a href="http://go.microsoft.com/fwlink/?LinkId=90631" mce_href="http://go.microsoft.com/fwlink/?LinkId=90631"&gt;http://go.microsoft.com/fwlink/?LinkId=90631&lt;/a&gt;).&lt;/div&gt;  &lt;div&gt;In this guide&lt;/div&gt;  &lt;div&gt;&lt;a href="http://technet.microsoft.com/en-us/library/dd581644%28WS.10%29.aspx" mce_href="http://technet.microsoft.com/en-us/library/dd581644%28WS.10%29.aspx"&gt;End-to-End  Scenario That Uses the Active Directory Database Mounting Tool&lt;/a&gt; &lt;/div&gt;  &lt;div&gt;Who should use this guide?&lt;/div&gt;  &lt;div&gt;The following  individuals should review this information about the Active Directory  database mounting tool:&lt;/div&gt;  &lt;ul&gt;   &lt;li&gt;Information technology (IT)       planners and analysts who are technically evaluating the product&lt;/li&gt;  &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;Enterprise IT planners and       designers for organizations&lt;/li&gt;   &lt;li&gt;Administrators, operators,       and managers who are responsible for IT operations, including recovery of       deleted Active Directory data&lt;/li&gt;  &lt;/ul&gt;  &lt;div&gt; &lt;/div&gt;  &lt;div&gt;Scenarios for using the Active Directory database  mounting tool&lt;/div&gt;  &lt;div&gt;This section  describes common scenarios in which you can use the Active Directory  database mounting tool.&lt;/div&gt;  &lt;div&gt;Simplifying the forest recovery process&lt;/div&gt;  &lt;div&gt;For organizations  that have domain controllers running Windows Server 2003, the forest  recovery process requires a determination of which backup is best to use for  recovery. In general, you must consider whether to restore a recent backup of  your data or an older backup that you believe may be safer. Choosing a more  recent backup recovers more useful data, but it might increase the risk of  reintroducing dangerous data into the restored forest. &lt;/div&gt;  &lt;div&gt;To determine which  backup is best, you must restore it to a domain controller to view its  contents. Each restore operation requires that you restart the domain  controller in Directory Services Restore Mode (DSRM). &lt;/div&gt;  &lt;div&gt;For some  organizations, the loss of productivity caused by the time required for such  restore operations is great. These organizations often must keep detailed logs  about the Active Directory health state on a daily basis so that, in case  of a failure throughout the forest, the approximate time of failure can be  identified.&lt;/div&gt;  &lt;div&gt;In a forest  recovery scenario, the ability to precisely determine which backup contains  the best data to recover can drastically reduce downtime. &lt;/div&gt;  &lt;div&gt;Auditing modified and deleted objects&lt;/div&gt;  &lt;div&gt;Dsamain.exe helps  you examine any changes that are made to Active Directory data. For  example, if an object is accidentally modified, you can use this tool to  examine the changes and to help you better decide how to correct them if  necessary.&lt;/div&gt;  &lt;div&gt;By scheduling a  task to regularly create snapshots of the AD DS database, you can keep  detailed records of AD DS data as it changes over time. You can create  AD DS snapshots without devoting as much time and storage space as  Windows Server Backup requires for critical-volume backups. &lt;/div&gt;  &lt;div&gt;Requirements for using the Active Directory database  mounting tool&lt;/div&gt;  &lt;div&gt;You do not need any  additional software to use the Active Directory database mounting tool.  All the tools that are required to use this feature are built into Windows  Server 2008 and are available if you have the AD DS or the  AD LDS server role installed. These tools include the following:&lt;/div&gt;  &lt;ul&gt;   &lt;li&gt;A new ntdsutil       snapshot       operation that you can use to create, list, mount, and unmount snapshots       of AD DS or AD LDS data&lt;/li&gt;  &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;Dsamain.exe, which you can       use to expose the snapshot data as an LDAP server&lt;/li&gt;   &lt;li&gt;Existing LDAP tools, such as       Ldp.exe and Active Directory Users and Computers&lt;/li&gt;  &lt;/ul&gt;  &lt;div&gt; &lt;/div&gt;  &lt;div&gt;By default, only  members of the Domain Admins group and the Enterprise Admins group are allowed  to view the snapshots because they contain sensitive AD DS data. If you  want to access snapshot data from an old domain or forest that has been  deleted, you can allow nonadministrators to access the data when you run  Dsamain.exe. &lt;/div&gt;  &lt;div&gt;All permissions  that apply to the data in the snapshot are enforced when you view the data.  For example, suppose that members of the Domain Admins groups are explicitly  denied Read permission for an object in AD DS. If you supply credentials  for a member of that group when you try to view the snapshot data for that  object, access is denied. &lt;/div&gt;  &lt;div&gt;Moreover, you  cannot change the existing permission to grant Read access in the snapshot  that you are viewing because the Active Directory data is read-only. Any add,  modify, or delete operations will fail. &lt;/div&gt;  &lt;div&gt;However, a  malicious user might be able to copy sensitive data that might be stored in  AD DS snapshots to another forest and then use privileged credentials  from that forest to examine the data. Therefore, you should protect them in a  manner that is similar to how you protect domain controller backups. Use  encryption or other data security precautions with AD DS snapshots to  help mitigate the chance of unauthorized access to them. &lt;/div&gt;  &lt;div&gt;Steps for using the Active Directory database  mounting tool&lt;/div&gt;  &lt;div&gt;You are not  required to use the ntdsutil snapshot operation  to create the snapshots. You can use any backup of an AD DS or  AD LDS database that uses VSS, including non-Microsoft backup solutions.  The database must be in a consistent state; that is, the logs must be  replayed. If you use Ntdsutil.exe or Windows Server Backup on a server  running Windows Server 2008, the resulting snapshot or backup will be  consistent.&lt;/div&gt;  &lt;div&gt;  &lt;table valign="top"&gt;   &lt;tbody&gt;&lt;tr&gt;    &lt;td&gt;    &lt;div&gt;&amp;nbsp;&lt;BR&gt;&lt;/div&gt;    &lt;div&gt;Note &lt;/div&gt;    &lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td&gt;    &lt;div&gt;A domain    controller backup contains more data than an AD DS snapshot because it    also includes files that are needed to restore the operating system. &lt;/div&gt;    &lt;/td&gt;   &lt;/tr&gt;  &lt;/tbody&gt;&lt;/table&gt;  &lt;/div&gt;  &lt;div&gt;You can use either  Ntdsutil.exe to mount the snapshot or use Windows Server Backup to  restore the backup to an alternative location or to another computer. Then,  you can use a tool such as Ldp.exe to view the data. &lt;/div&gt;  &lt;div&gt;You can use the  following process to use the Active Directory database mounting tool:&lt;/div&gt;  &lt;ol&gt;   &lt;li&gt;Although it is       not a requirement, you can schedule a task that regularly runs       Ntdsutil.exe to take snapshots of the volume that contains the AD DS       or AD LDS database. &lt;/li&gt;   &lt;li&gt;Run Ntdsutil.exe to list the       snapshots that are available and then mount the snapshot that you want to       view.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Run Dsamain.exe       to expose the snapshot volume as an LDAP server. &lt;br&gt;             &lt;br&gt;             Dsamain.exe takes the following arguments:&lt;/li&gt;   &lt;ul&gt;    &lt;li&gt;AD DS or AD LDS        database (Ntds.dit) full file path. By default this file is opened as        read-only. Only ASCII paths are supported. Network share paths are not        supported.&lt;/li&gt;   &lt;/ul&gt;   &lt;ul&gt;    &lt;li&gt;Log path. This can be a        temporary path, but you must have write access. This parameter is        optional. If you do not specify the log path, logs and a temporary        database are created in the Temp folder.&lt;/li&gt;    &lt;li&gt;Four port numbers for LDAP,        LDAP-SSL, Global Catalog, and Global Catalog-SSL. Only the LDAP port is        required. If the other ports are not specified, they will use LDAP+1,        LDAP+2, and LDAP+3, respectively. For example, if you specify LDAP        port 41389 without specifying other port values, the LDAP-SSL port        will use port 41390 by default, and so on.. &lt;br&gt;               &lt;br&gt;               You can stop Dsamain by pressing CTRL+C in the Command Prompt        window or, if you are running the command remotely, by setting the stopservice attribute on the rootDSE        object. &lt;/li&gt;   &lt;/ul&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Run and attach       Ldp.exe to the snapshot's LDAP port that you specified when you exposed       the snapshot as an LDAP server in the previous step. &lt;br&gt;             &lt;br&gt;             You can also try using the Active Directory Users and       Computers snap-in that is installed by default on a Windows       Server 2008 domain controller, as described in the procedure later       in this guide. &lt;/li&gt;   &lt;li&gt;Browse the snapshot just as       you would with any live domain controller.&lt;/li&gt;  &lt;/ol&gt;  &lt;div&gt; &lt;/div&gt;  &lt;div&gt;If you specify  different ports for each snapshot when you run Dsamain.exe, you can browse  multiple snapshot instances on the same domain controller (or on the same  workstation if you are browsing a restored backup) at the same time and easily  compare their data. &lt;/div&gt;  &lt;div&gt;If you have some  idea which organizational unit (OU) or objects were deleted, you can look up  the deleted objects in the snapshots and record the attributes and back-links  that belonged to the deleted objects. You can reanimate these objects by using  the tombstone reanimation feature on a domain controller in your production  environment. Then, you must manually repopulate these objects with the  stripped attributes and back-links as identified in the snapshots. For more  information about tombstone reanimation, see Reanimating Active Directory  Tombstone Objects (&lt;a href="http://go.microsoft.com/fwlink/?LinkID=116204" mce_href="http://go.microsoft.com/fwlink/?LinkID=116204"&gt;http://go.microsoft.com/fwlink/?LinkID=116204&lt;/a&gt;).&lt;/div&gt;  &lt;div&gt;Although you must  manually re-create the stripped attributes and back links, the Active  Directory database mounting tool makes it possible for you to re-create  deleted objects and their back-links without rebooting the domain controller  into Directory Services Restore Mode. You can also use the tool to look up  previous configurations of AD DS as well, including permissions that were  in effect.&lt;/div&gt;  &lt;div&gt;Step 1: Create, mount, and list snapshots&lt;/div&gt;  &lt;div&gt;To create a  snapshot, you must be a member of the Enterprise Admins groups or the Domain  Admins group or you must have been delegated the appropriate permissions.  Review details about using the appropriate accounts and group memberships at &lt;a href="http://go.microsoft.com/fwlink/?LinkId=83477" mce_href="http://go.microsoft.com/fwlink/?LinkId=83477"&gt;Local and Domain Default  Groups&lt;/a&gt; (&lt;a href="http://go.microsoft.com/fwlink/?LinkId=83477" mce_href="http://go.microsoft.com/fwlink/?LinkId=83477"&gt;http://go.microsoft.com/fwlink/?LinkId=83477&lt;/a&gt;).&lt;/div&gt;  &lt;div&gt;To create an AD DS or AD LDS snapshot&lt;/div&gt;  &lt;ol&gt;   &lt;li&gt;Log on to a       domain controller as a member of the Enterprise Admins groups or the       Domain Admins group.&lt;/li&gt;   &lt;li&gt;Click Start, right-click Command       Prompt, and       then click Run as administrator.&lt;/li&gt;   &lt;li&gt;If the User       Account Control       dialog box appears, confirm that the action it displays is what you want,       and then click Continue. &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;At the elevated       command prompt, type the following command, and then press ENTER:&lt;br&gt;             ntdsutil &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;At the ntdsutil       prompt, type the following command, and then press ENTER:&lt;br&gt;             snapshot &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;At the snapshot       prompt, type the following command, and then press ENTER:&lt;br&gt;             activate instance ntds &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;At the snapshot       prompt, type the following command, and then press ENTER:&lt;br&gt;             create &lt;br&gt;             The command returns the following output:&lt;br&gt;             Snapshot set {GUID} generated successfully.&lt;br&gt;             Where GUID is the globally unique identifier (GUID) for the       snapshot.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;At the snapshot       prompt, type the following command, and then press ENTER:&lt;br&gt;             mount { GUID } &lt;/li&gt;  &lt;/ol&gt;  &lt;div&gt; &lt;/div&gt;  &lt;div&gt;&amp;nbsp;C:\Users\Adnin istrator&gt;ntdsutil&lt;BR&gt;ntdsutil: sn&lt;BR&gt;snapshot: act Inst ntds&lt;BR&gt;Active instance set to " ntds="" .="" cre="" creating="" snapshot....="" set="" c61425c1f-312f-4f8c--b9fa-8f4thfssdcco)="" generated="" successfully.="" list="" all="" 1:="" 01:00:20="" c5?0c8044-1096-443c-9d9c-0c6="" ?6d4f981b)="" 2:="" (flbebebf-2f19-42a1-h88d-8ebd="" ?d4e6240)="" 3:="" 01:10:22="" {80a5="" fl61-c120-4c?8-ba6="" ?-2fba3?3aa4cc)="" 4:="" {0965a5dd-95d5-4800-a9e2-ab?3338bfcf="" ?)="" 5:="" :11:15="" c51009128-6b?9-41a5-ab5e-ff3Ã¸54Ã¸debce)="" 6:="" (c8d?44ac-26ca-4="" ?65-9d85-bf="" ?bfbd992cf)="" ?:="" 2011="" 02="" 01="" :12="" :22="" {61425c1f-312f-4f8c-h9fa-8f4="" ?bfsbdccÃŸ)="" 8:="" c:="" {5002f5e4-34db-4da?-830e-3fc8236e3af="" f)="" snapshot:="" nount="" {5002f5e4-34db-4da?-830e-3fc8236e3aff)="" snapshot="" (5002f5e4-34db-4da="" 7-830e-3fcb236e3aff)="" nounted="" as="" c:\s5nap201102011222="" _uolumec$\="" jpshot="" width="434" height="215"&gt;&lt;BR&gt;&lt;/div&gt;  &lt;ol&gt;   &lt;li&gt; &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;As an option, to       see a list of all mounted snapshots, you can type the following command,       and then press ENTER:&lt;br&gt;             list mounted &lt;br&gt;             The output lists each mounted snapshot and a corresponding index       number. You can use the index number instead of the GUID to subsequently       mount, unmount, or delete the snapshot.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;To unmount the       snapshot after you have finished viewing the data, type either of the       following commands, and then press ENTER:&lt;br&gt;             unmount index # &lt;br&gt;             -or-&lt;br&gt;             unmount { GUID } &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Delete old       snapshots that you are no longer using because they consume disk space.       To delete a snapshot, type either of the following commands, and then       press ENTER:&lt;br&gt;             delete index # &lt;br&gt;             -or-&lt;br&gt;             delete { GUID } &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;After you are       done with snapshot operations, type quit to return to the ntdsutil menu, and then       type quit       again to return to the command prompt. &lt;/li&gt;  &lt;/ol&gt;  &lt;div&gt;After you create  and mount a snapshot, you can run Dsamain.exe to expose the AD DS or  AD LDS data in the snapshot as an LDAP server. &lt;/div&gt;  &lt;div&gt;Step 2 (Optional): Schedule a task that creates  AD DS snapshots&lt;/div&gt;  &lt;div&gt;You have the option  to schedule a task that runs Ntdsutil.exe regularly to create snapshots.&lt;/div&gt;  &lt;div&gt;To schedule a task  to create AD DS or AD LDS snapshots, you must be a member of the  Enterprise Admins group or the Domain Admins group. Review details about using  the appropriate accounts and group memberships at &lt;a href="http://go.microsoft.com/fwlink/?LinkId=83477" mce_href="http://go.microsoft.com/fwlink/?LinkId=83477"&gt;Local and Domain Default  Groups&lt;/a&gt; (&lt;a href="http://go.microsoft..com/fwlink/?LinkId=83477" mce_href="http://go.microsoft.com/fwlink/?LinkId=83477"&gt;http://go.microsoft.com/fwlink/?LinkId=83477&lt;/a&gt;).&lt;/div&gt;  &lt;div&gt;To schedule a task to create AD DS or  AD LDS snapshots&lt;/div&gt;  &lt;ol&gt;   &lt;li&gt;Log on to a       domain controller as a member of the Enterprise Admins group or the       Domain Admins group.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Click Start, click Administrative       Tools, and then       click Task Scheduler.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;If the User       Account Control       dialog box appears, confirm that the action it displays is what you want,       and then click Continue. &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Click Action, and then click Create task.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;On the General tab, type a name       for your task, and then select the appropriate security options to run       the task.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;On the Triggers tab, click New.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;In New Trigger, select the       appropriate settings for the task, and then click OK.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;On the Action tab, click New..&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;In New Action, type the name       or browse to the file path that contains Ntdsutil.exe and in Add       arguments (optional), type the following command, and then press       ENTER:&lt;br&gt;             ntdsutil "activate instance ntds" snapshot       create quit quit       &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;On the Conditions tab and the Settings tab, select any       additional settings that you want to apply to the task, and then click OK. &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;If you are       prompted, enter the password for a member of the Enterprise Admins group       or the Domain Admins group, and then click OK.&lt;/li&gt;  &lt;/ol&gt;  &lt;div&gt;Step 3: Expose an AD DS or AD LDS  snapshot as an LDAP server&lt;/div&gt;  &lt;div&gt;By default, you  must be a member of the Enterprise Admins groups or the Domain Admins group to  run Dsamain.exe and to access the Active Directory data that it exposes.  If the snapshot is taken from a domain that no longer exits, you can specify  the /allowNonAdminAccess parameter.  Review details about using the appropriate accounts and group memberships at &lt;a href="http://go.microsoft.com/fwlink/?LinkId=83477" mce_href="http://go.microsoft.com/fwlink/?LinkId=83477"&gt;Local and Domain Default  Groups&lt;/a&gt; (&lt;a href="http://go.microsoft.com/fwlink/?LinkId=83477" mce_href="http://go..microsoft.com/fwlink/?LinkId=83477"&gt;http://go.microsoft.com/fwlink/?LinkId=83477&lt;/a&gt;).&lt;/div&gt;  &lt;div&gt;To expose an AD DS or AD LDS snapshot as an  LDAP server&lt;/div&gt;  &lt;ol&gt;   &lt;li&gt;Log on to a       domain controller as a member Enterprise Admins groups or the Domain       Admins group.&lt;/li&gt;   &lt;li&gt;Click Start, right-click Command       Prompt, and       then click Run as administrator.&lt;/li&gt;   &lt;li&gt;If the User       Account Control       dialog box appears, confirm that the action it displays is what you want,       and then click Continue. &lt;/li&gt;   &lt;li&gt;At the elevated command       prompt, type the following command, and then press ENTER. Be sure to       include a space between the name of the parameter and the value that you       specify.&lt;br&gt;             dsamain /dbpath &lt;path_to_database_file&gt; /ldapport       &lt;port_#&gt;       &lt;br&gt;             If you plan to view the snapshot data on a domain controller,       specify ports that are different from the ports that the domain       controller will use. For example, type:&lt;br&gt;             dsamain /dbpath E:\$SNAP_200704181137_VOLUMED$\WINDOWS\NTDS&lt;BR&gt;tds.dit /ldapport 51389&lt;br&gt;             A message indicates that Active Directory Domain Services       startup is complete. &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;&amp;nbsp;licrosoft Iindows [Uersion 6.H.6HH2]&lt;BR&gt;opyright (c) 2006 Microsoft Corporation.. All rights reserved. I&lt;BR&gt;:\Users\Adninistrator&gt;dsamain /dbpath C:\$SNAP_201102011222_UOLUMEC$\iIindows\NT&lt;BR&gt;)S&lt;BR&gt;tds.dit /ldapport 51389&lt;BR&gt;EIJENTLOG (Informational): NTDS General / Service Control : 1000&lt;BR&gt;Microsoft Active Directory Domain Services startup complete. version 6.0.6002.18&lt;BR&gt;244" width="434" height="88"&gt;&lt;BR&gt;&lt;/li&gt;  &lt;/ol&gt;  &lt;div&gt;Allow Dsamain.exe  to continue running in the command prompt window while you use an LDAP tool  such as Ldp.exe or Active Directory Users and Computers to view the  AD DS or AD LDS data in the snapshot.&lt;/div&gt;  &lt;div&gt;Step 4: Access Active Directory data that is  stored in snapshots&lt;/div&gt;  &lt;div&gt;To use Ldp.exe or  Active Directory Users and Computers to access the AD DS or  AD LDS data, you must be a member of the Enterprise Admins groups or the  Domain Admins group or you must have been delegated permission. Review details  about using the appropriate accounts and group memberships at &lt;a href="http://go.microsoft.com/fwlink/?LinkId=83477" mce_href="http://go.microsoft..com/fwlink/?LinkId=83477"&gt;Local and Domain Default  Groups&lt;/a&gt; (&lt;a href="http://go.microsoft.com/fwlink/?LinkId=83477" mce_href="http://go.microsoft.com/fwlink/?LinkId=83477"&gt;http://go.microsoft.com/fwlink/?LinkId=83477&lt;/a&gt;).&lt;/div&gt;  &lt;div&gt;To use Ldp.exe to access AD DS or AD LDS  data that is stored in snapshots&lt;/div&gt;  &lt;ol&gt;   &lt;li&gt;Click Start, click Run, type ldp, and then click OK.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Click Connection, and then click Connect.&lt;/li&gt;   &lt;li&gt;In Server, type the name of the       server, or type localhost and, in Port, type a port number that you specified       previously with dsamain. For example, type 51389. Click OK.&lt;/li&gt;   &lt;li&gt;Click Connection, and then click Bind.&lt;/li&gt;   &lt;li&gt;In Bind type, click Bind as       currently logged on user or click Bind with credentials and type a name, password,       and domain for a user account that has permission to access the       Active Directory data. Click OK.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Click View, and then click Tree.&lt;/li&gt;   &lt;li&gt;In BaseDN, type the distinguished       name of the parent container for the data that you want to view, and then       click OK. For example, to view all objects in the Contoso domain,       type:&lt;br&gt;             dc=contoso,dc=com &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Double-click the       appropriate containers for the object that you want to view, and then       double-click that object to view its properties.&lt;/li&gt;  &lt;/ol&gt;  &lt;div&gt;To use Active Directory Users and Computers to access  Active Directory data that is stored in snapshots&lt;/div&gt;  &lt;ol&gt;   &lt;li&gt;Click Start, click Administrative       Tools, and then       click Active Directory Users and Computers.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;If the User       Account Control       dialog box appears, confirm that the action it displays is what you want,       and then click Continue. &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;In the console       tree, right-click Active Directory Users and       Computers [FQDN], and then click Change Domain Controller.&lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Click &lt;Type a       Domain Controller name or an IP Address here&gt;, type the       following, and then press ENTER:&lt;br&gt;             hostname:port&lt;br&gt;             where       hostname is the name of the server where the snapshots are       stored and port is the LDAP port number that you specified previously       with dsamain.       For example, type the following, and then click OK:&lt;br&gt;             DC1:51389 &lt;/li&gt;  &lt;/ol&gt;  &lt;ol&gt;   &lt;li&gt;Double-click the       appropriate containers for the object that you want to view, and then       double-click that object to view its properties.&lt;/li&gt;  &lt;/ol&gt;  &lt;div&gt; &lt;/div&gt;  &lt;div&gt;Pasted  from &lt;&lt;a href="http://technet.microsoft.com/en-us/library/cc753609%28WS.10%29.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc753609%28WS.10%29.aspx"&gt;http://technet.microsoft.com/en-us/library/cc753609%28WS.10%29.aspx&lt;/a&gt;&gt;  &lt;/div&gt;  &lt;div&gt; &lt;/div&gt;  &lt;div&gt;&gt; &lt;/div&gt; &lt;/ul&gt; &lt;div&gt; &lt;/div&gt; &lt;ul&gt;  &lt;div&gt; &lt;/div&gt;  &lt;div&gt;Troubleshooting&lt;/div&gt;  &lt;ul&gt;   &lt;li&gt;NTDS LDAP / LDAP Interface       1238 "Active Directory Domain Services was unable to initialize       network connections for incoming LDAP requests" &lt;/li&gt;  &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;Error value 10013 An attempt       was made to access a socket in a way forbidden by its access permissions&lt;/li&gt;  &lt;/ul&gt;  &lt;div&gt;This may happen if  the DNS service is installed on the computer on which you are loading the  snap-shot. If it does, restarting the computer should resolve the issue. See  the discussion in Microsoft KB article 959215 for additional technical  details. &lt;/div&gt;  &lt;div&gt; &lt;/div&gt;  &lt;div&gt;Pasted  from &lt;&lt;a href="http://technet.microsoft.com/en-us/library/cc772168%28WS.10%29.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc772168%28WS.10%29.aspx"&gt;http://technet.microsoft.com/en-us/library/cc772168(WS.10).aspx&lt;/a&gt;&lt;/div&gt; &lt;/ul&gt;&lt;br&gt;&lt;/p&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage002_3eb9e.png" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage003_8e6cb.png" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_ee1eb.gif" alt="" /&gt;&lt;img src="http://images.quickblogcast.com/4/3/8/7/2/237755-227834/clipimage001_891a1.gif" alt="" /&gt;</content></entry><entry><title>Exchange 2010 Calendar Sharing</title><link rel="alternate" href="http://blog.meigh.eu/2011/01/25/exchange-2010-calendar-sharing.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-01-25:48060388-76db-4a73-a285-d78f4a399f6e</id><author><name>Madferret</name></author><category term="Exchange 2010" /><updated>2011-01-25T12:09:09Z</updated><published>2011-01-25T12:09:09Z</published><content type="html">&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt; &lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;a title="Managing iCal Calendar Sharing with  SP1 [Updated]" href="http://www.stevieg.org/2010/06/calendar-sharing-improvements-coming-in-exchange-2010-sp1/" mce_href="http://www.stevieg.org/2010/06/calendar-sharing-improvements-coming-in-exchange-2010-sp1/" rel="bookmark"&gt;Managing iCal Calendar Sharing with  SP1 [Updated]&lt;/a&gt;&lt;/b&gt;&lt;p&gt;One of the new &lt;a href="http://www.stevieg.org/2010/06/exchange-2010-sp1-public-beta-available-to-download/" mce_href="http://www.stevieg.org/2010/06/exchange-2010-sp1-public-beta-available-to-download/" target="_blank"&gt;features available in  SP1&lt;/a&gt;  that I'm excited about (and already making use of) is the ability to  share calendars from Exchange either in iCalendar or HTML format.&lt;/div&gt;&lt;div&gt;So  - why is this useful? Doesn't  already have improved  Calendar sharing with the new federated sharing features available from  RTM? Well, yes it does.. And this new features doesn't replace federated  sharing, however if you want to share calendars &lt;em&gt;now&lt;/em&gt; is that  the world doesn't run . Some organisations will move to it  over the next year or two; but lets face facts - some enterprises out  there may move to Google Apps, Zimbra or something else, so Federated  Sharing isn't going to be an option. While a workaround might be to  create partner mailboxes or use third party software, it would be nice  to have a solution that "just works" and enables the business to  collaborate with partners easily without worrying too much about what  technology each other uses. Only with open standards can this happen and  with SP1 that's now a reality.&lt;/div&gt;&lt;div&gt;The ability to publish calendars  with anonymous viewers (and that's an important point, which I'll come  back to) means that should the admin enable it, the user can now go in  via OWA, select the calendar they wish to share and choose to publish  it. They then receive a set of URLs that they can share via email. The  recipient then can simply refer to the calendar via a web browser, or by  using any iCalendar compliant software or web app they can subscribe to  the shared Calendar.&lt;/div&gt;&lt;div&gt;Getting back to the anonymous part, there  are two options. The end user can publish a calendar with a "public" URL  that is searchable. The other option is a "restricted" URL with an  obfuscated URL. Additionally, the user can restrict what will be shown  for each calendar they choose to publish. On top of this, the admin can  restrict via sharing policies the maximum amount of information users  can publish, and sharing policies can be tied to a certain set of users.  So there is some risk in enabling the facility, but by default no  user's calendars are shared, and there are a number of controls  available to user and admin to pull the feature in line with the  business and individual user's requirements.&lt;/div&gt;&lt;div&gt;Now you know a little  more about the new feature, let's take a look at how it comes together  from a user perspective, and how it's configured by the admin.&lt;/div&gt;&lt;b&gt;The User Experience&lt;/b&gt;&lt;div&gt;If  a feature is going to work well it has to be easy for a user to find  and configure.  SP1 doesn't disappoint as the feature is  listed in both OWA and Outlook in the same place as other calendar  sharing options.&lt;/div&gt;&lt;div&gt;For an OWA user, they select the calendar they  want to share, then choose "Share", and the option is listed as "Publish  This Calendar..."&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;div&gt;If they're using Outlook 2010 (&lt;em&gt;beta &lt;/em&gt;), the user right clicks the calendar they want to share, chooses "Share" and again, it's listed as "Publish This Calendar..."&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;div&gt;After  clicking "Publish This Calendar..." via OWA or Outlook, the options can  be chosen including the detail to show, the date range and the type of  access:&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;div&gt;After clicking "Start Publishing", the links are generated:&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.stevieg.org/wp-content/uploads/image11.png" mce_href="http://www.stevieg.org/wp-content/uploads/image11.png"&gt;&lt;img&gt;&lt;BR&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;The  user can now either copy the links from this page, or via "Share"  choose "Send Links to This Calendar..." which opens a new email with the  two URLs attached.&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.stevieg.org/wp-content/uploads/image12.png" mce_href="http://www.stevieg.org/wp-content/uploads/image12.png"&gt;&lt;img&gt;&lt;BR&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;Opening  the calendar by the recipient is easy enough. For our first example,  let's have a look at Exchange's primary competitor, Google Apps. To add  the shared calendar to Google Calendar, the end user chooses "Add" then  "Add by URL".&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;div&gt;They  pop in the iCalendar URL, and it shows up in the recipients Google  Calendar. You'll see below I'm subscribing to two  SP1  calendars - my personal one and my team's:&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;div&gt;(In my case - this is one aspect I personally like about the feature. Although I don't use Google Calendar I &lt;em&gt;do&lt;/em&gt; use iGoogle and it allows me to see my Exchange calendars on my homepage via the Google Calendar widget.)&lt;/div&gt;&lt;div&gt;Next  up it's Zimba. Add a new Calendar, choose Synchronise appointments from  remote calendar, then pop in the Exchange iCalendar URL:&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;div&gt;Again, the Calendars show perfectly:&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;div&gt;Finally  let's not forget Outlook users; from Outlook 2007 onwards iCalendar  subscriptions are supported. I've quickly tried this in Outlook 2010  beta - simple right click in the calendar list, choose "Add Calendar"  and then select "From Internet..."&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.stevieg.org/wp-content/uploads/image17.png" mce_href="http://www.stevieg.org/wp-content/uploads/image17.png"&gt;&lt;img&gt;&lt;BR&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;As above, after popping the iCalendar URLs in the subscriptions are created in the local Outlook client.&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;div&gt;And, finally let's not forget HTML sharing, which does exactly what you'd expect:&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;b&gt;The Admin Experience&lt;/b&gt;&lt;div&gt;Now  you've seen the user experience let's take a look at what needs to be  done to get it up and running in your SP1 environment. To get it all  enabled we need to do the following:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Set an ExternalURL for your organisation's Client Access Server&lt;/li&gt; &lt;li&gt;Enable Calendar Publishing on the OWA Virtual Directory&lt;/li&gt; &lt;li&gt;Create or modify the sharing policy to allow anonymous sharing&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Setup  of the ExternalURL is pretty standard stuff so I won't cover it here.  Moving on to the Calendar Publishing OWA virtual directory feature,  let's look at what it's made up of.&lt;/div&gt;&lt;div&gt;The Calendar Publishing works via a new virtual directory - "calendar". This lives &lt;em&gt;beneath&lt;/em&gt;  the "owa" virtual directory as "/owa/calendar" and has anonymous, http  access enabled (watch out ISA/TMG users). It's enabled by default but  should it need re-enabling it's pretty straightforward using Powershell.  Here's a quick example:&lt;/div&gt;&lt;div&gt;Set-OWAVirtualDirectory "owa (Default Web Site)" -CalendarPublishingEnabled:$true&lt;/div&gt;&lt;div&gt;Next  up, a sharing policy needs to be configured to allow anonymous access.  You can do this via EMS or via the EMC. The EMS example below changes  the Default Sharing Policy to only allow anonymous access with maximum  access level of Calendar Sharing with Free/Busy plus Subject, Location  and Body.&lt;/div&gt;&lt;div&gt;Set-SharingPolicy -Identity "Default Sharing Policy" -Domains "Anonymous:CalendarSharingFreeBusyReviewer"&lt;/div&gt;&lt;div&gt;Via  the EMC is also pretty straightforward and particularly suitable when  you need to create multiple policies or modify existing ones. Here's a  quick run through of how to create a new policy via EMC that only  applies to certain users:&lt;/div&gt;&lt;div&gt;Open EMC and navigate to the Organizational Configuration node, then to Mailbox and select the Sharing Policies tab:&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;div&gt;First,  examine the sharing policies already present. In the above screenshot,  I've got a single sharing policy which is disabled. As we're adding a  new policy right-click in the white space or click "New Sharing Policy..."  on the actions pane. Give the policy a name and add a new "domain"  called "Anonymous" and select an appropriate maximum level of access:&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;div&gt;After  you've added the "domain" anonymous to the policy, make sure it's  enabled, then press Next. On the next page you'll be presented with the  opportunity to add mailboxes now. You can of course add these later  either via the EMC or via EMS:&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;div&gt;Press  Next, then after confirming the details, press New. After completion  you'll see a warning that lets you know calendar publishing is enabled  for this policy:&lt;/div&gt;&lt;div&gt;&lt;img&gt;&lt;BR&gt;&lt;/div&gt;&lt;div&gt;Press  Finish and we're all done. You should now be able to login to the  specific mailbox and following the first part of the article share the  Calendar.&lt;/div&gt;&lt;b&gt;Conclusion&lt;/b&gt;&lt;div&gt;We've had a look at what the new  feature brings both from an end-user experience and to an administrator.  As we can seen it's great for sharing calendars in an environment where  open standards are important or where partners use different products.  I'd like to see full WebDAV compatibility so a Linux user can plug  straight in and go, but this is a great start as far as sharing is  concerned.&lt;/div&gt;&lt;div&gt;Getting back to new shared calendar features in SP1 -  I'm hoping more can be revealed over the next few weeks as there's still  a bit more in store! &lt;img title="" src="http://www.stevieg.org/wp-includes/images/smilies/icon_smile.gif" mce_src="http://www.stevieg.org/wp-includes/images/smilies/icon_smile.gif" alt=":-)"&gt;&lt;BR&gt; And of course, you'll be able to get your hands on this yourself early June.&lt;/div&gt;&lt;div&gt;A  final thought - bear in mind all the features and steps described here  are not necessarily final so don't be surprised if things change over  the next few months.&lt;/div&gt;&lt;br&gt;&lt;/p&gt;</content></entry><entry><title>Exchange 2010 Migration TIPS</title><link rel="alternate" href="http://blog.meigh.eu/2011/01/14/exchange-2010-migration-tips.aspx?ref=rss" /><id>tag:blog.meigh.eu,2011-01-14:36e1681a-e809-4b85-a577-e91af599012e</id><author><name>Madferret</name></author><category term="Exchange 2010 Migration" /><updated>2011-01-14T08:12:06Z</updated><published>2011-01-14T08:12:06Z</published><content type="html">&lt;div&gt; &lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Since  Exchange 2010 is similar if not almost identical to Exchange 2007 in  terms of server roles (CAS, Hub Transport, Mailbox, Edge), if you  implemented Exchange 2007 in a manner that suits the needs of your  organization, then your transition to Exchange 2010 will be pretty  straight forward.  Effectively, you would add  Exchange 2010 server roles to mirror the Exchange 2007 server roles you  have today (ie: if you have 2 CAS/2007 servers today, you'd likely build  up 2 CAS/2010 servers in the Exchange 2010 environment, etc).&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;The sequence for a migration from Exchange 2007 to Exchange 2010 is as follows:&lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;div&gt;Upgrade all Exchange Servers to Exchange Server 2007 Service Pack 2.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Bring the AD forest and domains to Windows Server 2003 Functional (or higher) levels.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Upgrade  at least one Global Catalog domain controller in each AD Site that will  house Exchange Server to Windows Server 2003 SP2 or greater.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Prepare a Windows Server 2008 (RTM or R2) x64 edition server for the first Exchange 2010 server.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Install the AD LDIFDE tools on the new Exchange 2010 server (to upgrade the schema).&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Install any necessary prerequisites (WWW for CAS server role).&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Run  setup on the Exchange 2010 server, upgrade the schema, and prepare the  forest and domains. (Setup runs all in one step or separate at the  command line.)&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Install CAS server role servers and configure per 2010 design. Validate function-ality.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Transfer OWA, ActiveSync, and Outlook Anywhere traffic to new CAS servers.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Install Hub Transport role and configure per 2010 design.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Transfer inbound and outbound mail traffic to the 2010 HT servers.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Install Mailbox servers and configure Databases (DAG if needed).&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Create public folder replicas on Exchange 2010 servers using AddReplicatoPFRe-cursive.ps1or Exchange 2010 Public Folder tool.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Move mailboxes to Exchange 2010 using Move Mailbox Wizard or Powershell.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Rehome the Offline Address Book (OAB) generation server to Exchange Server 2010.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Transfer all Public Folder Replicas to Exchange Server 2010 Public folder store(s).&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Delete Public and Private Information Stores from Exchange 2007 server(s).&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div&gt;Uninstall all Exchange 2007 servers.&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;One  of the areas of change that you'll make with your transition to  Exchange 2010 that is different than in your Exchange 2007  implementation is the high availability and disaster recovery functions  of your Mailbox server role.  Because the concepts  of Single Copy Clusters, Cluster Continous Replication (CCR), and  Standby Continous Replicaton (SCR) no longer exist in Exchange 2010,  you'll be transitioning your mailboxes off of Exchange 2007 that has  these functions to Exchange 2010 that users Database Availability Groups  (DAGs).  Of course if you are just migrating to a  single Exchange 2010 Mailbox server with no high availability or  disaster recovery, then you will just have mailbox databases that you'll  be moving your mailboxes to.  However for  organizations implementing high availability and disaster recovery, the  DAGs provide replication of mail (of up 16 copies) from server to  server.  When you setup your Exchange 2010 Mailbox  servers to prepare them for the transition of mailboxes, setup your DAG  replication and test your failover and failback of Exchange 2010  Mailbox servers, and then move your mailboxes to the DAG(s).&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Another area of change between Exchange 2007 and Exchange 2010 is that ALL client connections go through the CAS server(s).  Unlike  Exchange 2007 and prior where OWA connections went through the CAS  server but Outlook (2003/2007) connections actually communicated  directly over MAPI to the backend Mailbox servers.  However with Exchange 2010, client systems no longer communicate directly to the backend Mailbox servers.  Instead, the client MAPI connections hit the CAS server(s) that then communicate with the Mailbox servers on the backend.  So  just like in the shift to Hub Transport servers in Exchange 2007 where  all mail routes through the Hub Transport servers (incoming mail,  outgoing mail, user to user mail between servers, and even user to user  mail between users on the same server), with Exchange 2010, all clients  go through the CAS server(s).  As such, the CAS servers take on more of a performance load and need to be beefed up a little.  Our recommendations for CAS to Mailbox in Exchange 2007 was 1 CAS servers for every 2 Mailbox servers.  For Exchange 2010, our recommendation is now 3 CAS servers for every 4 Mailbox servers.  Most  organizations have at least 2 CAS servers in their environment for  redundancy, and because you can virtualize the CAS role plus have 2000,  3000, even 5000 mailboxes on a single Mailbox server, we typically find  this 3:4 CAS:MBX ratio hasn't been a showstopper for organizations in  terms of a design change.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Also  important to note is that all 2007 server roles (CAS, Hub Transport,  Mailbox) in Exchange 2007 need to remain until all users are migrated to  Exchange 2010.  Exchange 2010 CAS, Hub Transport, and Mailbox servers  are not backwards compatible with Exchange 2007, so in order for a user  to access Outlook Web Access on Exchange 2007, they need to still hit  the Exchange 2007 CAS servers to access their mailbox on the Exchange  2007 Mailbox server.  After their mailbox is migrated to Exchange 2010,  then the user will hit the Exchange 2010 CAS server and access their  mailbox on the Exchange 2010 Mailbox server.  Because Exchange 2010 has a  proxy service on the CAS server, your external URL for OWA can point to  the Exchange 2010 CAS server and if the user's mailbox is still on  Exchange 2007, the CAS/2010 server will automatically redirect the  client connection to the CAS/2007 server for OWA.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Lastly,  after moving mailboxes off of Exchange 2007 to Exchange 2010, leave the  Exchange 2007 infrastructure in place for a couple (2) weeks.  By  leaving the old Exchange 2007 server(s) in place, when an Outlook client  tries to connect to the old Exchange 2007 server for its mail, the old  Exchange 2007 server will notify the Outlook client software that the  user's mail has been moved to the Exchange 2010 server and will  automatically update the user's Outlook profile with the new destination  server information.  Thereafter, when the Outlook client is launched,  Outlook will access the user's mailbox on the new Exchange 2010 server.   By leaving the old Exchange 2007 infrastructure in place for a couple  weeks, pretty much all of your users will launch Outlook to have the  profile automatically changed thus requiring no client system  intervention during the migration process.  The only users you will  likely need to manually reset their Outlook profile are users who are on  extended leave and had not accessed their Outlook mail during the 2  week time that you had the Exchange 2007 environment still in place.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Hopefully  these steps are helping in providing you guidance in your migration  from Exchange 2007 to Exchange 2010.  I cover the migration process in  much more detail (including specific steps and step by step processes  for cutting over CAS, Hub Transport, and Mailbox server roles) in my  book "Exchange 2010 Unleashed" from Sams Publishing.  The book was  written from 2-yrs of early adopter experience working with Exchange  2010 and will hopefully provide more detailed guidance on the migration  process from Exchange 2007 to Exchange 2010.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;br&gt;&lt;/div&gt;</content></entry><entry><title>total number of messages send and received with amount of data</title><link rel="alternate" href="http://blog.meigh.eu/2010/12/03/total-number-of-messages-send-and-received-with-amount-of-data.aspx?ref=rss" /><id>tag:blog.meigh.eu,2010-12-03:b8377a6f-b041-49e9-9447-03c6864205d1</id><author><name>Madferret</name></author><category term="Exchange Powershell 2007" /><updated>2010-12-03T11:54:34Z</updated><published>2010-12-03T11:54:34Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Script to show total number of messages send and received with amount of data&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;add-PSSnapin Microsoft.Exchange.Management.Powershell.Admin&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;[string]::Join(',',("Server,Sent,Received,TotalRecieved,TotalSent")) &gt; "c:\totalsr.csv"&lt;/div&gt; &lt;div&gt;# Get the start date for the tracking log search &lt;/div&gt; &lt;div&gt;$Start = (Get-Date).adddays(-1)&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;# Get the end date for the tracking log search&lt;/div&gt; &lt;div&gt;$End = (Get-Date)#.adddays(-0)&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;# Declare an array to store the results&lt;/div&gt; &lt;div&gt;$Results = @()&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;# Get the SEND events from the message tracking logs&lt;/div&gt; &lt;div&gt;$servers = Get-exchangeserver |?{$_.isHubtransportServer -eq $true}&lt;/div&gt; &lt;div&gt;foreach ($server in $servers)&lt;/div&gt; &lt;div&gt;{&lt;/div&gt; &lt;div&gt;$Sent = Get-MessageTrackingLog -Server $server -EventID SEND -Start $Start -End $End -resultsize unlimited&lt;/div&gt; &lt;div&gt;$SendData  = Get-MessageTrackingLog -Server $server -EventID SEND -Start $Start  -End $End -resultsize unlimited |Select-Object TotalBytes |  Measure-Object -Property TotalBytes -sum&lt;/div&gt; &lt;div&gt;$TotalSent = "{0:N2}" -f ($SendData.Sum / 1MB) + "MB"&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;# Get the RECEIVE events the message tracking logs&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;$Received = Get-MessageTrackingLog -Server $server -EventID RECEIVE -Start $Start -End $End -resultsize unlimited&lt;/div&gt; &lt;div&gt;$ReceivedData  = Get-MessageTrackingLog -Server $server -EventID RECEIVE -Start $Start  -End $End -resultsize unlimited  |Select-Object TotalBytes |  Measure-Object -Property TotalBytes -sum&lt;/div&gt; &lt;div&gt;$TotalRecieved = "{0:N2}" -f ($ReceivedData.Sum / 1MB) + "MB"&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;$Count = 1&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;# Declare a custom object to store the data&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;$Stats = "" | Select-Object Server,Sent,Receive&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;# Set the Sent property to the number of messages sent&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;$Stats.Sent =($Sent | Where-Object { ($_.EventId -eq "SEND")}).Count&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;# Set the Received property to the number of messages received&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;$Stats.Receive =($Received | Where-Object { ($_.EventId -eq "Receive")}).Count&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;# Add the statistics for this mailbox to our results array&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;foreach ($obj in $Stats)&lt;/div&gt; &lt;div&gt;{&lt;/div&gt; &lt;div&gt;$NoSent = $Stats.Sent&lt;/div&gt; &lt;div&gt;$NoReceived = $Stats.Receive&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;}&lt;/div&gt; &lt;div&gt;$Count += 1&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;$Results2 =[string]::Join(',',($Server,$NoSent,$NoReceived,$TotalRecieved,$TotalSent))&lt;/div&gt; &lt;div&gt;$Results2&lt;/div&gt; &lt;div&gt;$Results2 &gt;&gt; "c:\totalsr.csv"&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;}&lt;/div&gt;&lt;br&gt;&lt;/div&gt;</content></entry><entry><title>mailbox last logon times</title><link rel="alternate" href="http://blog.meigh.eu/2010/12/03/mailbox-last-logon-times.aspx?ref=rss" /><id>tag:blog.meigh.eu,2010-12-03:c24bdc28-efdd-41c1-91b5-50372ea126b7</id><author><name>Madferret</name></author><category term="Exchange Powershell 2007" /><updated>2010-12-03T11:43:49Z</updated><published>2010-12-03T11:43:49Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Script to list mailbox last logon times&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;$mail  = Get-mailbox | ?{$_.RecipientTypeDetails -eq "UserMailbox" -and  $_.DisplayName.substring(0,4) -ne "CAS_"} | get-MailboxStatistics  |Select-Object Displayname,LastLogontime |Sort-Object Lastlogontime  #|Export-Csv c:\mm.csv&lt;/div&gt; &lt;div&gt;$mailDisplay = $mail.Displayname&lt;/div&gt; &lt;div&gt;$mailLastlogon = $mail.LastLogonTime&lt;/div&gt; &lt;div&gt;$recipienttype = $mail.RecipientTypeDetails&lt;/div&gt; &lt;div&gt; &lt;/div&gt; &lt;div&gt;$result = [string]::Join(',',($mailDisplay,$mailLastlogon))&lt;/div&gt; &lt;div&gt;$result&lt;/div&gt; &lt;div&gt;$mail |Export-Csv c:\mm.csv&lt;/div&gt;&lt;br&gt;&lt;/div&gt;</content></entry><entry><title>Machine Passwords</title><link rel="alternate" href="http://blog.meigh.eu/2010/12/03/machine-passwords.aspx?ref=rss" /><id>tag:blog.meigh.eu,2010-12-03:ac498de7-f994-42a5-9611-0ffed9057f76</id><author><name>Madferret</name></author><category term="Active Directory 2008" /><updated>2010-12-03T10:42:44Z</updated><published>2010-12-03T10:42:44Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Every so often I am asked to help analyze weird issues when assigning  group memberships or permissions - accounts are not found and the Event  Log shows unsettling messages. Many of these situations can be traced  back to the operating system using a different machine account password  than the domain is aware of.&lt;/div&gt;&lt;b&gt;Yes, Machine Accounts Have Passwords!&lt;/b&gt;&lt;div&gt;Just  like user accounts, a machine object in Active Directory has a password  to identify the machine and to protect the machine account. This  password can expire as well and needs to be changed regularly. Usually  this happens automatically bwtween the domain member and a domain  controller without any intervention by the user. But sometimes a machine  forgets it password - sort of ...&lt;/div&gt;&lt;b&gt;How Can a Machine Forget its Password?&lt;/b&gt;&lt;div&gt;Don't  worry! The machine account password is not lost by freak occurrence -  but it is a common problem in virtual environments. Whenever a snapshot  is restored, a virtual machine is prone to this issue.&lt;/div&gt;&lt;div&gt;By default,  a machine account password is changed every 30 days. When a virtual  machine has been in use for more than 30 days and is then reset to an  earlier state, the snapshot contains an outdated password causing the  machine to loose its connection to the domain.&lt;/div&gt;&lt;div&gt;In the past,  image-based backup and restore has caused the same problem as the  machine account password is stored in the image - but it happens less  often. The process of creating an image of a system is very  time-consuming - as is the restore process. Therefore, the issue  occurred very seldom.&lt;/div&gt;&lt;div&gt;With the rise of operating system streaming  (like Citrix Provisioning Server), the machine account password needs to  be managed by the product as reboots effectively reset a machine to a  state predefined by a shared disk image. For example, Provisioning  Server stored machine account passwords in the configuration database  and updates information whenever an automatic change&lt;br&gt;occurs.  Unfortunately, this process is prone to failure when the database is  offline although a snapshot is maintained by Provisioning Server (see &lt;a href="http://support.citrix.com/article/CTX124792" mce_href="http://support.citrix.com/article/CTX124792" target="_blank"&gt;Administrator's Guide&lt;/a&gt;, chapter 15, "Offline Database Support").&lt;/div&gt;&lt;b&gt;How to Resolve the Issue&lt;/b&gt;&lt;div&gt;The issue is very quickly resolved by re-joining the machine to the domain.&lt;/div&gt;&lt;b&gt;Configuring the Password Expiry&lt;/b&gt;&lt;div&gt;Contrary to user account password policy, the machine account password is managed by two options:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;The change interval specified the time between forced changes of the machine account password.&lt;/li&gt; &lt;li&gt;The expiry defines whether machine account password expires at all.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Both options are configured through group policies under the following node:&lt;/div&gt;&lt;div&gt;Computer Configuration &gt; Policies &gt; Windows Settings &gt; Security Settings &gt; Local Policies &gt; Security Options&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Domain member: Disable machine account password changes&lt;/li&gt; &lt;li&gt;Domain member: Maximum machine account password age&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Both options are not configured by default.&lt;/div&gt;&lt;b&gt;Best Practices in Virtual Environments&lt;/b&gt;&lt;div&gt;In  virtualized environments, machine account password changes should be  disabled. By preventing machines from changing this password  automatically, domain synchronization issues are effectively remedied.&lt;/div&gt;&lt;br&gt;&lt;/div&gt;</content></entry><entry><title>Powershell Total Emails Send Received</title><link rel="alternate" href="http://blog.meigh.eu/2010/11/29/powershell-total-emails-send-received.aspx?ref=rss" /><id>tag:blog.meigh.eu,2010-11-29:0b8d92f4-dfeb-4d03-b2b6-993854693014</id><author><name>Madferret</name></author><category term="Powershell Exchange 2007" /><updated>2010-11-29T11:49:50Z</updated><published>2010-11-29T11:49:50Z</published><content type="html">&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Script to query all Hub Transport Servers for a total of send and received emails. Also the sum of data send and received&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;#Add-PSSnapin Microsoft.Exchange.Management.Powershell.Admin&lt;br&gt;&lt;br&gt;[string]::Join(',',("Server,Sent,Received"))&lt;br&gt;# Get the start date for the tracking log search &lt;br&gt;#$Start = (Get-Date -Hour 00 -Minute 00 -Second 00).AddDays(-4)&lt;br&gt;$Start = (Get-Date).adddays(-7)&lt;br&gt;# Get the end date for the tracking log search&lt;br&gt;$End = (Get-Date).adddays(-0)&lt;br&gt;&lt;br&gt;# Declare an array to store the results&lt;br&gt;$Results = @()&lt;br&gt;&lt;br&gt;# Get the SEND events from the message tracking logs&lt;br&gt;$servers = Get-exchangeserver |?{$_.isHubtransportServer -eq $true}&lt;br&gt;foreach ($server in $servers)&lt;br&gt;{&lt;br&gt;$Sent = Get-MessageTrackingLog -Server $server -EventID SEND -Start $Start -End $End -resultsize unlimited&lt;br&gt;$SendData = Get-MessageTrackingLog -Server $server -EventID SEND -Start $Start -End $End -resultsize unlimited |Select-Object TotalBytes | Measure-Object -Property TotalBytes -sum&lt;br&gt;$TotalSent = "{0:N2}" -f ($SendData.Sum / 1MB) + " MB Sent"&lt;br&gt;&lt;br&gt;&lt;br&gt;# Get the RECEIVE events the message tracking logs&lt;br&gt;&lt;br&gt;$Received = Get-MessageTrackingLog -Server $server -EventID RECEIVE -Start $Start -End $End -resultsize unlimited&lt;br&gt;$ReceivedData = Get-MessageTrackingLog -Server $server -EventID RECEIVE -Start $Start -End $End -resultsize unlimited  |Select-Object TotalBytes | Measure-Object -Property TotalBytes -sum&lt;br&gt;$TotalRecieved = "{0:N2}" -f ($ReceivedData.Sum / 1MB) + " MB Recieved"&lt;br&gt;&lt;br&gt;$Count = 1&lt;br&gt;&lt;br&gt;# Declare a custom object to store the data&lt;br&gt;&lt;br&gt;$Stats = "" | Select-Object Server,Sent,Receive,TotalRecieved,TotalSent&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;# Set the Sent property to the number of messages sent&lt;br&gt;&lt;br&gt;$Stats.Sent =($Sent | Where-Object { ($_.EventId -eq "SEND")}).Count&lt;br&gt;&lt;br&gt;# Set the Received property to the number of messages received&lt;br&gt;&lt;br&gt;$Stats.Receive =($Received | Where-Object { ($_.EventId -eq "Receive")}).Count&lt;br&gt;&lt;br&gt;# Increment the progress bar counter&lt;br&gt;foreach ($obj in $Stats)&lt;br&gt;{&lt;br&gt;$NoSent = $Stats.Sent&lt;br&gt;$NoReceived = $Stats.Receive&lt;br&gt;&lt;br&gt;}&lt;br&gt;$Count += 1&lt;br&gt;&lt;br&gt;$Results2 =[string]::Join(',',($Server,$NoSent,$NoReceived,$TotalRecieved,$TotalSent))&lt;br&gt;$Results2&lt;br&gt;&lt;br&gt;}&lt;br&gt; &lt;br&gt;&lt;/div&gt;</content></entry></feed>
