Как перенести Debian вместе с Win10 на SDD

Автор lexone, 19 июня 2018, 13:34:21

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

lexone

Приветствую, уважаемые форумчане.
Ситуация следующая:
Есть ноутбук HP Omen ax232ur с 1Тб HDD.
1) На него была установлена Windows10, которая создала 4 раздела:
   1. recovery(ntfs)
   2. uefi_boot(fat32)
   3. windows(ntfs)
   4. какой-то системный 128мб.
Соответственно все разделы основные, тк. таблица разделов gpt.
Система запустилась, работает хорошо.
2) Далее была произведена установка Debian 9 в режиме UEFI. Создано три дополнительных раздела:
   1. /
   2. /home
   3. /swap
Загрузчик Grub установился автоматически, определил Debian и Windows. Приоритет загрузки стоит UEFI с HDD.
Все отлично работает, можно выбрать загрузочную запись.

Был приобретен SDD 240гб с разъемом M.2.
Встала задача перенести обе системы на новый диск.
3) Windows 10 был успешно перенесен с помощью программы AOMEI Partition Assistant (перенос ОС на SDD) с предварительной разметкой SDD.
Система отлично загружается и работает если выбирать в настройках загрузки старт UEFI с SDD.
4) Дальше я вошел в небольшой ступор. Не могу до конца понять, как правильно перенести Linux вместе с загрузчиком. Насколько я понимаю, Grub установился на раздел uefi_boot. Чтобы перенести Linux, достаточно разметить дополнительные разделы для /home и / на sdd ну и swap перенести. С помощью livecd скопировать все данные из старых разделов в новые.
5) Вопрос! Как правильно скопировать разделы? Можно ли это сделать при помощи программы Gparted? Если да, то нужно ли потом менять UUID новых разделов? Как перенести загрузчик? Где прописать новые UUID разделов, чтобы стартовала система с sdd а не с hdd? Пожалуйста, помогите разобраться, а то в голове возникла каша...

vovan--vovan

Цитата: lexone от 19 июня 2018, 13:34:21Встала задача перенести обе системы на новый диск.
Зачем такие сложности? Поставьте заново Debian. А если уж перенести... Можно было сразу Acronis-ом весь жесткий диск записать в файл, а затем развернуть его на другом диске.
Не даст поколебаться Он ноге твоей, и не воздремлет хранящий тебя...

lexone

#2
Цитата: vovan--vovan от 19 июня 2018, 13:58:08Зачем такие сложности? Поставьте заново Debian. А если уж перенести... Можно было сразу Acronis-ом весь жесткий диск записать в файл, а затем развернуть его на другом диске.
Можно, конечно, и переустановить Debian. Но на системе работал чуть меньше года, все настроено и отлажено под мои нужды. Все свистелки и перделки на месте. Не хочется все делать заново. Тем более то, что я хочу сделать, на 100% возможно. Нужно просто разобраться в некоторых нюансах... О чем я и прошу помощи. Весь жесткий диск развернуть не получится, разница в объеме слишком велика.

Cообщение объединено 19 июня 2018, 14:04:56

Насколько я начинаю понимать, нужно просто скопировать все данные на новые разделы, и дальше ковырять /etc/fstab. Менять там UUID разделов на новые и занового ставить Grub chroot'ом с сдд.... Буду эксперементировать.

Modigar

список пакетов забэкапить и папку хоум
потом на новую систему это за 3 минуты накатывается и от старой не отличишь
это кстати ещё и быстрей переноса будет

lexone

Итак, как я добился своей цели:
1. Сделал UEFI liveusb с puppy linux на борту
    a. Для этого скачал xenialpup64 вот отсюда: http://puppylinux.com/index.html#download
    b. Вставил флешку, удалил на ней все разделы, создал новую таблицу разделов gpt; создал новый раздел fat32
    c. Смонтировал образ xenialpup.iso и скопировал все данные с него на флешку
    d. Еще странно, но в образе был еще один образ, в котором лежал EFI загрузчик, пришлось смонтировать еще и его, и скопировать папку EFI в корневой раздел флешки рядом с данными с
        образа xenialpup.iso
2. Далее успешно загрузился в Puppylinux
3. С его помощью программой Gparted нашел /, home старой системы, и подготовленные для них новые разделы на SDD
4. Примонтировал их в /mnt/root-hdd, /mnt/home-hdd, /mnt/root-sdd, /mnt/home-sdd
5. Командой rsync с параметрами -avx скопировал данные соответственно. Ключ -x у рсинка значит не переходить границы файловой системы, так что он не полезет в дебри /dev /proc и тд.
6. После успешного копирования осталось поправить uuid разделов диска в файле /etc/fstab и /boot/grub/grub.cfg на новые. Их можно посмотреть в том же Gparted.
7. Далее надо записать загрузчик и обновить grub-config, для этого пробрасываем системные директории в новый диск (только тут есть трудности, связанные с UEFI):
    a. # mount /dev/sdXXX /mnt
        sdX = sdd диск | sdXX = efi раздел, созданный после переноса Win10 | sdXXX = раздел
         / на sdd
    b. # mount /dev/sdXX /mnt/boot/efi
    c. # for i in /dev /dev/pts /proc /sys /run; do mount -B $i /mnt$i; done
    d. # chroot /mnt
    e. # grub-install /dev/sdX
        # update-grub 
8. Далее ребут, грузимся с SDD. Все отлично, grub запустился. Выбираю Debian, и тут меня постигла небольшая проблема. Система долго висела с мигающией нижней чертой, потом выдала ошибку: gave up waiting for suspend/resume device. Оказалось после форматирования HDD, Linux потерял SWAP. Мало поправить UUID в /etc/fstab, еще нужно изменить UUID в файле /etc/initramfs-tools/conf.d/resume. Указать UUID нового SWAP раздела.
9. Была еще маленькая проблемка, после первой загрузки с SDD grub нашел только Debian, Win10 там не было. Но после запуска Linux, я сделал update-grub и Win10 подтянулась.
10. JOBSDONE. Полет нормальный.

vovan--vovan

Проделанная работа достойна аплодисментов.
Не даст поколебаться Он ноге твоей, и не воздремлет хранящий тебя...

mexx

Сделал образ «старого» диска с помощью Clonezilla.
Поменял диск на «новый».
Восстановил из образа в режиме эксперта с опциями [-icds] "пропустить проверку размера целевого диска перед созданием таблицы разделов" + "использовать таблицу разделов из образа".
Всё.
Debian 10 KDE
Debian 11 Gnome

lexone


mexx

Цитата: lexone от 28 июня 2018, 13:22:52Ключевое слово поменял
Может быть я неверно понял условия задачи:
Цитата: lexone от 19 июня 2018, 13:34:21Встала задача перенести обе системы на новый диск
То есть один диск заменен другим? Это и есть моё "поменял".
Или речь о том, что "новый" диск добавлен?
Debian 10 KDE
Debian 11 Gnome

lexone

Цитата: mexx от 28 июня 2018, 13:35:19То есть один диск заменен другим? Это и есть моё "поменял".
Или речь о том, что "новый" диск добавлен?
Да, диск добавлен исключительно под системные цели