I'm going to assume you either have extra space on your current hard drive, or that you are adding a new hard drive. I'll be referring to the new partition as /dev/hdb1, but you'll need to use the drive and partition number that corresponds to the partition you create.
There are multiple ways to do this, but here is what I've done before.
1. create a new partition on the empty space of your hard drive.
2. mount your new partition.
Code:
mount /dev/hdb1 /mnt/new
3. backup the /home directory
Code:
tar cvjfp home.tar.bz2 /home/*
3. move the tarball to /mnt/new
Code:
mv ./home.tar.bz2 /mnt/new
4. umount /mnt/new and remount as /home.
Code:
umount /mnt/new && mount /dev/hdb1 /home
5. unpack your tarball.
Code:
cd /home && tar xvjpf ./home.tar.bz2 /home
6. Edit your /etc/fstab to reflect to new mount point.
This should take care of it.