Seems to me hda2 and hda1 refer to different partions on the same hard drive. I'll assume you want to copy everything from one partition to another. There is more than one way to make a copy, but I believe this will work without too much of a hassle. Note: I've also assumed that you only have /dev/hda2 mounted as your root filesystem. If you have other filesystems, with the exception of /dev/hda2 and /dev/hda1, mounted you'll need to unmount them before executing step 6.
1. Login as root.
2. Create the /new directory mkdir /new
3. Temporarily mount hda1 at /new mount /dev/hda1 /new
4. Turn on extglob with the command shopt -s extglob
This enables several extended pattern matching operators, specifically we need to use !(new).
5. Change to the root directory cd /
6. Copy everything to /new cp -a .[^.]* !(new) /new
The -a switch is important. It will preserve file attributes, copy recursively, and copy links. The .[^.]* copies your hidden or dot files and the !(new) copies everything except the new directory.
7. For this to become your new partition you'll need to make some changes to /new/etc/fstab. In fstab change /dev/hda2 to /dev/hda1.
8. Lastly some changes to GRUB are necessary. There are a couple safety precautions I would take here just in case things don't turn out as expected. Be sure to have a bootable floppy that can get back in the current usable system. Next make two boot entries in grub.conf. Make these changes in both /boot/grub/grub.conf and /new/boot/grub/grub.conf. On the first entry change (hd0,1) to (hd0,0) and /dev/hda2 to /dev/hda1. For example...
Title Linux 1st Partition
kernel /boot/vmlinuz-2.4.20-28.7 ro root=/dev/hda1
Title Linux 2nd Partition
kernel /boot/vmlinuz-2.4.20-28.7 ro root=/dev/hda2
Okay, at this point I believe we can reboot and get the first partition working. However, I think GRUB may still be looking at /boot/grub/grub.conf on /dev/hda2 for boot entries. If someone knows otherwise, please reply. To free up all references to /dev/hda2 I would run grub-install
while booted on /dev/hda1. The GRUB manual at http://www.gnu.org/software/grub/manual/grub.html
has great instructions for using this program under the Installation section.
Let us know how it turns out. I think I covered everything, but as long as you follow the directions you'll still be able to get back to your current setup.