У меня для этого написан скрипт, он клонирует работающую систему "на лету" на другой подключенный физический диск или в файл виртуального образа (vdi, vmdk, qcow2). Есть опции скрипта позволяющие зашифровать весь диск клона. Это нужно когда клонирую систему на ноут например и есть вероятность потерять ноутбук. Или запускаю склонированную систему на чужих серверах виртуализации.
В скрипте задействованы следуюшие утилиты:
1. parted для разбивки диска для клона
2. cryptsetup для шифрования
3. lvm - упрощает жизнь
4. rsync для копирования файлов
5. chroot чтобы сделать на склонированнрй системе пункты 6 и 7
6. grub-install, update-grub
7. update-initramfs