Как перенести системный раздел на другой диск?

Ссылка скопирована
1 ответ

Дано: в ПК один SSD на 60 ГБ, который разбит следующим образом (картинка - из виртуалки для отработки концепции, не надо цепляться за условные 30 и 60, большое в маленькое не ужимается и т.п., главное, что коревой раздел умещается на маленький диск)

Как перенести системный раздел на другой диск?

Появился второй SSD размером 30 ГБ, на который хочу перенести системный/корневой раздел, загрузчик и т.п., а на большом оставить /home (после переноса корня растяну его на весь диск).

Что сделано:
вариант 1) dd-шечкой начать копировать sda в sdb, как раз нужно скопируется и в Gparted причешу. Но оказалось разметка GPT хранится в начале и конце диска и, соответственно конечная часть не влезла....
Поправить её можно командой gdisk -recovery.
Вроде ОК, но sda1 и sdb1 имеют одинаковый UUID, который (на всякий случай) хотелось бы сменить.
Команда tune2fs -U random '/dev/sdb1' провалилась, потому что

This operation requires a freshly checked filesystem.

Прогоняем команду e2fsck -f /dev/sdb1 - все OK и теперь меняем UUID через Gparted - OK.
Скорректировали файл fstab, чтоб /home грузил с /dev/sda ....
Грузимся с нового и получаем:

Gave up waiting for root device. Common problems:
— Boot args (cat /proc/cmdline)
— Check rootdelay= (did the system wait long enough?)
— Check root= (did the system wait for the right device?)
— Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/aa91b9fe-1e27-44d7-9c1b-72dd7d4e8575 does not exist.
Dropping to a shell!

BusyBox v.1.13.3 (Ubuntu 1:1.13.3-1ubuntu11) built-in shell (ash)
Enter 'help' for list of built-in commands.

(initramfs)

Где-то при загрузке указан/ищется старый UUID (тот, что скопирован с sda1)
н-да...затянулась эпопея.... может есть способ попроще ?

вариант 2) скопировать разметку командой в sgdisk -R тоже не получится ибо старый диск больше первого

вариант 3) dd if=/dev/sda1 of=/dev/sdb1 нужного эффекта не дал.... сомневаюсь, что dd понимает if=/dev/sdb1 ......

Вопрос: как по-простому скопировать/клонировать системный раздел с большого диска на маленький диск ?

Дополнительно:

Если бы речь шла о Винде, то я бы сказал, что копировать/клонировать - плохая идея, клонирование редко кончается положительным результатом, а копирование - вообще никогда. Для переноса Винды на новый носитель есть хорошо проверенная и отлично работающая опция - "Миграция ОС", которая имеется в некоторых продвинутых менеджерах разделов. Она переносит всё, касающееся ОС, не затрагивая ничего постороннего.
Может, эта опция и с Линуксом сумеет справиться? Сам я это не проверял. Проверить несложно, но я не линуксоид, мне не на чем.

Ответы:

- загрузиться с загрузочной флэшки
- определиться как будет грузиться uefi или нет (на скриншоте разметка без uefi) и где будет установлен загрузчик
- разметить соответственно новый диск
- создать корневую файловую
- смонтировать старый корень и новый
- скопировать всё со старого корня в новый командой
cp -ra /root1/* /root2
- подправить в новом корне fstab
- подправить загрузчик (grub-install, grub-mkconfig)

  • это точно проще?
    а варианты типа через partclone.ext4 ?
  • s60, dd, клонирование, fsck, tune2fs - не нужно, всё делается через cp -ra + правка fstab + установка/правка загрузчика

    Вариант рабочий, мною неоднократно использовался

да всё норм, UUID только на там менял.
Надо у старого sda1 поменять, а не у нового sdb1. Поменял у старого и всё норм - грузимся с нового по старому UUID.
Всем спасибо за внимание.....

В варианте 1 чуток не дотянули до финала, нужно было в загрузчике grub в параметре root= UUID новый указать.

  • возможно... но там же какой-то файл-шаблон со всякими --search по которому уже конфиг генерится, за 5 минут не разобрался + в Gparted поменять UUID старому быстрее так и сделал.....

    нужно было в загрузчике grub в параметре root= UUID новый указать.

    тут что ли ?

    if [ x$feature_platform_search_hint = xy ]; then   search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  3a0dfbdb-65f2-42eb-8522-489724999b23 else   search --no-floppy --fs-uuid <b>--set=root 3a0dfbdb-65f2-42eb-8522-489724999b23</b> fi     font="/usr/share/grub/unicode.pf2" fi

    if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1 3a0dfbdb-65f2-42eb-8522-489724999b23 else search --no-floppy --fs-uuid <b>--set=root 3a0dfbdb-65f2-42eb-8522-489724999b23</b> fi font="/usr/share/grub/unicode.pf2" fi

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Павел Админов Ответ

Для переноса системного раздела на другой диск вам понадобится выполнить несколько шагов:

1. Создайте резервную копию всех важных данных на вашем компьютере. Перенос системного раздела может привести к потере данных, поэтому резервная копия обязательна.

2. Подготовьте новый диск, на который вы хотите перенести системный раздел. Убедитесь, что этот диск имеет достаточно свободного места для размещения всех файлов системы.

3. Скачайте и установите программу для клонирования дисков. Например, вы можете использовать Acronis True Image или EaseUS Todo Backup.

4. Запустите программу для клонирования дисков и выберите опцию клонирования системного раздела. Укажите новый диск как целевое место для клонирования.

5. Дождитесь завершения процесса клонирования. Это может занять некоторое время, в зависимости от размера системного раздела и скорости вашего компьютера.

6. После завершения клонирования перезагрузите компьютер и зайдите в BIOS/UEFI. Измените загрузочное устройство на новый диск, на который был перенесен системный раздел.

7. После успешной загрузки с нового диска убедитесь, что все работает корректно. Проверьте, что все ваши данные на месте и что операционная система запускается без проблем.

Теперь вы успешно перенесли системный раздел на другой диск. Не забудьте удалить старый диск или отформатировать его, чтобы освободить место и избежать путаницы при загрузке компьютера.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно