Categories
ConfigMgr

System Center 2012 : ConfigMgr E1000 PXE Boot Crash / Hang

I’ve come across an issues with a Configuration Manager 2012 deployment where an ESXi 4.1 VM configured with an E1000 NIC will Crash / Hang at Boot just as Windows PE loads the GUI. The boot gets stuck on “Windows is Starting Up.” I’m unable to do anything other that hard-reset the VM.

Categories
Exchange Server 2010

Exchange 2010 : How to Deploy a Mailbox Database Availability Group (DAG)

In this article I’ll cover deployment of a two-node, multi-role Exchange 2010 Database Availability Group (DAG). The required steps from schema updates to post-installation configuration will be detailed in order to get you up and running… hopefully!

Categories
ConfigMgr

ConfigMgr 2012 : PXE Distribution Point Certificate Issues – “No Items Found”

I ran into an issue with a System Center Configuration Manager 2012 deployment recently where if I selected the Distribution Point to be PXE enabled and then imported a certificate from our PKI I was unable to view or configure any of the server roles anymore. I simply got “Not items Found” in the ConfigMgr console!

NoItems

Working with Microsoft Support it was identified that our Certificate size exceeded 32K, which is larger than the buffer used by ConfigMgr. The XML assocaited with the Distribution Point was then being truncated leading to the error in the ConfigMgr console, as above.

Note; if your issue is affecting a SECONDARY SITE then see note at the bottom of the article.

Categories
Windows 2008

AD CS : CertSrv Website “No certificate templates could be found”

AD CS : CertSrv Website “No certificate templates could be found”

Recently I deployed two Windows 2008 R2 Enterprse Subordinate Certificate Authorities, whilst these have been issuing certificates requested through Autoenrollment I noticed today that the web interface for requests wasn’t working properly using https://<caname>/certsrv. When clicking on “‘Request a certificate’, then ‘Create and submit a request to this CA” I would then get the following error message:

“No certificate templates could be found. You do not have permission to request a certificate from this CA, or an error occurred while accessing the Active Directory.”

Aftering digging about it turned out that by this is resolved by using IIS Manager and changing the DefaultAppPool Identity to NetworkService from ApplicationPoolIdentity:

  1. This is available by rt-clicking the DefaultAppPoll under Application Pools and selecting “Advanced Settings..”
  2. Look for the “Identity” value under Process Model and change to NetworkService.
  3. Once completed perform an iisreset on the CA.
Categories
Windows 2008

IIS : Windows Authentication 401.2 Unauthorised

IIS : Windows Authentication 401.2 Unauthorised

Having deployed a couple of Certificate Authorities recently I ran into an issue with the Web interface http://<caname>/certsrv where despite entering valid credentials I was continually prompted for a username and password, and eventually a 401.2 Unauthorised error.

ca-error

On further investigation it turned out that the Windows Authentication providers were the cause, chaging this from Negotiate,NTLM to NTLM,Negotaite (you could even remove the Negotiate provider) resolves this issue, click read more to see the solution. 

Categories
Windows 2008

AD DS : Find Users with Specific Home Drive Path

AD DS : Find Users with Specific Home Drive Path

I had to move some users home directories from one server to another recently, the users Mac users had their home drive set in AD DS rather than using folder redirection determined by Group policy.

In AD Users and Computers I used the following customer search to identify all of the users; change *server name* to suit your environment:

{code lang:css showtitle:false lines:false hidden:false}(&(objectClass=user)(objectCategory=person)(homeDirectory=*server name*)){/code}

For example, if your file server waqs called FILESRV1 you would change the query to use *FILESRV1*:

{code lang:css showtitle:false lines:false hidden:false}(&(objectClass=user)(objectCategory=person)(homeDirectory=*FILESRV1*)){/code}

Categories
Exchange Server 2007

Exchange : Database Sizing Scripts

Exchange : Database Sizing Scripts

I’ve recently been asked to size some Exchange 2007 environments for migration to Exchange 2010; specifically database sizes. I used the following scripts to perform this task.

Export User Mailbox Sizes

This script will give you an idea of allocated storage, regardless of Single Instance Storage – this is important as Exchange 2010 no longer includes Single Instance Storage. Microsoft suggest that you should allow a 15% increase in storage, in reality I’ve found this to be a very accurate figure to go by. Change the server name in the script an you’re good to go.

{code lang:css showtitle:false lines:false hidden:false}Get-MailboxServer <server name> | Get-MailboxStatistics | Sort -Property TotalItemsize | select-object DisplayName, LastLoggedOnUserAccount, ItemCount, @{name=”Size(MB)”;expression={$_.totalitemsize.value.ToMB()}} | export-csv stats.csv{/code}

Find Database File Size

This script will show the physical file size of each database. Remember this will not give an indication of the true data size of all user mailboxes, unless you add approx 15% to the size (YMMV). Again, change the server name.

{code lang:css showtitle:false lines:false hidden:false}Get-ExchangeServer <server name> | Get-MailboxDatabase | foreach-object {add-member -inputobject $_ -membertype noteproperty -name mailboxdbsizeinMB -value ([math]::Round(([int64](get-wmiobject cim_datafile -computername $_.server -filter (‘name=”’ + $_.edbfilepath.pathname.replace(“\”,”\\”) + ””)).filesize / 1MB),2)) -passthru} | Sort-Object mailboxdbsizeinMB -Descending | format-table identity,mailboxdbsizeinMB{/code}

Database Whitespace

If you are using Enterprise Vault or something similar chances are you’ll have a good chunk of white space in your database which you wont need to provision for on the new environment. To identify the amount of white space in your database files use the code below, execute on the Mailbox server itself.

{code lang:css showtitle:false lines:false hidden:false}$yesterday = [DateTime]::Now.AddDays(-1)
$Events = Get-Eventlog Application | Where {($yesterday -le $_.TimeWritten)} | ?{$_.eventid -eq “1221”}
$Events | select-object Message | ft{/code}

Categories
Windows 2008

Windows 2008 R2 : Failover Cluster Manager – Move Cluster Group

Windows 2008 R2 : Failover Cluster Manager – Move Cluster Group

You’ve probably noticed that in Failover Cluster Manager you don’t have the option to move the cluster group resources like you did in Windows 2000/2003. It is possible to move this group, however you’ll have to use either Windows Powershell or Command Prompt to achieve this.

Using Windows Powershell:
  Move-ClusterGroup “Cluster Group”
  Move-ClusterGroup “Available Storage”

Using the CLI and cluster.exe:
  cluster group “Cluster Group” /move
  cluster group “Available Storage” /move

Categories
Exchange Server 2010

Outlook : Waiting to update this Folder…

Outlook : Waiting to update this Folder…

I encountered an issues recently with an outlook 2007 client that, when in cached mode only, would not automatically update maibox folder such as Inbox. In the bottom right of the window the user simply had “Waiting to update this folder…” The user was alo receiving “Out of Memory” error when trying to browse public folders.

On further investigation we noted that the users RPC requst count (shown in the Outlook Connection Status window – Ctrl-click the Outlook Icon) was very high and quickly increasing to the Public Folder server.

It became aparent that the user had many Public Folder Favourites defined, hundreds of folders with thousands of emails. In online mode we deleted the Public Folder Favourites, then deleted the users OST. Finally we set the user back to Cached Mode. This resolved their Outlook issues, and dramaically improved Outlook performance.

Categories
Windows 2008

Server Core : Query the Event Log from the Command Line

Server Core : Query the Event Log from the Command Line

Use the following command to list events in the SYSTEM event log between 9th March 00:00 to 15:00:

{code lang:css showtitle:false lines:false hidden:false}wevtutil qe system “/q:*[System[TimeCreated[@SystemTime>=’2012-03-09T00:00:00′ and @SystemTime<‘2012-03-09T15:00:00’]]]” /f:text{/code}

Use the following command to query the SYSTEM event log for any event at or after midnight on 12th March:

{code lang:css showtitle:false lines:false hidden:false}wevtutil qe system “/q:*[System[TimeCreated[@SystemTime>=’2012-03-12T00:00:00′]]]” /f:text{/code}