Как переместить Ubuntu на SSD


45

Моя текущая ситуация:

  • Один жесткий диск
  • Двойная загрузка Ubuntu 11.04 и Windows 7. Разделы:
    • 100MB Windows System штуковина
    • Главное окно 144 ГБ
    • 160GB Ubuntu
    • Своп 4Гб
    • 12GB Восстановление системы

Теперь я хочу установить твердотельный накопитель на 80 ГБ и перенести на него Ubuntu. AFAIK мне нужно:

  • Сократите раздел Ubuntu 160 ГБ до 80 ГБ
  • Скопируйте его на SSD
  • Изменить fstabдля монтирования SSD как/

Как мне сделать второй? И что мне нужно делать с Grub?


[Оффтоп, извините, следовало бы добавить комментарий] Также лучше одновременно включить поддержку TRIM для вашего SSD, как упомянуто на webupd8.org/2013/01/enable-trim-on-ssd-solid-state-drives. .html
user2074854

Ответы:


56

1) Копирование файлов

Вы хотите скопировать ФАЙЛЫ, а не весь раздел (включая его свободное место), поэтому вам не нужно сначала изменять размер раздела. Загрузитесь с livecd и смонтируйте HD и SSD (разумеется, после форматирования раздела на SSD), затем скопируйте все файлы:

sudo cp -Tax /media/hd /media/ssd

Конечно, используйте правильные имена для точек монтирования hd и ssd. Затем вам просто нужно отредактировать / etc / fstab на ssd, чтобы он указывал на новый UUID для fs (вы можете посмотреть его blkid). Наконец, вам нужно установить grub на ssd.

2) Работа с GRUB

а) Командная строка:

sudo -s
for f in sys dev proc ; do mount --bind /$f /media/ssd/$f ; done
chroot /media/ssd
grub-install /dev/ssd
update-grub

Конечно, используйте правильное устройство для / dev / ssd. Весь диск, а не номер раздела.

б) Волшебная кнопка «Рекомендуемый ремонт» в Boot-Repair:

https://help.ubuntu.com/community/Boot-Repair

sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair

введите описание изображения здесь

Наконец перезагрузитесь и убедитесь, что ваш BIOS настроен на загрузку с SSD.


8
Я отправляю этот комментарий от моей системы, отлично работающей на SSD. Спасибо
Барт ван Хеукелом

1
Просто то, что я обнаружил, делая это со вторым ПК: Live CD должен быть 64-битным, если операционная система, которую вы перемещаете, тоже 64-битная или chrootне будет работать.
Барт ван Хейкелом

2
Что делает chrootкоманда, и почему это необходимо?
Codeape

7
Я обнаружил, что команда должна быть, sudo cp -ax --target-directory=/path/to/ssd /path/to/hdd/*иначе она копирует файлы, но вместо этого
выдает

2
@Balthazar: при использовании chroot новый корневой каталог должен быть достаточно полной средой, чтобы любые программы / скрипты, которые вы собираетесь запускать, могли работать так, как если бы это была обычная корневая файловая система. Эти команды монтирования сбрасывают файловые системы "sys", "dev" и "proc" (виртуальные файловые системы с файлами без поддержки диска, например / dev / zero, который возвращает все нули при чтении) в правильные места, чтобы они появляются в нужном месте при осмотре изнутри тюрьмы.
azernik

3

Мне удалось успешно выполнить эту миграцию благодаря инструкциям @ psusi, однако я заметил одну «ошибку».

После установки Grub на новый SSD он все равно не загрузился - он искал образ виртуального диска, используя UUID моего старого диска ОС, который я удалил. Использование опции --recheck исправило это:

$ grub-install --recheck /dev/ssd

Это побуждает grub повторно сканировать BIOS, идентифицировать новый диск и, предположительно, использовать его UUID при передаче параметра «root =» в ядро.


2

Вот как хорошо (на 2018 год) так же просто, как с 2013 года: http://www.sesser.eu/howtos/hdd2ssd.php от Маркуса Сессера.

Описывает миграцию без загрузки с live CD. Он также уважает системные директории и использует rsync , noatime , nodiratime . Только не забудьте пропустить опцию сброса - она ​​реализована через cron начиная с Ubuntu 14.04.

Краткий план из статьи:

  1. Разбить и смонтировать SSD. Я рекомендую один ext4 на gpt

  2. источник очистки HDD

  3. синхронизировать данные ( rsync )

  4. мелодия fstab . Также, если вы будете хранить жесткий диск в системе, я рекомендую переместить / домой на SSD, сохраняя пользовательские данные (~ / Video, ~ / Audio и т. Д.) На жестком диске.

  5. установить личинку


0

Учитывая, что ваш жесткий диск - / dev / sda, а SSD - / dev / sdb, а разделы имеют правильный размер, вы можете использовать простой cp:

cp /dev/sdaX /dev/sdbY

Где X и Y - соответствующие номера разделов.

Однако этот метод скопирует 80 ГБ данных, и все сектора на вашем SSD будут помечены как «занятые» изначально.


Звучит достаточно просто, но это последнее предложение мало что значит для меня. Это проблема или проблема?
Барт ван Хеукелом

Что ж, это может негативно повлиять на скорость вашего SSD (однако при поддержке TRIM это восстановится позже). Вы можете прочитать en.wikipedia.org/wiki/TRIM для получения дополнительной информации. Но вы действительно должны идти по пути, описанному в другом ответе (копировать файлы, а не разделы). Если вы все еще решили скопировать весь раздел, вам также необходимо выполнить grub-install / grup-update.
Вилмантас Баранаускас

1
Я бы не рекомендовал такой подход, он скопирует все ошибки файловой системы, которые могут возникнуть на вашем старом разделе. cp -axПодход как быстрее и безопаснее.
Андрей Соснин
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.