Pour info cp -a = cp -dpR, et c'est ce qu'il faut utiliser pour copier un GNU/Linux d'un disque à un autre. C'est ce que j'ai fait pour mon disque actuel qui contient un GNU/Linux installé sur un ancien disque.
Il faut copier /bin, /boot, /dev, /etc, /home, /lib, /opt, /root, /sbin, /usr et /var, créer /mnt si nécessaire, /tmp (éventuellement, on peut le recopier, mais bon, c'est vraiment pas obligatoire), /proc, puis il faut penser à vérifier le fstab pour voir si il est bon (au cas où tu as changé la localisation de certaines partitions), et pour le lilo, il faut chrooter le disque avant de le faire (voir option -r de lilo, il me semble).
Et il n'y a pas de raison que ça ne fonctionne pas.