Перенесення ubuntu на інший hdd, vr-online - безкоштовний електронний журнал для всіх

Для перенесення Ubuntu на цей HDD насамперед його потрібно розбити. Можна по-старому за допомогою fdisk, але мені більше до душі псевдографічний cfdisk. Якщо не встановлено, то інсталюємо

apt-get install cfdisk
Запускаємо з параметром ім'я диска

cfdisk / dev / sdi
Якщо диск вже був розбитий до цього і cfdisk лається на неправильну розмітку, допомагає простий прийом. Затираємо таблицю розділів за допомогою стандартної утиліти dd

dd if = / dev / zero of = / dev / sdi count = 1024
Розбиваємо новий HDD в cfdisk приблизно як і старий. Розділи можна зробити і трохи менше, головне щоб все файло вмістилося. У мене вийшла така картина

- / Dev / sdi1 - / boot. Розмір 64мб
- / Dev / sdi2 - swap розмір 1Гб
- / Dev / sdi3 - корінь / розмірів 2гб
- / Dev / sdi5 - / var 5Гб
- / Dev / sdi6 - / usr все інше.

Створимо файлові системи на нових розділах.

mkfs.ext2 / dev / sdi1
mkfs.ext4 / dev / sdi3
mkfs.ext4 / dev / sdi5
mkfs.ext4 / dev / sdi6
mkswap / dev / sdi2
Для розділу / boot зробив нежурналіруемую ext2, тому що звідти буде завантажуватися тільки ядро ​​і образ initrd. Його взагалі можна монтувати в read-only і змінювати тільки, коли збирати заново ядро.

Наступні етап перенесення Ubuntu на інший HDD - монтуємо новоспечені розділи в тимчасові папки. У моєму випадку і просто змонтував в / mnt. Попередньо створюємо там папки

mkdir / mnt / root
І монтуємо все це справа в відповідні директорії

mount / dev / sdi2 / mnt / root
mkdir / mnt / root / boot
mkdir / mnt / root / var
mkdir / mnt / root / usr
mount / dev / sdi1 / mnt / root / boot
mount / dev / sdi5 / mnt / root / var
mount / dev / sdi6 / mnt / root / usr
Все примонтировать, тепер переносимо всі файли з робочої системи в ці папки. Це бажано робити в single-user mode, щоб працюючі програми в процесі нічого нового не записали. Копіювати бажано з параметрами -ax зі збереженням всіх прав і симлінк.

cp -ax / boot / mnt / root / boot
cp -ax / / mnt / root
cp -ax / var / mnt / root / var
cp -ax / usr / mnt / root / usr
Як тільки скопіювати переходимо до следущему кроку перенесення Ubuntu на новий HDD. chroot в новоспечену систему для установки завантажувача і GRUB2 і редагування fstab

grub-mkdevicemap
Ця команда створить файл /boot/grub/device.map
cat /boot/grub/device.map
(Hd0) / dev / disk / by-id / ata-Hitachi_HDS721010CLA332_JP2911HQ236EUA
(Hd1) / dev / disk / by-id / ata-SAMSUNG_HD753LJ_S13UJ1CQ307386
(Hd2) / dev / disk / by-id / ata-WDC_WD5001ABYS-01YNA0_WD-WCAS85181468
(Hd3) / dev / disk / by-id / ata-WDC_WD20EARS-00MVWB0_WD-WMAZA1927574
(Hd4) / dev / disk / by-id / ata-WDC_WD10EARS-00Y5B1_WD-WCAV55974202
(Hd5) / dev / disk / by-id / ata-ST3750330AS_5QK0PC2S
(Hd6) / dev / disk / by-id / ata-ST3320620A_5QF34GWE
(Hd7) / dev / disk / by-id / ata-ST3320620A_9QF62CCB
(Hd8) / dev / disk / by-id / ata-ST3750330AS_5QK0PFBY
У мене дисків багато, тому і записів стільки.
На наступному кроці у мене був невеликий затикаючи. GRUB падав в Segmentation Fault. Якщо у Вас буде також, просто оновіть його до останньої версії з репозиторіїв.

grub-mkconfig> /boot/grub/grub.cfg
І інсталюємо завантажувач

grub-install / dev / sdi
Параметр вказуємо сам новий HDD, на який і робили перенесення Ubuntu. Чи не розділ, а сам диск.
Після даних маніпуляцій можна відключати старий битий HDD і ставити завантаження в биосе материнської плати з нового HDD. Все повинно стартанути без питань.

Нещодавно переносити не Ubuntu, а Gentoo. Але яка фіг різниця. Просто підіткнув другий диск, до речі він був в два рази за обсягом більше і потім завантажився з завантажувального диска з Acronis Disk Director. Далі операція "Клонувати диск". Вказуєш куди хочеш склоніровать. Далі акроніс запитує зробити розділи за обсягом такі ж як на оригінальному диску або збільшити розділи пропорційно (другий диск за обсягом більше ж). Зробив як на оригіналі. Запустив. Почекав трохи і диск був готовий! Далі доступне вільний простір розподілив між двома потрібними розділами і вуаля! Система вантажиться без проблем.

До речі кажучи, нагадало як я Gentoo "для загального розвитку" ставив на VirtualBox