633 подписчика
Обновляем жёсткий диск - поход по граблям
Хотел послушать куранты - и в этот момент мой ASUS ROG G771JW сломался - что-то случилось с питанием. Видимо, при подключении зарядки проскакивает искра. Возможно, дело было в конкретном блоке питания, а может быть, дело в том, что я подключаю мониторы и где-то по цепи питания образуется какая-то ненужная петля. Во всяком случае, всё это работало довольно долго, а потом компьютеры стали ломаться один за другим. Блок питания отправлен в отставку. После каникул купил на вторичном рынке такой же ноутбук (благо, они сильно подешевели), переставил диски и всё заработало. Но этого показалось мало. Основной раздел на линуксе был заполнен на 90%, а также мне нужен Windows. Раскошелился на Samsung EVO 780 аж на 2 терабайта и приступил к замене.
Ввиду агрессивности Windows, решил сначала поставить Windows, а уже затем скопировать разделы Linux. С Windows всё прошло легко: штатным средством переустановки скачал на флешку дистрибутив и всё установилось. Дальше стандартно: отключение "быстрой загрузки", чтобы попасть в биос. Почему-то по кнопке Del стало нельзя попасть в bios, но я вспомнил про F2. Дальше скопировал с помощью Clonezilla Linux разделы, но (вторая ошибка) не вынул сразу же старый диск. В итоге получились разделы на разных дисках, но с одинаковым UUID (я об этом узнал не сразу). Как результат, вместо новой системы загружалась старая.
Кроме того, Uefi раздел почему-то не возник после установки Windows 10, поэтому после updage-grub новая линукс-система прописывалась в uefi старого диска, подлежащего удалению из компьютера. Когда заметил это, отдельно скопировал uefi раздел и стал следить, что монтируется. Но это плохо работало, т.к. и uefi раздел тоже получил дублирующийся uuid. На этом этапе надо было вынуть старый жёсткий диск. Clonezilla даже про это пишет, но кто ж будет все эти простыни читать.
Когда разобрался в проблеме дубликатов UUID, с помощью tune2fs поменял UUID нового линукс-раздела (uefi раздел не решился трогать), а grub правил (много раз) с помощью update-grub, который смотрит, какие системы есть на дисках и добавляет их в меню загрузки. После замены UUID на новом разделе новая система начала пытаться загружаться. Но теперь UUID в /etc/fstab новой системы стали не совпадать с UUID раздела, в итоге сообщение "failed to start remount root and kernel file systems". Исправить его из самой системы нельзя, т.к. корневой раздел смонтирован в режиме "только для чтения".
Загрузился в clonezilla (это на самом деле живой диск линукса), смонтировал раздел новой системы и поправил там /куда-смонтировал/etc/fstab (uuid получается с помощью blkid).
На самом деле путь к успеху был гораздо более извилист, я пишу только ключи к головоломке, а не полную последовательность действий. В следующий раз пригодится.
Теперь, не считая того, что для моего нового линукса есть две записи в меню загрузки BIOS, вроде всё нормально. У меня на одном SSD две системы и обе вроде бы загружаются.
Думаю, правильным было бы сначала клонировать существующий диск (с увеличением размеров разделов), потом создать новый раздел под Windows, поставить Windows, потом разрулить проблемы, которые оно создало. Но умная мысля приходит опосля, и неизвестно, какие грабли ждут на этом пути.
2 минуты
24 января 2024