LINUX.ORG.RU

Неудачный системы перенос на SSD

 ,


0

1

Решил переставить систему на ssd-диск. Archlinux x64 в дуалбуте с Windows 8.1.

С помощью Gparted создал разделы c файловыми системами на новом диске аналогично исходному. Установил Windows.

С помощью dd перенес разделы linux с исходного диска (кроме swap) таким образом:

dd if=/dev/sdb1 of=/dev/sda1 bs=4096 conv=notrunc,noerror

Переписал загрузчик grub. Система не загружается.

Особенность в том, что исходный диск был sdb, а стал sda. Переписал разделы sdb на sda в fstab. Интуитивно понимаю, что этого мало.

Подскажите, ЧЯДНТ. Заранее спасибо.

Интуитивно понимаю, что этого мало.

должно хватать, но есть смысл попытаться с UUID. Я вот тут недавно, вообще тупо скопировал все файлы из корня с одного диска на другой. Все работает. Даже с грубом проблем не возникло, немного конфиг поправил и все.

Dred ★★★★★
()

Во-первых, поскольку это SSD, переноси partclone-ом.

Во-вторых, отсоедини старый диск или затри его таблицу разделов (dd if=/dev/zero of=/dev/sdX bs=512 count=2048).

В-третьих, перепиши fstab и командную строку ядра так, чтобы они использовали /dev/disk/by-uuid или /dev/disk/by-label, но ни в коем случае не /dev/sdXY.

В-четвёртых, не просто переустанови grub (grub-install /dev/sdX), а перегенерь конфиг (grub-mkconfig -o /boot/grub/grub.cfg).

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 2)
Ответ на: комментарий от Dred

Перебросом разделов только можно было бы ограничиться, но sdb стало sda. Из-за этого, кажется, все проблемы.

mad_austronaut ★★★★
() автор топика
Ответ на: комментарий от intelfx

отсоедини старый диск
grub-mkconfig

так и сделал

by-uuid

изменния вносить только в fstab, или где еще прописываются как какие разделы используются? Туплю.

mad_austronaut ★★★★
() автор топика
Ответ на: комментарий от Dred

За недолгое мое общение с линуксом всегда dev использовал. Напорлся, наконец. Буду меняться. Спасибо.

mad_austronaut ★★★★
() автор топика
Ответ на: комментарий от mad_austronaut
  • /etc/fstab
  • /etc/default/grub (параметры командной строки ядра: resume=, если ты пользуешься гибернацией, root= добавляется автоматически)
  • /boot/grub/grub.cfg (этот файл нужно перегенерить, в конечном итоге командная строка ядра, вместе с автогенеренным root=, попадает именно туда)
intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

Как я правильно понял, сначала я должен поправить fstab, потом /etc/default/grub и только потом перегенерить grub.cfg с помощью grub-mkconfig.

А где я должен указать, что гружусь по UUID? Что конкретно должно быть в /etc/default/grub?

mad_austronaut ★★★★
() автор топика
Ответ на: комментарий от mad_austronaut

А где я должен указать, что гружусь по UUID? Что конкретно должно быть в /etc/default/grub?

Из ArchWiki

Автоматический конфигуратор использует UUID по-умолчанию. Если вы хотите, чтобы он использовать классические имена устройств (например, если у вас нет initramfs), вы можете запретить конфигуратору использовать UUID, раскомментировав в /etc/default/grub строку GRUB_DISABLE_LINUX_UUID=true

подробнее тут, в основном все сводится к правке /etc/fstab

Wind ★★★
()

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

Загрузился с livecd. Примонтировал root-раздел sda5, аккуратно переписал fstab на монтирование по UUID.

Перезагружаюсь, нихрена. Failed to start File System Check как и было.

Смотрю, df –h, home-раздел sda6 не примонтирован. Ага, думаю, проблема в нем, скорее всего.

Снова загрузился с livecd.

Пытаюсь примонтировать home-раздел sda6:

mint mint # mount /dev/sda6 /mnt/sda6/
mount: wrong fs type, bad option, bad superblock on /dev/sda6,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

Потом:

mint mint # fsck.ext4 -f /dev/sda6
e2fsck 1.42.9 (4-Feb-2014)
The filesystem size (according to the superblock) is 7864064 blocks
The physical size of the device is 7863808 blocks
Either the superblock or the partition table is likely to be corrupt! 
Ну, думаю, проблема в размерах переписываемых разделов.

Смотрю fdisk –l:

   Device Boot      Start         End      Blocks   Id  System
/dev/sda6        87013376   149923839    31455232   83  Linux
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb6        87013376   149925887    31456256   83  Linux 
Один мегабайт разницы. Снес раздел sda6, Gparted’ом поправил и создал заново. Побайтно переписал с помощью dd.

Перезагрузился, все загружается и работает.

mad_austronaut ★★★★
() автор топика

Большое спасибо всем!

В частности: Dred, intelfx и Wind.

Да-да, вот эти ребята!

Подсказали решение, узнал много нового.

mad_austronaut ★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.