Для копии 1в1 используется dd.
1) Создаете раздел такого размера или чуть больше как /
2) Создаете в /etc/grub.d/40_custom меню для будущего раздела вида:
menuentry 'Ubuntu Linux резервная' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos3)'
linux /vmlinuz root=/dev/sdNEW nomodeset video=uvesafb:mode_option=1024x768-24,mtrr=3,scroll=ywrap $vt_handoff
initrd /initrd.img
}
menuentry 'Ubuntu Linux резервная (режим восстановления)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos3)'
echo 'Загружается Linux 3.0.0-30-generic …'
linux /vmlinuz root=/dev/sdNEW ro recovery nomodeset
echo 'Загружается начальный виртуальный диск …'
initrd /initrd.img
}
Меняем sdNEW на имя нового раздела.
Не забыв заменить (hd0,msdos3) - 3й раздел на 1м винте, sda3, на тот, который будет у Вас. Например если у вас sdNEW получился sdb2 - 2й раздел на 2м винте, то получится (hd1,msdos2).
Сделать это надо 2 раза, т.к. пунктов меню 2.
3) Делаем sudo update-grub. Груб добавит новые пункты меню. Загружаться с них пока не надо.
4) Загружаетесь c live-cd или флэшки с линуксом (slax, puppy, и т.п).
Смотрите под какой "буквой" ваш бывший корневой раздел и новый чистый. Для этого в него можно просто зайти. У puppy они все внизу списком расположены.
Потом из консоли
5.1)
dd if=/dev/sdOLD of=/dev/sdNEW bs=4096
Делаем новому разделу уникальный uuid (обязательно!)
tune2fs -U random /dev/sdNEW
или
5.2) Просто копируем всё со старого на новый раздел (сильно дольше, т.к. файлы мелкие и их много).
-------------
Вот и всё! Slax можно взять на slax.org. Puppy соответственно на
http://puppyrus.org/Либо загружаться c самого установочного диска ubuntu. Но он обычно медленный, да и царапать лишний раз не хочется ;-)