Slipstreaming Service Packs into XP

I needed to create a BartPE Boot disc, but got the error “Source files wrong version. File version of d:\i386\intdll.dll is 5.1.2600.0 should be 5.1.2600.1045 or higher. You must use Windows XP Service Pack 1 or Server 2003 version of windows”

In order to update the files on a Windows installation CD, you need to go through a process called ‘Slipstreaming’. This is the process of including the Service Pack files into the original disk. I tried following the instructions at WinSuperSite, but ran into a problem as my XP disk is an OEM version from Dell, which already includes their updates. When trying to update the original, I received the error “This ServicePack cannot be integrated into a destination that also has integrated SoftwareUpdates.”. I therefore needed to use the nlite utility instead which miraculously removes the hotfixes and painlessly slipstreams the Service Pack into the original. Oh Happy Days :)

nlite will also do all the hard work to create a bootable image for you.

error EA3905FE Cluster Not Allocated when restoring Drive Image

I recently restored an old Powerquest Drive Image in order to retrieve some old files. The Drive image was made when I suspected problems with the hard drive, so I was not too surprised to receive the error “EA3905FE: Cluster Not Allocated”. I had previously restored the same disk image (without checking the file system) and received the error “NTLDR is Missing, Press Ctrl+Alt+Del to restart”.

This time, I rebooted the PC with the original Windows installation disk in the CD drive and pressed a key when prompted to boot from CD. Once setup had run I selected the Repair option and booted into the Recovery Console, which is effectively a very basic DOS window with a limited set of commands. I tried to list the contents of drive C by typing DIR at the prompt. However the directory was obviously corrupt as the “Documents and Settings” folder had zero size and there was an error message at the end of the listing.

I had restored the disk image of three partitions. By default, Windows had allocated these to C:, D: and E: despite the fact they were originally located at C:, P: and S:. The CD Drive was therefore allocated to drive F:. I extracted chkdsk from the CD to drive C and repaired the drive (Command sequence: F:, cd i386, expand chkdsk.ex_ c:\, c:, chkdsk /r). All the files now appeared correctly.

While I was there, I also check the status of the other drives I had restored and although not flagged as dirty, they both had problems. (chkdsk d: /r, chkdsk e: /r)

When I rebooted, the installation started up but died with the dreaded BSOD and instantly rebooted. This is probably because I have restored my disk image onto different hardware… So off to create a BartPE Boot CD. More on that here

Problems moving a domain on Windows 7

I just installed a new WordPress based domain for a customer. Everything went tickety-boo with the installation, until I made the final changes. When I moved the domain from its temporary server at test.tempwebhost.com to the live domain at www.example.com, the site stopped working (for me).

Before moving the domain, I had set up the new host and checked that its nameservers were resolving correctly using the command nslookup mydomain.com newnameserver.com. I had also changed the configuration in WordPress (under Settings / General / WordPress Address and Site Address) before moving the setup to point to the new domain, so that was not the problem.

My prime suspect was DNS, so I checked that the URL was resolving properly using the shorter nslookup mydomain.com. It was, so my problem was not the TTL or caching by my ISP’s DNS Servers. I tried starting and stoppng the “DNS Client” service in Windows, which normally sorts out DNS issues. I also tried shutting down and rebooting my laptop. Still no joy.

Using BrowserShots, I was able to verify that the site was loading properly for other people. The problem was obviously on my laptop, but what?

It turns out that despite the fact that I had rebooted, stopped and restarted the DNS client and forced a lookup for the domain on the correct nameserver, Windows was resolutely refusing to clear its cache. Cursed OS.

The solution was to force Windows to clear its DNS cache, after which everything worked flawlessly. To do this, type ipconfig /dnsflush at the command prompt.

Desktop Publishing

I have been asked to layout a newsletter for the local civic society as the usual person was too busy. Although I have an uninstalled copy of Microsoft Publisher somewhere, I had never used it before and wanted to find an open source alternative. Enter Scribus and GhostScript. In order to get this to work on Windows 2000, I also needed to download the GDI+ SDK.

Getting started was fairly simple, but in order to run the tutorials at docs.scribus.net I needed to download various ICC profiles and fonts

Simply extract the contents of the two ICC files into the /libs/profiles subdirectory of Scribus and extract the .ttf files from the Luxi fonts into your Fonts folder (Start>Settings>Control Panel>Fonts)

Putty Configuration

  • Download PuTTY from the official website. As a minimum you only need PuTTY.exe, but the zip file and installer also include the following utilities which you may find useful:
    • PSFTP (a Secure FTP client for transferring files between your web server and PC)
    • Pageant (an SSH authentication agent for PuTTY, PSCP and Plink which will let you log in automatically)
    • PuTTYgen (an utility to generate RSA and DSA key pairs – needed by Pageant).

    LEGAL WARNING: Use of PuTTY, PSCP, PSFTP and Plink is illegal in countries where encryption is outlawed. PuTTYtel (a Telnet-only client) is available as a separate download and does not include the SSH encryption.

  • Run putty.exe
  • Select Connection – SSH in the Category Panel. Make sure that AES (SSH-2 only) is the top selection
  • Select Window in the Category Panel. Set Columns to 135. Change scrollback to 2000.
  • Select Window – Behaviour in the Category Panel. Set System menu appears on ALT alone.
  • If you want to enable automatic login, run PuTTYGen
    • Generate a key pair
    • Edit the Key comment and Passphrase. You will need the passphrase later
    • Save the private key somewhere safe
    • Save the public key in /.ssh/authorized_keys on your webhost
      • Grant write permission to the directory chmod 777 /.ssh
      • Grant write permission to the file chmod 777 /.ssh/authorized_keys
      • Save the public key at the end of the file pico /.ssh/authorized_keys
      • Restore Read Only access to the file chmod 444 /.ssh/authorized_keys
      • Restore Read Only access to the directory chmod 555 /.ssh
    • Select Connection – Data in the Category Panel and enter your login under Auto login userb=name
    • Select Connection – SSH – Auth in the Category Panel and enter the path to your Private key. Set Allow agent forwarding.
  • Select Session in the Category Panel. Enter your domain under Hostname. Enter a Session name under Saved Sessions and Save the session
  • Click Open. If you followed the steps for automatic login, you will have to enter the passphrase. If you do not want to do this every time, run Pageant and add your key.