Перенос Ubuntu с HDD на SSD.

Получил я в свое распоряжение ноутбук — ультрабук на работе. На нем предустановленная win8 и конечно же uefi boot.
Мне это все конечно же не понравилось, и решил я установить рядом с win8. Да установил на , а в ноуте оказался на 32 гига. Обидно, надо перенести.

Установил по стандартным мануалам, а именно через unetbootin сделал загрузочную флешку. Далее попал в bios через win8, а именно в win8 надо нажать Перезагрузка с зажатым shift. Далее выбрать Дополнительные параметры и там уже понятно.
В bios выставил legacy совместимую загрузку и отключил secure boot. Все прошло хорошо, и на такой установке я проработал пару месяцев. А в ноуте всего 4гб оперативки, а я активно использую браузер. В итоге замучавшись с тупняком системы решил перенести на SSD.

Поехали.
Сначала обязательно установить .

Теперь через него надо создать разметку для переезда. На SSD я создал раздел ext4, оставил только 4 гб под будущий swap, который на ssd будет вести себя замечательно быстро.
После разметки поставить в gparted флаг boot на новый раздел.
В моем случае старый раздел был /dev/sda8/ ,а новый стал /dev/sdb2/.

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

Ждать завершения, зависит от раздела. Мои 25гб перенеслись за 10-15 минут.
Теперь у нас есть два полностью одинаковых раздела. Одинаковы они своим UUID и меткой. В gparted меняем и то и другое (generate new uuid, сменить метку).

Теперь у меня получилось так

Самое время поменять .

Первая запись со старым uuid, вторая с новым. Сохраняем и перезагружаемся. Но дело в том, что если сейчас загрузиться, то загрузка пройдет со старого раздела.

Виноват в этом КОНЕЧНО ЖЕ.

После загрузки с все еще старого раздела, делаем

или

У меня в результате нашлась вторая убунта на втором разделе

Но даже если сейчас перезагрузиться и выбрать этот новый пункт, загрузка будет со старого раздела, т.к. он все еще root в grub. У меня /boot отделен в отдельный раздел etc2 на 400мб, следовательно я иду туда, и смотрю там конфиг grub.

В моем кофиге видно, что рут определяется со старым uuid и так же в пунктах, добавленных для второй убунты был прописан старый uuid для root.

В пункте к убунте на /dev/sdb2

Для исправления ситуации, для одноразовой загрузки в новый раздел, я сделал следующее в grub.cnf.
Вообще его нельзя править, но тут пришлось.

И во всех пунктах для убунты на втором разделе

Теперь после перезагрузки и выбора в Grub нового пункта с убунтой на /dev/sdb2 я загрузился с SSD. :)
Правда пока я до всего этого додумался я перезагружался раз 5. Поэтому и написан этот мануал.

Теперь через gparted я снес старый раздел. Отключил старый swap, снес его, создал новый swap на 4гб на SSD.
А так же выполнил update-grub, который уже создал конфиг с новым uuid в качестве root.

Готово! SSD рулит. Загрузка 8 секунд, браузер не тупит.

  • Юрий Корсаков

    Спасибо! Как раз озадачен переносом)

  • Den4ik

    Насколько я понял дд копирует полностью раздел, т.е. если мне надо перенести убунту с раздела sdb3 800Gb на раздел sda3 160Gb то ничего не получицца?(

    • можно 800gb разбить на root и home
      / — 160gb
      /home — 640gb

      и перенести только /
      а на sdb останется /home и еще 160gb свободных, на которые можно расширить home

      непростая процедура, но возможно