Yes, it's possible to "mirror" the HD to a new disk, and there's a number of ways to do it. As far as "the best way" to do it - well, that's subject to ones environment, your level of experience, etc.
If you are looking for tools that can help, look at the GParted Live disk. Then there's Ghost 4 Linux, etc.
If your data isn't being actively accessed, you can also simply copy (cp -pr ..., rsync, etc) the data from the failing HD to the new HD, you just have to omit things like {dev, lost+found, sys, proc, ...} depending on your distro and the like. Once the copy has completed, you have to re-run Grub (or lilo) and add it back to your master boot record et al. Obviously there's a bit more to the manual route... but it's not as bad as one might think.
In our environment, I've even created a live cd that pulls down archived data from TSM (Tivoli Storage Manager) that can be used to effectively do "bare metal restores".
You really have a number of options. It ultimately boils down to your level of comfort and the function of the box in question. Have a peek at GParted live, for certain. It has a number of features that make these kinds of things cake; like copying and pasting partitions ;).