Автор Тема: Клонирование системы с hdd на ssd с последующей загрузкой с ssd [Решено]  (Прочитано 8795 раз)

Оффлайн Chiv32

  • Давно тут
  • **
  • Сообщений: 54
Здравствуйте!

У меня есть старый ноут, жесткий диск которого в плохом состоянии. На этом диске установлены Windows 10 и Simply Linux (у меня Windows загружается, когда в BIOS стоит UEFI, а GRUB и Simply - когда Legacy). Не смотря на плохое состояние диска, работает все пока без проблем.

Однако, поскольку программы диагностики бьют тревогу по поводу состояния этого диска, я купил новый ssd такого же размера и хочу клонировать старый диск на ssd. Затем хочу в ноут поставить и новый ssd (на место старого hdd), и старый hdd (на место cd дисковода), и грузиться с нового ssd.

Первая попытка у меня не удалась. Делал так: подключил ssd на место старого hdd, старый hdd воткнул на место cd дисковода. Загрузился с флешки с Рабочей станцией и попытался сделать

# dd if=/dev/sda of=/dev/sdb
но вышла ошибка чтения спустя пару минут.
Тогда я сделал так:

# dd con=noerror if=/dev/sda of=/dev/sdb
В результате он раз пять выдавал ошибку чтения на том же самом месте, автоматически продолжал работать, наконец, задумался, и часов через 8 закончил клонирование.

Я обрадовался и попытался загрузиться с ssd.

Но ничего не получилось: windows говорит, что нужно восстанавливать систему, simply доходит до надписи GRUB в командной строке и дальше ничего не делает.

Думая, что, возможно, windows привязан к уникальному жесткому диску, сосредоточился на simply.

Попробовал восстановить загрузочную запись, как указано на вики, но ничего не получилось: после загрузки с флэшки и попытки выполнить что-то вроде

grub-install
он пожаловался на то, что может это сделать только с помощью blocklists.
Я воспользовался сообщением уважаемого Speccyfighter: https://forum.altlinux.org/index.php?topic=32361.msg329111#msg329111
...и применил опцию --force. Операция была выполнена, но загрузка Linux не произошла.

На следующей итерации команда

mount /dev/sda13 /mnt
выдала сообщение о том, что не указан тип файловой системы.

Явное указание ext2, ext3, ext4 не помогает, говорит, мол, не то.

lsblk -f находит кучу разделов, но, действительно, почти для всех из них не указан тип файловой системы.

В общем, что-то пошло не так, возможно, еще на этапе клонирования - исходный hdd, повторюсь, в плохом состоянии ¯\_(ツ)_/¯

У меня вопрос: как корректно осуществить клонирование hdd на ssd для дальнейшей загрузки с ssd?

Может, нужно пользоваться ddrescue, а не dd, как я делал?
Нужно ли предварительно до клонирования отключать secure boot для Windows?
Нужны ли какие-то доп. действия после клонирования, чтобы с нового диска все запускалось (ну или хотя бы Simply)?

Заранее большое спасибо!
« Последнее редактирование: 15.08.2020 09:09:39 от Chiv32 »

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Первая попытка у меня не удалась. Делал так: подключил ssd на место старого hdd, старый hdd воткнул на место cd дисковода.
Это как? По логике sda в таком варианте - это ssd. И была попытка копирвать пустой ssd на hdd с данными. Или там устройства наоборот?

Но раз что-то грузится, то может всё и наоборот.
Нужны ли какие-то доп. действия после клонирования, чтобы с нового диска все запускалось (ну или хотя бы Simply)?
Нет. Но старый HDD надо вытащить, так как там и UUID склонирвались, может быть путаница. Потом убедиться, что всё нормально, и затереть HDD.
« Последнее редактирование: 14.08.2020 13:19:43 от asy »

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 041
  • ITS
ddrescue -nvf /dev/sdX_откуда /dev/sdX_куда ./log_copy.txt

Оффлайн Chiv32

  • Давно тут
  • **
  • Сообщений: 54
Это как? По логике sda в таком варианте - это ssd. И была попытка копирвать пустой ssh на hdd с данными. Или там устройства наоборот?

С этим все нормально, fdisk -l показывал вот так вот.

Нет. Но старый HDD надо вытащить, так как там и UUID склонирвались, может быть путаница. Потом убедиться, что всё нормально, и затереть HDD.

Понял, спасибо! В этой итерации, кстати, я пробовал оставить только новый диск, но те же проблемы оставались. Т.е. дело было не в путанице UUID.

ddrescue -nvf /dev/sdX_откуда /dev/sdX_куда ./log_copy.txt

Спасибо, сегодня ночью попробую!

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
    ddrescue -nvf /dev/sdX_откуда /dev/sdX_куда ./log_copy.txtСпасибо, сегодня ночью попробую!
Это ничем не отличается от dd. при условии, что исходный носитель исправен, но если бы были проблемы, dd бы написал.

UPD: ух блин, отличается.

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
но вышла ошибка чтения спустя пару минут.
Тогда я сделал так:

Код: [Выделить]

# dd con=noerror if=/dev/sda of=/dev/sdb
Вот и проблема. С noerror нечитающийся блок пропускается, но на целевой носитель пишется всё подряд. Соответственно происходит смещение со всеми вытекающими последствиями. В случае плохого исходного носителя надо
dd if=/dev/sda of=/dev/sdb conv=noerror,syncОпция sync заставит dd синхронно пропустить блок на целевом носителе, заполнив его нулями.

Онлайн gosts 87

  • Завсегдатай
  • *
  • Сообщений: 2 620
  • Дмитрий/Dmitry/德米特里/दिमित्री
Здравствуйте!

У меня есть старый ноут, жесткий диск которого в плохом состоянии. На этом диске установлены Windows 10 и Simply Linux (у меня Windows загружается, когда в BIOS стоит UEFI, а GRUB и Simply - когда Legacy). Не смотря на плохое состояние диска, работает все пока без проблем.

Однако, поскольку программы диагностики бьют тревогу по поводу состояния этого диска, я купил новый ssd такого же размера и хочу клонировать старый диск на ssd. Затем хочу в ноут поставить и новый ssd (на место старого hdd), и старый hdd (на место cd дисковода), и грузиться с нового ssd.


Помню, лет 6 назад, делал такое, но тогда у меня был только "Windows" и жёсткий диск был в удовлетворительном состоянии.
Если Ваш ЖД ещё не совсем "убит", возможно, получится такое проделать...
« Последнее редактирование: 14.08.2020 18:37:11 от gosts 87 »

Оффлайн Chiv32

  • Давно тут
  • **
  • Сообщений: 54
Вот и проблема. С noerror нечитающийся блок пропускается, но на целевой носитель пишется всё подряд. Соответственно происходит смещение со всеми вытекающими последствиями.

Да, похоже на то. Сейчас попробую сделать ddrescue, если не получится, попробую dd с sync. Спасибо!

Если Ваш ЖД ещё не совсем "убит", возможно, получится такое проделать

Сейчас попробую.

Оффлайн Chiv32

  • Давно тут
  • **
  • Сообщений: 54
Оказалось, что ddrescue на загрузочной флэшке с Рабочей станцией 9.1 нету. Не знаю, может, можно было установить его из репозитория, но почему-то к сети не получилось подключиться, хотя раньше с той же флэшки сеть подключалась. Пришлось на флэшку записывать alt-rescue.
В итоге ddrescue сработал! Результат выполнения можно посмотреть на приложенном фото. Отсоединил старый hdd, с нового все загружается, и Simply, и Windows. Всем спасибо! rabochyITs - отдельное спасибо! :-)
Тему закрываю.