Tuesday, July 31, 2007

Inject VMWare NIC driver into Windows Server 2008 boot image

This guide only works on WS 2008 or Vista. The WAIK is supported on WS 2003 and XP too, but the driver injection will fail.
You can download the WAIK here.

Install the WAIK, open the Windows PE Tools Command Prompt. Also, have the WS 2008 boot.wim ready, and mount the VMWare Tools image by clicking "Install VMWare Tools", this will mount the drivers on the cd-rom drive.
If you are not doing these steps on a virtual machine, you can also just download these drivers (vmxnet).

1. copype x86 c:\windowspe
2. imagex /info "c:\path\to\x86\boot.wim"
In the WIM Information, look for the Boot Index, in this case the boot index is 2. We will use this in the next step.

3. imagex /mountrw "c:\path\to\x86\boot.wim" 2 c:\windowspe\mount
4. peimg /inf="c:\path\to\vmxnet\win2k\vmxnet.inf" c:\windowspe\mount\windows
5. peimg /inf="c:\path\to\vmxnet\win2k\vmware-nic.inf" c:\windowspe\mount\windows
You should see "PEIMG completed the operation successfully". If you would do this on a XP or 2003 machine, the message would be "PEIMG failed to complete the operation with status code 0x800703fb".
It's possible that this WILL work in future versions, but at the moment it doesn't

6. imagex /unmount c:\windowspe\mount /commit

The boot.wim image has now been injected with the VMWare NIC drivers.

There is an alternative to this, instead of doing the above driver injection procedure, you can add this to your .vmx file to have network support too: ethernet0.VirtualDev="e1000"

Wednesday, July 25, 2007

Clear System Event Log (SEL) on DELL PowerEdge Server

I had to ran the diagnostic tools on a dell pe 1950 server, but the test stopped very early with the message "the system event log contains memory related errors".
There are several ways to clear the SEL, one that can be performed locally and one remotely.

1. Clear the SEL locally
At boot, press ctrl-E to set the BMC ip address, in this same window you can choose to clear the system event log.

2. Clear the SEL remotely
If you have not already set an ip address for the BMC, do it now by pressing ctrl-E at boot. Besides configuring the ip address, enable IPMI too.
At the client be sure to have the bmc management utility installed, the default installation path is c:\program files\dell\sysmgt\bmc.
Perform the following command to clear the sel: ipmish.exe -ip -u root -p calvin sel clear
To view how many entries are in the sel: ipmish.exe -ip -u root -p calvin sel status

Change logical filename of SQL database

Perform this query to change the logical filename of both the data and logfile of you database.

(NAME = <DBFileName_DATA>, NEWNAME='NewDBFileName_Data')

(NAME = DBFileName_Log, NEWNAME='NewDBFileName_Log')

Install VMWare Tools on Server Core

In VMware Server Console, click "Install VMware Tools".
The setup GUI will not automaticly appear, so you have to run it manually. Actually by clicking on "install vmware tools" the cd-rom drive was mounted with tools, so you can now type "D:", and then run setup.exe.
This will run the setup GUI and you can install the tools like you would normally.

Install Active Directory Domain Services on Server Core

To install active directory on windows server 2008, server core edition, you must first create an answer file for the unattended installation, because server core does not offer the GUI wizard.
This sample answer file is to install a new domain in a new forest, with the installation of a DNS server.

InstallDNS = Yes
ConfirmGc = Yes
DNSOnNetwork = no
DomainLevel = 2
DomainNetBiosName= mydomain
ForestLevel = 2
NewDomain = Forest
NewDomainDNSName = mydomain
Password = mypassword
ReplicaOrNewDomain = Domain
SafeModeAdminPassword = mypassword

Save this file as "answerfile.txt" and then run the following command:

dcpromo /answer:answerfile.txt

Change schema for all tables in SQL Server 2005

By using the stored procedure MSforeachtable it's possible to perform the ALTER SCHEMA sql statement for all tables in a given database.
To change the schema for all tables this would look like:

exec sp_MSforeachtable "ALTER SCHEMA new_schema TRANSFER ? PRINT '? modified' "

Which would look like this if you want to alter schema to dbo:

exec sp_MSforeachtable "ALTER SCHEMA dbo TRANSFER ? PRINT '? modified' "

Tuesday, July 24, 2007

A matching connector cannot be found to route the external recipient

When I wanted to send an e-mail from my exchange mailbox to an external e-mail address, the message wasn't send.
I tracked the message in the Queue Viewer and it couldn't be sent because of this: "A matching connector cannot be found to route the external recipient".

To be able to send messages to external domains you have to create a send connector for domain "*". You can do this in the Organization Hub Transport Configuration:

exchange address space

530 5.7.1 Client was not authenticated

I got this error after sending an e-mail from an external domain over the internet to the exchange server, the message bounced with "530 5.7.1 Client was not authenticated" as error.
This is caused by the fact that I did not install an Edge Transport Server and did not specificly allow anonymous connections on the default receive connector.

By default Exchange 2007 servers not running the Edge Transport role will only accept inbound smtp connections from Exchange Users (clients), Exchange Servers (other Exchange 2007 servers) and Exchange Legacy Servers (legacy Exchange 2003 & below servers). To allow annonymous smtp connections for your server, run the following management shell command:

Set-ReceiveConnector -Identity "Default EXCHANGE" -PermissionGroups "AnonymousUsers"