replacing a hard drive
The idea is to totally replace a hard drive with a new one, this means copying all the data from each partition of the old hard drive to a new one. why? :
- Your hard drive is old and/or \"almost\" broken (see smartmontools)
- Your hard drive is full and so you want to replace it with a bigger disk.
- You are bored
- For replicating a system
What you need :
- a computer
- a hard drive - to be replaced
- a \"new\" drive - the replacement
- a Debian install CD (netinst will suffice) or any other liveCD (all we need is to get a shell that\'s not running off the system on the disk drive)
What needs to be done :
- plug the new disk drive on the computer as \"sda\" (or hda), and the old (current) drive as \"sdb\" (or hdb)
- sda - new 320GB
- sdb - old - 80GB
- sdb1 10GB ext3
- sdb2 1GB swap
- sdb3 69GB ext3
in the example we have
Booting off the Debian CD, partitioning et formatting
Boot off the Debian CD and go through the first options, mostly keyboard options. (stop anywhere before using partitioning tool). Then get a terminal by pressing alt - F2. If you have already partitioned the disk than yay for you, otherwise you can do this with fdisk. You must keep in mind that sda1 should be at least as big as sdb1 (or at least have enough space to contain the contents of sdb1), the same goes for sda3. As for the swap partition, in this case sda2, you can do whatever you want of course. On the Debian install CD \"fdisk\" is available, this tutorial does not cover this, for that you can make a request. Different boot and/or live CDs may have other partitioning and/or formatting software. So basically, create your partitions. I use ext3 filesystem, but of course you can do whatever you want, actually you can even use this process if you wanted to just safely change the filesystem (if you do change the filesystem than don\'t forget to update the fstab that you copy to sda1). Here is an example with basic ext3 fs.
mke2fs -j /dev/sda1
mke2fs -j /dev/sda3
Data copying
It\'s possible to simply use cp to copy the data with the option \"-a\" which is the equivalent to \"-dpR\" which means :
- -d same as --no-dereference --preserve=links
- -p same as --preserve=mode,ownership,timestamps
- -R, -r, --recursive
Mount the disks as follows :
cd /mnt
mkdir sda1 sdb1 sda3 sdb3
mount /dev/sda1 /mnt/sda1
mount /dev/sdb1 /mnt/sdb1
mount /dev/sda3 /mnt/sda3
mount /dev/sdb3 /mnt/sdb3
now the super simple part, it can take forever though :
cp -a /mnt/sdb1/* /mnt/sda1/
cp -a /mnt/sdb3/* /mnt/sda3/
Next, initiate the swap partition
mkswap /dev/sda2
And finally, install grub (or lilo) on the MBR
chroot /mnt/sda1
grub-install # or \'lilo\'
halt
Swell, the machine should be off and you can unplug the \"old\" disk drive et maybe even rid the CD-Rom drive of the boot CD.. :] .. voilà, you can now boot onto your same old system with a brand new, bigger, faster, awesomer disk drive.. . .. . if .. if everything went well.. :]
And then.. .
Yes, there is a bit more to do, you should recycle your old equipement of course, but before doing that, you might want to destroy the data before disposing (or selling/giving) your hard drives.. you can check the programs shred and wipe