As a young network technician I seem to run into a lot of servers with a C and D drive separated on a single RAID. We are constantly running into low disk space problems because the, now old guys, never thought Windows Server 2003 would use more than 20GB…
Well a few weeks ago I was handed a project to resize the server drives. Easy enough. Pop in Gparted shrink the D drive 10GB and expand the C. No problem, I’ve done it many time before. This time was different… After rebooting the server I was presented a black screen. “A disk read error occurred | press ctrl+alt+del to continue”. Pretty quickly I started to panic. Booting back into Gparted showed two drives separated properly with the correct usage information. Alright good. I started to calm down a little bit and threw in a Server 2003 disk with the IBM RAID drivers slipped streamed. After a lengthy Chkdsk /R rebooting presented the same message. Back to the recovery console. Fixmbr and Fixboot still no change.
It’s starting to get late. I was planning on being gone hours before this point. Deciding what to do next with a couple of my co-workers Skyping with me. I boot back into Gparted and run the built in repair tool. After rebooting the server told me the, “Operating system could not be found”. Finally some good news. I jump back into the recovery console and attempt Fixboot and Fixmbr but still get nowhere. We find a promising forum post about Gparted overlapping partitions and deleting the D drive would allow the server to boot. I really didn’t want to have to do this so I spaced the drives out and let the data move run over night, finally leaving at 11:30PM after starting my day at 8:00AM.
On my way home I started thinking what can I do now… if the partition move doesn’t work I need another plan tomorrow which by the way is Saturday and typically my day off. I decided I wanted a great backup.
The next morning I booted up Coldclone and start the process. 12% into it I realize my drive was plugged into a USB 1.0 port and this was going to take all day. I stopped it and started transferring the image to my laptop over the network. Thankfully this server wasn’t very big. Hours later still I pull up the VMDK file in VMplayer and it starts booting. Windows politely asks to Chkdsk D and I let it get started. Very promising, yesterday the Recovery Console wouldn’t even let me attempt to Chkdsk D. As that’s going I boot back into Gparted and load up Testdisk which I just read about the night before. After a long partition scan it finds some interesting things. It shows three records for the C drive, two for the D drive, and one for the blank space I made between the two. I set the correct entry for the C drive as primary boot and the D drive that doesn’t overlap as primary. After writing the partition table I rebooted the server one more time.
I’ve never been so happy! The physical server started booting and running a Chkdsk on D. I now had two great options for recovery. The server took a while but finally came up and was running great. Both drives showed no errors.
So the moral of the story. Testdisk is awesome, always have good backups, and stop splitting RAIDs up in such a dumb way. Oh, I also work with a great group of guys.