Как скопировать операционную систему с одного hdd на другой?
В принципе все просто: 
1) подключаем диск
2) разбиваем его по аналогии с имеющимся (parted)
3) форматируем партиции (XXX.mkfs)
4) копируем каждую партицию отдельно (cp -a /from /to)
5) устанавливаем загрузчик
6) правим /to/etc/fstab и скрипты загрузчика

Но! Хорошо бы знать:
 - какие партиции и тип таблицы разделов
 - какие файловые системы
 - какой загрузчик
 - нет ли всяких ZFS/LVM/RAID  и прочего..
И здесь по каждому пункту свои варианты...

Да, можно попробовать использовать https://clonezilla.org/
После копирования через dd обычно необходимо обновить initramfs.
Если появилась консоль dracut:/$_ то обновляем данные.
dracut --regenerate-all -f
Это для RHEL-подобных. Для других немного иначе.