Disable UAC in Windows Server 2008

January 9, 2009 – 1:45 am

You can disable the UAC feature in Windows Server 2008 by following these steps:

  • Start -> Run -> msconfig
  • Click Tools and scroll down to “Disable UAC”
  • Click the Launch button and reboot the server.

Install .NET 3.5 framework on virtuozzo container

November 14, 2008 – 5:50 pm

When installing the .NET 3.5 framework on a Windows 2003 SP2 x64 VPS I got these errors, using the web or full installer:

XPSEPSC x64 Installer: [2] Error code 1603 for this component means “Fatal error during installation.
XPSEPSC x64 Installer: [2] Setup Failed on component XPSEPSC x64 Installer
WapUI: [2] DepCheck indicates XPSEPSC x64 Installer is not installed.

To install .NET 3.5 framework on a windows virtuozzo container, perform these steps for a successfull installation:

  • Restart the VPS
  • Rename the C:\windows\system32\catroot2\ folder (not catroot itself but catroot2)
  • Start the print spooler service
  • Run the .NET 3.5 SP1 installer
  • Reboot if necessary

Backup SQL databases to network share

March 13, 2008 – 8:02 pm

To be able to backup databases to a network share, the MSSQLSERVER service needs access to the location on the network.
For this you need to change the SQL services service account.
Before doing this you’ll need to give that user extra permissions, to accomplish this you can add the user to all the SQLServer2005* or SQLServer2008* groups.

To change the logon user go to “SQL Server Configuration Manager”. Under Services, click on properties for the MSSQLSERVER.
Here you can change the logon account to the one you’ll need. Specify this to a domain user, or a local user that also exists on the machine where you will store the databases, and that has the full access share and NTFS permissions.
After modifying the logon name, you’ll have to restart the service. Do the same for the SQL Server Agent.

Now you’ll be able to backup databases to a network share and specify the path like this then: \\servername\share.

Reset lost administrator password in Windows Server 2003

February 29, 2008 – 6:21 am

While you can use tools like ophcrack to recover your password, these don’t always work and in case of strong passwords you’ll need to pay for the rainbow table sets, the free included set can only crack alphanumerical passwords up to 14 characters. There is a rainbow table set that will crack passwords up to 33 characters, look on the website for the updated information and prices.

To reset your password you can use tools like the Winternals boot cd, which includes the locksmith tool.
In my experience this doesn’t always work, and you have to manually add device drivers to the boot cd. If you work with different types of servers, that come with new types of RAID controllers every x months, it can become hard to keep track of. Not that you loose a password that often, but it can be frustrating when you are in urgent need of such a tool :).

The tool that I have recently found seems to be working great. The password reset did not work, but I was able to set a blank password, logon, and reset the password using computer management.
It’s called “Offline NT Password & Registry Editor”, visit its website and download it here.
This tool includes a lot of recent raid controller drivers which is necessary, so it detects your Windows installation partition.

Before using this tool, be sure that Windows was shutdown properly, or you will not be able to perform any actions!
If that’s the case, the tool will warn you and you’ll have to reboot in safe mode, and perform a clean shutdown twice.
Besides that, the tool is pretty self-explanatory, but the author has also written a walkthrough.

I was able to set a blank password on a Windows Server 2003 x64 edition with this tool, which was a great help!
As always, keep in mind that resetting a password can cause problems if not used carefully, for example in cases where EFS is used, those files will become inaccessible.

Add windows components on Virtuozzo for Windows fix

December 6, 2007 – 3:40 am

I ran into this issue while using Virtuozzo 3.5.1 SP1 on Windows Server 2003 SP1 Datacenter Edition x64.
When creating new virtual private servers most default components are already installed, but when you want to add extra windows components (add/remove software -> windows components), you bump into this error:

Setup library wssoc.dll could not be loaded, or function StorageServerSetupProc could not be found.
The specific error code is 0×7e.

There is currently no fix available for this, it will be solved in Virtuozzo 4.0.
You can however fix this yourself by creating a new custom application template, using the virtuozzo template creation wizard. Choose to create a template from manually selected data, be sure to have created a temporary VPS already, you’ll need to enter the vps id, and desired template name.
When prompted which files you want to include, add these:

c:\windows\system32\wssoc.dll
c:\windows\system32\hpcoc.dll

Finish the wizard, then run the command “vzpkgdeploy -i <templatename>” to enable this template.

Automate Virtuozzo backups on Windows

November 16, 2007 – 2:51 am

There is currently no GUI option to automate Virtuozzo backups, although not in current version 3.5.1 SP1.
This will be possible in Virtuozzo 4.0, which is currently in beta.

I’m using 2 bat files to script the backups and remove the oldest backup.
The first script creates a full backup of all virtual private servers using the vzbackup command:

for /F “skip=3 usebackq tokens=*” %%i in (`cmd /c “vzlist -ao veid”`) do (cmd /c “vzbackup “%%i && echo VE ID %%i has been backed up!)

To be able execute the second script you need to download RmEmpty, an executable which allows you to remove empty directories, get it here

First, we’ll have to search the destination folder on the backup node for files older then x days, in this example I use 4 days.
forfiles /P e:\vz\backups /S -D -4 /c “cmd /c del /q @file”

The forfiles is a default windows binary, some information about the given variables:
/P indicates the path to start searching
/S instructs forfiles to recurse into subdirectories
/D selects files with a last modified data less than or equal to (-)
/C indicates the command to execute for each file
The /q is to delete the files quietly, otherwise it will ask for a confirmation before deletion.

After deleting the files we’ll search for empty directories, and remove them:
C:\system\rmemp12\RMEMPTY.EXE e:\vz\backups\

Be aware that if e:\vz\backups\ itself is also empty, it will remove that one too! So always keep at least 1 file in that directory, I use a simple readme.txt so it never gets deleted.

Windows Server 2008 Server Virtualization

October 2, 2007 – 1:27 am

As of Windows Server 2008 RC0, it’s possible to install Windows Server Virtualization as a server role.
Be sure to check if hardware virtualization is enabled in the BIOS.
Before this role appears in server manager, you need to install 2 update packs:

C:\Windows\wsv\Windows6.0-KB939853-x64.exe
C:\Windows\wsv\Windows6.0-KB939854-x64.exe

After installing these updates, you will be able to select WSV from the available roles in server manager, a reboot is necessary after installation.

After the reboot you will be able to launch the Virtualization Management Console from the Administrive Tools menu.
You will see this interface:

Virtualization Management Console

The next steps to create a new virtual machine
Specify a name for the new virtual machine:

New Virtual Machine Wizard

Specify the amount of memory for the new virtual machine:

3.JPG

Assign a network adapter:

4.JPG

Assign a new virtual hard disk and specify the size and location:

5.JPG

Choose to install from a bootable cd/dvd-rom, an image file, or from network:

6.JPG

After receiving a summary of the new virtual machine, you’ll see the following screen after the machine was started:

8.JPG

As a test I installed a Windows Server 2003 SP2 from cd-rom:

9.JPG

Like the VMWare Tools on VMWare, WSV offers Integration Services or “Microsoft Virtualization Guest Components” for video/mouse/network/… support on the virtual machines:

10.JPG

After installing the components you’ll need to reboot.

11.JPG

Install VMware Tools on Debian

August 22, 2007 – 8:07 pm

During installation the kernel headers and a C compiler will be required, to check which kernel you are using type this command:

# uname -r
2.6.18-5-686

# apt-get install linux-headers-2.6.18-5-686
# apt-get install make gcc

Now that the required packages are installed follow these steps to install the vmware tools:

1. click install vmware tools from the vmware server console menu
2. mkdir /mnt/cdrom
3. mount /dev/cdrom /mnt/cdrom
4. cd /tmp
5. tar zxf /mnt/cdrom/VMwareTools-1.0.3-44356.tar.gz
6. cd vmware-tools-distrib
7. ./vmware-install.pl
8. accept the default paths and choose to run the vmware-config-tools.pl at the end

The VMware tools have now been installed.

Transfer SQL Server Jobs from SQL Server 2000 to 2005

August 15, 2007 – 6:13 pm

To transfer sql server jobs from sql server 2000 to sql server 2005 you can use SQL Server Business Intelligence Development Studio.

1. Click file -> new -> project to create a new Integration Services Project
2. Click view -> toolbox so you can see an overview of all the items
3. From the toolbox, drag the “transfer jobs task” to the control flow window
4. Right click the transfer job task and click edit
5. Select jobs and enter the source and destination server, you can test the connection immediately
6. Choose to transfer all jobs, or only the ones you can select from the given list
7. Set the desired IfObjectExists and EnableJobsAtDestination option and click OK
8. Right-click the transfer jobs task and click execute task

If the job fails it will turn red, if it succeeds it turns green. Click on execution results to check for errors.
A couple of reasons why the task would fail:

  • the job owner does not exist on the destination server, you can modiy this on the source server in the job properties
  • if you have e-mail notifications enabled on the job, be sure the operator exists on the destination server or disable this
  • if the database for which the job will be executed does not exist that job transfer will fail

A couple screenshots from the transfer jobs task properties and the execution results:

transfer jobs task properties transfer jobs task execution results

Deploy Windows Server 2003 using WDS

August 6, 2007 – 9:33 pm
  • Install WS 2008 and WDS
  • Copy boot.wim from \sources folder from a Vista DVD
  • Use WDS to add that boot.wim to the boot images
  • Right-click this image, and select “Create capture boot image”, call it Capture or something similar
  • Add this capture image to the boot images
  • Disable all boot images, except for the capture image
  • Install Windows Server 2003 with service packs, updates, applications,… on a new server
  • Extract the content of \support\tools\deploy.cab from the ws 2003 cd to c:\sysprep on the new server
  • Run c:\sysprep\setupmgr.exe to create a sysprep answer file for future deployments
  • Save the answerfile as sysprep.inf and copy it to the WDS server
  • Run c:\sysprep\sysprep.exe /reseal /mini /reboot
  • When the server reboots, press F12 twice to do a PXE boot and load the winPE for capturing
  • Follow the steps until you get to the Image Capture Source screen, here you can select the volume, usually this would be C:\, you have the option to immediately upload the captured image to the WDS server, be sure to have created an image group first. Type the ip address of the WDS server, and then you have to type the credentials to connect (turn off the windows firewall)

WDS Capture Image

  • When finished, click close, the server will reboot and load the sysprep wizard, complete this wizard. In future deployments this will be done by sysprep.inf
  • Copy the sysprep.inf that you saved earlier on the WDS server to \RemoteInstall\Images\<imagegroup>\<imagename>\$OEM$\$1\Sysprep\ (you have to create this structure)
  • Create an unattended file for the WDS client and attach this to the WDS server:
<?xml version="1.0" ?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
   <settings pass="windowsPE">
	  <component name="Microsoft-Windows-Setup" publicKeyToken="31bf3856ad364e35"
language="neutral" versionScope="nonSxS" processorArchitecture="x86">
	     <WindowsDeploymentServices>
	        <Login>
	           <WillShowUI>OnError</WillShowUI>
	           <Credentials>
	                 <Username>**username**</Username>
	                 <Domain>**domain**</Domain>
	                 <Password>**password**</Password>
	              </Credentials>
	           </Login>
	        <ImageSelection>
	           <WillShowUI>Never</WillShowUI>
	           <InstallImage>
	              <ImageName>**imagename**</ImageName>
	              <ImageGroup>**imagegroup**</ImageGroup>
	              <Filename>**filename.wim**</Filename>
	           </InstallImage>
	              <InstallTo>
	              <DiskID>0</DiskID>
	              <PartitionID>1</PartitionID>
	           </InstallTo>
	        </ImageSelection>
	     </WindowsDeploymentServices>
	        <DiskConfiguration>
	            <WillShowUI>Never</WillShowUI>
	            <Disk>
	                <CreatePartitions>
	                    <CreatePartition>
	                        <Order>1</Order>
	                        <Type>Primary</Type>
	                        <Extend>true</Extend>
	                    </CreatePartition>
	                </CreatePartitions>
	                <DiskID>0</DiskID>
	                <WillWipeDisk>true</WillWipeDisk>
	                <ModifyPartitions>
	                    <ModifyPartition>
	                        <Active>true</Active>
	                        <Extend>False</Extend>
	                        <Format>NTFS</Format>
	                        <Label>SYSTEM</Label>
	                        <Letter>C</Letter>
	                        <PartitionID>1</PartitionID>
	                        <Order>1</Order>
	                    </ModifyPartition>
	                </ModifyPartitions>
	            </Disk>
   </DiskConfiguration>
	  </component>
   </settings>
</unattend>
  • Create an auto-cast session for this image to be deployed on other machines