LINUX.ORG.RU

Перенос Линукс на другой диск и запуск оттуда

 


0

1

Добрый день! Подскажите, пожалуйста. У меня минт стоит на ноуте. Поставил вторым диском SSD диск. Задача - перенести ось на этот новый диск и загружаться с него, не выключая первый винт. Я склонировал систему через Clonezilla, все нормально перенеслось. Сделал второй диск загрузочным через grub-install. Сделал grub-update в загруженной с первого диска системе, чтобы в меню появился второй диск с системой. Он появился. Проблема: Система все равно грузится с первого диска. Даже если я выбираю из меню груба загрузку с второго диска (sdb) или даже если я в биосе ставлю с него загрузку - начинает он грузиться со второго диска, но систему тянет с первого. Предполагаю, если бы первый диск отключить, а второй сделать первым, то он успешно будет работать, а сейчас видимо у него остались происки в системных файлах на то, что тянуть все с sda. Здесь уже мои знания заканчиваются. Как можно пофиксить ситуацию не переустанавливая систему на второй диск с нуля? Такое ощущение, что тут какая-то мелочь осталась...

Проблема: Система все равно грузится с первого диска. Даже если я выбираю из меню груба загрузку с второго диска (sdb) или даже если я в биосе ставлю с него загрузку - начинает он грузиться со второго диска, но систему тянет с первого.

Скорее всего, в параметрах ядра и в /etc/fstab корневая файловая система указана не в виде имён разделов, а посредством UUID файловой системы (идентификатора файловой системы), LABEL - метеки файловой системы или PARTUUID - идентификатора раздела.

Так что тебе надо посредством утилиты blkid, она входит в состав parted, посмотреть идентификтаоры разделов на SSD диске.

Далее смонтировать корневой раздел с SSD диска и внести изменения в /etc/fstab, указав там значение UUID соответствующего раздела SSD диска, далее смонтировать /boot с SSD диска и указать там тоже правильный UUID.

kostik87 ★★★★★
()

fstab?

И да - лучше установи с нуля. Иначе можно воевать с файлами (или uefi) бесконечно. Вообще в этом смысл отдельного раздела /home. Просто разметь винт жд как тебе надо и храни там своих поней. А на ssd поставь свежую™ систему. И волосы у тебя будут шелковистыми и время клеить тёлок появится. В данном вопросе задротство неуместно.

Засим нарекаю сей тред «Как установить систему на новый диск не вынимая старого»

anonymous
()
Ответ на: комментарий от kostik87

Пока не получается. Результат вывода blkid:

/dev/sda1: LABEL=«WINRE» UUID=«4E363C88363C7357» TYPE=«ntfs» PARTUUID=«241c6624-01»
/dev/sda2: LABEL=«Data» UUID=«4034832B348322D0» TYPE=«ntfs» PARTUUID=«241c6624-02»
/dev/sda5: UUID=«c66d3692-2d1c-4192-80e5-1ce2ddccce69» TYPE=«swap» PARTUUID=«241c6624-05»
/dev/sda6: LABEL=«mint_old» UUID=«e688a9ca-d0cb-4ff0-bc52-b3bd1deec1e9» TYPE=«ext4» PARTUUID=«241c6624-06»
/dev/sdb1: UUID=«eb0c25f0-a685-11e7-b5f5-ff7aa6b891d5» TYPE=«ext4» PARTUUID=«c8307ca9-01»
/dev/sdb2: UUID=«87959788-76ce-4d65-9484-dfed59a7c76b» TYPE=«swap» PARTUUID=«c8307ca9-02»

fstab на sda рабочей системе (старой) (это sda6):

# / was on /dev/sda6 during installation
UUID=e688a9ca-d0cb-4ff0-bc52-b3bd1deec1e9 / ext4 errors=remount-ro 0 1
# swap was on /dev/sda5 during installation
UUID=c66d3692-2d1c-4192-80e5-1ce2ddccce69 none swap sw 0 0

fstab на sda новой системе (это sdb1):

UUID=eb0c25f0-a685-11e7-b5f5-ff7aa6b891d5 / ext4 errors=remount-ro 0 1
# swap was on /dev/sdb2 during installation
UUID=87959788-76ce-4d65-9484-dfed59a7c76b none swap sw 0 0

Настройка grub.cfg в конфиге для новой системы (как в на старой системе, так и в новой одинаково - я конфиг просто скопировал туда)

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 8 (loader) (на /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain->4E363C88363C7357' {
insmod part_msdos
insmod ntfs
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 4E363C88363C7357
else
search --no-floppy --fs-uuid --set=root 4E363C88363C7357
fi
parttool ${root} hidden-
drivemap -s (hd0) ${root}
chainloader +1
}
menuentry 'Linux Mint 18 Sarah (18) (на /dev/sdb1)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-eb0c25f0-a685-11e7-b5f5-ff7aa6b891d5' {
insmod part_msdos
insmod ext2
set root='hd1,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1 --hint-baremetal=ahci1,msdos1 eb0c25f0-a685-11e7-b5f5-ff7aa6b891d5
else
search --no-floppy --fs-uuid --set=root eb0c25f0-a685-11e7-b5f5-ff7aa6b891d5
fi
linux /boot/vmlinuz-4.4.0-64-generic root=UUID=e688a9ca-d0cb-4ff0-bc52-b3bd1deec1e9 ro quiet splash $vt_handoff
initrd /boot/initrd.img-4.4.0-64-generic
}

UUID для нового диска я перегенерировал через tune2fs /dev/sdb1 -U `uuid` Ну и метку поставил на текущую систему mint_old

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

Задротство задротством, но хотелось бы сначала помучится, дабы не переустанавливать кучу софта, ибо работа не ждет, а кажется, что таким образом потратится меньше времени. По крайней мере воскресенье частями доступно. Фактически вот оно - все есть на другом диске. Почему бы не заработать ему? Тем более, что как все говорят, это вполне возможно. А переустановить - последний шаг и уже не особо важный, ибо придется с работой все равно на другой комп уходить, и можно будет потом спокойно это сделать. Совсем потом.

noperapon
() автор топика

Linux стоял на диске 80Gb. Перестало хватать места. Намыл диск 250Gb.Командой dd скопировал меньший на больший. Выкинул меньший. Всё заработало без вопросов и дополнительных движений. Остальное lvm подтянул.

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

как в на старой системе, так и в новой одинаково - я конфиг просто скопировал туда

А надо было поправить, я же написал:

menuentry 'Linux Mint 18 Sarah (18) (на /dev/sdb1)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-eb0c25f0-a685-11e7-b5f5-ff7aa6b891d5' {
insmod part_msdos
insmod ext2
set root='hd1,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1 --hint-baremetal=ahci1,msdos1 eb0c25f0-a685-11e7-b5f5-ff7aa6b891d5
else
search --no-floppy --fs-uuid --set=root eb0c25f0-a685-11e7-b5f5-ff7aa6b891d5
fi
linux /boot/vmlinuz-4.4.0-64-generic root=UUID=e688a9ca-d0cb-4ff0-bc52-b3bd1deec1e9 ro quiet splash $vt_handoff
initrd /boot/initrd.img-4.4.0-64-generic
}
Здесь тоже нужно указать правильный UUID.

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

Ага, понял, попробую чуть позже (дочка выгнала с компа). Но возникает вопрос - эти же строки генерятся самим апдейтером грубом, то есть при следующей перегенерации (когда оно там запускается - при обновлениях каких-то?) оно же тогда вернет вот то, что сейчас? И я не смогу загрузиться?

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

Спасибо, получилось. Прогнал проги разные установленные, вроде бы все нормально. Задам еще вопрос не в тему - как лучше подключать в локальную систему второй винт, через тот же fstab? Ну, чтобы загрузил систему, а там эти винты как отдельные папки прибайндены.

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

эти же строки генерятся самим апдейтером грубом

Когда генерировался конфиг груба, до исправления /etc/fstab или после?

Задам еще вопрос не в тему - как лучше подключать в локальную систему второй винт, через тот же fstab?

Можно и так, ну либо, возможно, настроено монтирование в графической оболочке, в файловом менеджере.

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