Загружаешь систему каким-либо образом (с дискетки, установочного CD), указав ей в параметрах ядра при загрузке:
linux root=/dev/hdaX initrd=
Вместо linux подставить нужное имя образа, вместо X - думаю сам знаешь что :) Кстати, возможно, это можно будет сделать даже без дискетки, а прям с твоего винта, если загрузчик знает где ядро.
А когда загрузишься - то переконфигурируй загрузчик и установи его. Для lilo, например, тебе надо исправить в /etc/lilo.conf значения /dev/hdX на /dev/hda
Вот и всё.
Если я все правильно понял из малопонятного рассказа, то переставить винт на первый контроллер, загрузиться с компакта (указав root и ядро с винта), поправить в lilo.conf винт на hda, /sbin/lilo, reboot.