Як перенести (скопіювати) всю свою систему Ubuntu на інший жорсткий диск?


57

Жорсткий диск, на якому я встановив Ubuntu, майже не вийде. Я хотів би не втратити 3 роки варті даних, налаштувань та додатків. Я шукаю спосіб перенести повну систему (включена SWAP, тому що я не впевнений, чи зможу я перев'язати систему на новий розділ SWAP) на інший жорсткий диск. Але не повний жорсткий диск <тільки розділ, що містить Ubuntu, до розділу на іншому жорсткому диску. В основному я хотів би зробити те, що мені вдалося зробити з Norton Ghost для моєї установки Windows. Я думав про використання Clonezilla, але думаю, що у мене виникнуть проблеми з GRUB (Особливо, намагаючись завантажуватися з іншого UUID, ніж те, що є у файлі conf). чи знаєте ви, як це можна було зробити?

PS, мій домашній каталог зашифрований, але це насправді не проблема, тому що я можу обійти це.

EDIT: змінив пояснення, щоб зробити його більш зрозумілим

Відповіді:


30

Я фактично закінчився використанням Gparted з Live CD. Я скопіював розділ і вставив його у нерозподілений простір на інший жорсткий диск. Тоді я використав blkid для перевірки UUID та відредагував файл fstab. Працював як шарм!


5
Якщо ви переміщуєте свій розділ в одній і тій же системі з будь-якої причини (наприклад, потрібно більше місця), вам доведеться змінити UUID нового розділу перед тим, як змінити fstab, оскільки він буде мати той самий UUID, що і вихідний (див. Askubuntu. com / questions / 109938 / change-hdds-uuid )
Грег Краміда

Це причина, тому що я люблю Linux
deFreitas

Якщо ви замінюєте свій старий завантажувальний пристрій новим, вам також потрібно встановити на нього grub. Якщо ви додаєте новий накопичувач або замінюєте накопичувач даних, робити це не потрібно.
Девід К.

9

Ну, я просто використовував usb stick + ubuntu live.

Я передавав ubuntu 13.10 з більшого hdd на менший ssd, і clonezilla "сказав", що це неможливо зробити так, оскільки цільовий розділ менший за вихідний розділ.

Тому я запустив ubuntu live, монтував обидва hdd (новий диск, був розділений раніше, звичайно, не забувайте про swap;)), і просто:

cd /media/ubuntu/old-hdd-uuid/

тоді:

sudo cp -R --preserve=all bin/ boot/ cdrom/ dev/ etc/ home/ lib/ lib32/ lib64/ media/ mnt/ opt/ proc/ root/ run/ sbin/ srv/ sys/ tmp/ usr/ var/ /media/ubuntu/new-hdd-uuid/

вище ви бачите, що це просто копіювання всіх каталогів з одного hdd в інший, рекурсивно із усіма збереженими дозволами та іншими елементами.

cd /media/ubuntu/new-hdd-uuid/

тоді мені довелося зробити два посилання в кореневій директорії нового диска:

sudo ln -s boot/vmlinuz-x.xx.x-xx-generic vmlinuz
sudo ln -s boot/initrd.img-x.xx.x-xx-generic initrd.img

і наступним кроком було встановлення grub, таким чином:

sudo grub-install --boot-directory=boot/ /dev/sdxy

де x - пристрій, y - номер розділу (якщо ви не впевнені, використовуйте cfdisk або fdisk для друку таблиці розділів ...)

і останнім кроком було, змінивши uuid нового hdd на uuid зі старого hdd (це найпростіший спосіб обдурити конфігурацію grub, fstab чи інше без пошуку та виправлення конфігурацій)

sudo tune2fs /dev/sdxy -U OLD-UUID

новий UUID з’явиться після перепланування пристрою. Тому перезавантажте, і якщо все в порядку, ваш ubuntu повинен запуститися ...


4

Ви можете це зробити, використовуючи dd. Для повної інформації перевірте сайт.

Клоніруйте жорсткий диск за допомогою компакт-диска Ubuntu Live

Попередження dd - це дуже потужний інструмент низького рівня, і навіть одного маленького друку достатньо, щоб витерти весь диск. Будьте дуже обережні з його використанням і намагайтеся використовувати інструмент вищого рівня, якщо це можливо.
Зауважте також, що цей метод працює лише в тому випадку, якщо ваш цільовий диск однакового розміру або більше


Клонування жорстких дисків є загальним завданням технічного обслуговування. Не турбуйтеся записувати новий завантажувальний компакт-диск або платити за нове програмне забезпечення - ви можете це легко зробити з Ubuntu Live CD.

Мало того, що ви можете це зробити зі своїм Ubuntu Live CD, ви можете це зробити прямо з коробки - не потрібно додаткове програмне забезпечення! Програма, яку ми будемо використовувати, називається dd, і вона включає в себе майже всі дистрибутиви Linux. dd - це утиліта, яка використовується для копіювання на низькому рівні - замість роботи з файлами, вона працює безпосередньо на необроблених даних на пристрої зберігання даних.

Ви також можете використовувати:

Clonezilla, безкоштовне програмне забезпечення для клонування жорсткого диска. Clonezilla працює з живого компакт-диска та має простий інтерфейс користувача. Звичайно, вам потрібно буде знати про те, що ви робите, але цей інструмент може значно спростити вашу роботу з покроковим розбиттям.

Завантажити Clonezilla можна тут

Попередження Переконайтесь, що ви перевірили обмеження Clonzilla перед початком роботи.

Ви також згадали, що ви використовували Ghost для Windows, і ви також можете використовувати Ghost для Linux .

Джерело: http://www.howtogeek.com/howto/19141/clone-a-hard-drive-using-an-ubuntu-live-cd/

Джерело: http://www.makeuseof.com/tag/2-methods-to-clone-your-linux-hard-drive/


Чи також допускає копіювання розділів лише розділи? Як у sudo dd of = / dev / sdb3 of = / dev / sda2
boywithaxe

За умови, що обидва приводи однакового точного розміру. І команда у вашому випадку dd, якщо = / dev / sd3 of = / dev / sd2
Mitch

Дякуємо, однак розділи знаходяться на двох різних фізичних накопичувачах / dev / sda та / dev / sdb. Чи не використовувати sd3 та sd2 як дескриптори копіюють протягом одного фізичного диска?
boywithaxe

диски не повинні мати однаковий розмір, єдина вимога - привід, на який ви копіюєте інформацію, більший, ніж накопичений диск.
Бруно Перейра

1
ddrescueТут буде кращим варіантом, оскільки жорсткий диск несправний.
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件

4

Деякі роки тому я успішно використовував цей інструмент для "клонування" моїх розділів: G4L . Все працювало з деякими виправленнями після встановлення, такими як зміна розмірів розділів (я клонував розділи на різному розмірі HD) та перевстановлення grub (це досить просто, для перевстановлення його в MBR потрібен лише живий компакт-диск).

Ви можете сміливо ігнорувати свій swap-розділ (ви зможете його відтворити вдруге) або його також клонувати і активувати пізніше, редагуючи вручну /etc/fstabабо з командного рядка.

За останні тижні я знову робив клон з клонезилою, і все пішло нормально з тими ж поправками після клонування. Тож не хвилюйтеся та спробуйте, нічого з оригінального HD не торкнеться!

Редагувати:

Я знайшов стару пошту, де описав перший процес клонування. Я діяв так:

  • Мій новий HD, підключений через USB, точно такий же, як і старий
  • Клонували розділи в сирому режимі за допомогою G4L
  • Завантажився на Live CD і змінив розмір розділів з resize2fs
  • Від'єднав HD від USB та встановив на SATA / PATA.
  • Знову завантажили Live CD і встановили новий диск:

    mkdir disk
    mount /dev/sda1 disk        (where sda1 contains boot and root partitions)
    mount /dev/sda2 disk/boot   (if you have a different boot partition) 
    mount --bind /dev/ disk/dev/
    mount -t proc none disk/proc
    chroot disk /bin/bash
    grub-install /dev/sda       (to install GRUB on sda MBR)
    
  • Перезавантажте, перевірте своп

  • Насолоджуйтесь

3

@boywithaxe - Що стосується ваших коментарів до Мітч відповіді ви дійсно можете просто скопіювати відповідні розділи, роблячи dd if=/dev/sdb3 of=/dev/sda3. Це насправді найпростіша частина. Найскладніша частина полягає в тому, що вам також доведеться змонтувати щойно скопійований розділ, а також пару інших розділів та встановити grub ( grub-install /dev/sda) ( і додати розділ swap перед перезавантаженням (якщо ви клонуєте завантажувальний розділ)). Використовуючи цей метод, немає необхідності resize2fsні в одному.

Я щойно повинен був зробити це сам, і я використав комбінацію ремонту завантаження після оновлення Windows на Ubuntu 14.04 (не-RAID) та відповіді жасмину .

Отже, після завантаження з liveCD:

dd if=/dev/sdb3 of=/dev/sda3

Коли це закінчиться, значить

sudo mount /dev/sda3 /mnt 

де sda3 містить нещодавно скопійовані завантажувальні та кореневі розділи)

sudo mount --bind /dev/ /mnt/dev/

sudo mount -t /proc none /mnt/proc

sudo chroot /mnt

sudo grub-install /dev/sda 

зауважте, це sda не sda3

update-grub

exit
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.