Today I picked up a replacement hard drive for my laptop. The previous SSD Drive from Intel has been an absolute trooper, but it just doesn’t have the disk space I need for the work that I do. I didn’t want to reinstall Windows again because it’s just a hassle. I decided to try and get creative and try my hand with some pseudo-*NIX command sets.
For the procedure I used, I only needed two things: 1) an external USB chassis that can accept 2.5” SATA drives (I already had this) and 2) a USB-bootable Linux Distribution. I chose RIPLinux for my distribution because it’s thin and safe and I’ve worked with it in the past.
- Create a USB bootable copy of your chosen Linux distribution.
- Remove your hard drive and place in the USB chassis.
- Install new Hard Drive.
- Boot Linux Distribution.
- Perform a bit-by-bit copy of one disk to the other.
- Boot Windows.
- Expand Partition.
Create a USB Bootable copy of your chosen Linux distribution
There are many ways to do this, but I was lazy and took the easy way out. I had a USB key which was 1 GB (large enough for the distribution), downloaded a copy of the full CD of RIPLinux (you can get that distribution here), and download a copy of the Universal USB Installer (you can get that here).
After the ISO is downloaded, run the Universal USB Installer and select the RIPLinux Distro as your distribution and point it to the USB Key in question. You should make note that this will destroy the contents on the USB key. If that’s ok, just complete this in “spouse-mode” (Next, Next, Next, Finish).
Remove your hard drive and place in the USB chassis
This is the part where I just cannot help you. If you don’t know how to remove the hard drive from your computer/laptop, then you’ll need to consult your owner’s manual. For me, it’s just a few screws and it’s free.
Install new Hard Drive
Again, I can’t really help here because it’s pretty much the reverse of what you just did in the previous step.
Boot Linux Distribution
Plug in your USB key (I kept the external USB chassis off while I booted) and select whatever your BIOS states to boot from a USB hard drive. The exact name that is used varies dramatically according to BIOS manufacturers.
Perform a bit-by-bit copy of one disk to the other
This part is surprisingly easy once you have the information you need. In RIPLinux, follow the system startup prompts and then right-click on a blank spot on the desktop. Select System Monitor >> LSscsi – List SCSI Devices. You should see several entries in the screen. Mine looked like this:
|[3:0:0:0]||cd/dvd||Optiarc||DVD RW AD-7561S||AH03||/dev/sr0|
|[10:0:0:0]||disk||USB DISK 2.0||PMAP||/dev/sdb|
So, what is all this mess? Honestly, don’t worry about it. The important parts are in columns 4 – 6. I knew that my source hard drive was an Intel, so that is /dev/sdd. I knew that my destination hard drive was a Seagate, so that is /dev/sda.
In RIPLinux, right-click on a space on the desktop and select XTerm. This will bring up a command line interface. If you aren’t comfortable working with a basic CLI, then you need to stop reading now and research on that before going forward.
In the xterm window, I typed:
dd if=/dev/sdd of=/dev/sda bs=26214400
This says: copy a file (or in this case a drive) who’s input is /dev/sdd (old drive) and who’s output is /dev/sda (new drive) and copy it in chunks of 26214400 bytes (25 Mb). Why did I choose 25 MB? Because I knew that my external chassis can easily handle that as a transfer speed per second.
Hit enter and wait. This will take a very long amount of time depending on drive sizes and you will not have any display to tell you that it’s progressing. Just be patient and wait until you are returned to a command prompt. It will eventually return the number of records in , the number of records out, and the bytes copied.
As of this moment, the internal hard drive in your computer should now be an exact copy (bit-for-bit) of the one in the external chassis.
In RIPLinux, type exit and press Enter in the command line interface. When presented with a blank screen, right-click and select Logout >> Halt/Poweroff system.
Wait for it to shut-down cleanly.
Remove the USB key and the external chassis.
Power on your computer. You should get a Windows boot screen.
After you log in, you may be prompted with a note that Windows needs to restart to apply changes to your computer. This is fine and click on Restart Now.
After your next reboot, you should be in Windows without any additional need for applying changes. If you are prompted again (this is a possibility depending on the drivers and hardware), continue to restart to apply changes until you are no longer prompted. I’ve personally never seen this go past three reboots.
Click on Start and then click on Computer. Your C Drive should be exactly the same size as it was before. This is expected – do not freak.
Click on Start and then right-click on Computer and select Manage. You may get prompted to Administrative access. If so, then enter your admin password or click on Yes to continue.
After the Computer Management MMC loads, click on Disk Management under Storage. You should see your drive now showing something like this:
Right-click on the C: Drive partition (Healthy) and select Extend Volume. Next, next finish through this and you should now see your hard drive listed like this:
Close and re-open the Computer from the Start Menu and you should now see that you have plenty more space!