Thursday, September 25, 2008

An (Enforced) DRP Exercise on our Archive server (or How to Resize Partitions with Ghost's Help)

Musings on What I'd do about my Partition Problem
Yesterday afternoon, I spent a bit of time backing up my work PC so that I could try a few tricks to get the System partition larger. I keep all my data and apps on a different partition but nevertheless, they still like to dump files in the Windows directory on the sysetm partition. In addition, there's the fact that Windows Update keeps wanting to increase it's stranglehold on my C: Drive.

I didn't want to do a reformat and reinstall because I would have to reinstall all of my apps too. I also didn't want to do an entire system image because that saves things in a proprietry format. I wanted to be able to get to my files on DVD if and when I wanted to.

My Partition Troubles
When I first installed Windows XP I figured that 10GB would be sufficient space - especially since I upgraded from Windows NT which had problems recognising system partitions over 10GB. How wrong was I? For the last few weeks, I've been engaged in a morning hard drive cleanup, removing the help files, old updates etc, from my C: Drive but within a week, Windows update has done it's work and I start to run out of space again. What's that... turn off Windows update.. well, I suppose I could - but that would be cheating.

In any case, I had a plan for this morning. I was going to ghost my C: partition to a server then delete the partitions and create a new, and bigger C: It would fix all my problems at once.

So... I guess that everyone working in IT has those days where you wonder if you should have gotten out of bed. For me, today was one of them.

I kicked off the Ghost (version 2003) but figured that it was running a bit slowly. I decided to have a look at the server I was sending the image to. Immediately after logging on, I knew I was in trouble. The server had rebooted unexpectedly.

At first I thought it was Windows Update. After all, even when it's turned off, Microsoft seem to have a way to override it and download the occasional "really critical" patch. They also seem to think nothing of rebooting your production server. I guess they're a bit confused about ownership of the hardware.

Anyway, I noticed there was a "critical error" so I sent the data to Microsoft. Believe it or not, sometimes it returns useful information. In this case, Microsoft said (approximately), that the Hard Drive had a glitch but that it was "probably nothing to worry about".

Not trusting the Error Message, I decided to check things out in Event Viewer.

I noticed that there were a couple of warnings about impending drive failure shortly before the actual Failure. I was faced with a dying drive.

A Relaxing bit of DRP
Now this server was an "ARCHIVE" server, meaning that the data on it didn't change. It just held old data and installation files, clip art, that sort of thing. It was excluded from our backup schedule but I had a copy of the data on portable hard drive (and several copies on stacks of DVDs). Essentially, I could have rebuilt the server from scratch then restored the data, but I was feeling particularly lazy... and I wanted to test a different type of server DRP. Also, it ended up being the same solution I was about to apply to my own PC. (very coincidental).

Since the server was still functioning, and I already had a full copy of everything that was on drive D:, I only had to worry about C: Drive. Now, on the server, there's not much there, Just Windows Server 2003 and various service packs etc. My own PC, with it's hundreds of applications with DLL files everywhere is a different story altogether. I decided to try and get a ghost image of the server. If nothing else, it would save me locating all of those pesky service packs.

The server was still operating, so I checked the brand of the NIC and found an appropriate Boot CD for it. I restarted the Server and booted from the CD. Logged into the network via command line interface and mapped a drive to another server with oodles of space.

Creating the Ghost Image
Then I ran;
Ghost -NTIL -SPLIT=650
  • The NTIL gets around an old NT problem and I do it out of force of habit.. It's probably not needed anymore, but it does no harm either.
  • The Split=650 splits the files at 650 MB. This enables them to fit onto CD if I choose.

I'll probably use DVD but since some versions of Windows have problems with 4GB files (especially if there's a FAT32 partition involved), the 650 limit is a good choice.

In Ghost, I selected Local, Partition, To Image
Gave the file a decent name and selected high compression. I wasn't really pressed for time.

The Ghost image took about 50 minutes to create. I'm not sure why it took so long - probably the compression and the fact that the source hard drive was a bit wonky.

When the image was finished, I turned the PC off and replaced the hard drive. It was IDE because this wasn't a real "server" it was a PC masquerading as one. Being a mere archive server, it didn't need to be terribly powerful.

Creating a New Partition to Ghost onto

The next step was to start the server and create a new partition so that Ghost would have somewhere to write. I knew that my old DOS boot disks wouldn't support partitions larger than 4GB, so I needed something else.

I decided to use the Windows XP Pro Install CD. Sure, it might have been more appropriate to use the Windows Server CD but I wasn't installing anything and an NTFS drive is still and NTFS drive regardless of what software you used to create it. Also, the WinXP CD was closer to the top of the pile.

At the Windows XP Setup now prompt, I pressed Enter, then F8 to agree to the licence.

Next, I was prompted to create a partition to install on (Press C). I chose to make it 20480 (about 20GB). I like my partition sizes in multiples of 1024. Upon pressing Enter, I was prompted to format it. Since I didn't need to, I pressed ESC to go back a screen, then pressed F3 twice to close out of the Windows XP setup.

I then Removed the WinXP CD and reinserted my Network Boot Disk - hurriedly before XP rebooted the system.

Connecting the to network, remapping the drive and starting ghost, this time with only -NTIL, I was able to ghost back the partition - using these steps.

  1. Select Local Partition from Image
  2. Choose Image
  3. Choose Partition in Image file (there will be only one)
  4. Choose Drive
  5. Choose Partition
  6. Proceed with Restore (ignore the data will be overwritten warning).

Ghosting back took only 12 minutes. At the end of the process, I removed the boot disks and restarted.

The server went straight to the Windows 2003 Server logon. (Impressive - I expected this, but it's still nice to see).

From there, it was a quick trip to Disk Manager to create a new Drive D: (and the formatting of that drive which took ages).

Restoring Data Files and Shares

Then I copied all of the files back from the portable hard drive.

Now, since I used a portable hard drive which was formatted as NTFS, the security on the files should have come back automatically. It didn't... Luckily, this was a flat file structure - they're archives, so the entire server is read-only.

And... since share information is stored in the registry.... it should have followed that the share would have automatically worked... It didn't.


All up... an interesting bit of DRP showcasing an alternative method. Because of the issues bring security back and the delay waiting for disks to format, it might not be applicable to servers requiring a speedy recovery but it was sufficient to get our archive server back in half a day.

Repeating the Steps on My PC
So, next up, I'm going to be doing the procedure on my PC... only this time, instead of replacing the hard drive, I'll simply delete the existing partitions using FDISK - or I could do it during WinXP setup.

No comments: