Du kannst das mit Partition Magic ohne weiteres machen. Einfach eine Partition auswählen und kopieren. Dies machst du für alle Partitionen die für die Linux-Installation wichtig sind. Ganz wichtig: Die Bezeichnungen müssen auf der neuen Platte gleich lauten, also wenn auf der alten Platte die Root-Partition in /dev/hda1 untergebracht war, muss dies auch auf der neuen Platte so sein, sonst kriegst du einen Kernel Panic beim Booten.
Anschließend musst du, am besten mit einer Boot-Diskette, das neue Linux auf der neuen Festplatte booten, und als Root den Lilo neu installieren. Dies machst du, indem du "lilo" in der Shell eintippst.
Solltest du keine Boot-Diskette mit installiertem Lilo besitzen, kannst du dir ganz leicht eine erstellen: Linux von der alten Platte booten, als Root die Datei /etc/lilo.conf mit einem Editor bearbeiten, und die Zeile boot=/dev/hda umändern in boot=/dev/fd0
Sollte die Festplatte bei dir nicht die Master am Primären Controller (also /dev/hda) sein lautet die Zeile entsprechend anders.
Anschließend lilo.conf speichern und "lilo" aufrufen, Diskette muss hierbei logischerweise nun eingelegt sein. Ist dies erledigt, lilo.conf wieder rückgängig editieren und die neue Festplatte anstelle der alten anklemmen.