LINUX.ORG.RU

Как перенести систему с HDD на SSD, чтобы быстро и безболезненно?

 , , ,


0

1

Здрасте. Именно сейчас появилась резкая нужда взять SSD в ноутбук на замену HDD, несмотря на то, что мне в том году говорили, что пора. Хочу так, чтобы на нём стояла и винда, и Арч. Проблема в том, что разметка диска на текущем HDD - MBR, а в идеале надо ставить GPT, чтобы накинуть больше разделов. Просто переустановить арч - не вариант. Экземпляр собранного вручную ядра где-то потерялся, а новые ядра я ставить не хочу. Старые пакеты тоже надо будет как-то перенести, но кеши Pacman и Yay у меня были подчищены, потому что заканчивалось место. Из-за другого типа разметки дисков, я так понимаю, у меня не выйдет просто скопировать по байту каждый из старых разделов на SSD. Как тогда быть? Может кто сталкивался с этим. Прошу подкинуть идей.

UPD: Пока не дочитал все сообщения но спасибо за вашу помощь! SSD уже заказан и приедет где-то через три дня. Буду пробовать копировать разделы напрмую через dd. Не знал что так можно

UPD1: SSD приехал!

UPD2: Всё перебросилось и начало работать после фикса /etc/fstab. Винда также прибилась к GRUB’у после os-prober и пересоздания конфига через grub-mkconfig

★

Последнее исправление: Tyse_EX (всего исправлений: 3)
Ответ на: комментарий от mumpster

Ааа… Ничем не копировать ._. У меня, да, на HDD есть раздел, куда я хотел ставить винду, но упёрся в предел созданных MBR-разделов и забил. Вот на новый SSD я её хочу поставить

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

в смысле, переставить её? ну может и имеет смысл, так в чём-то проще будет если ничего ценного на ней не лежит.

только начни с неё, отдельно поставь, пусть она GPT там разметит, только место оставь вначале для биосбут, а потом уже наваливай своё

впрочем, биосбут можно потом будет попробовать с 34 по 2047 сектора засунуть. это я ещё не пробовал )))

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

А какой в этом смысл?

Я не помню. Я так делал, ещё когда сидел на Минте, только выделял гигабайт под загрузочные разделы. Видимо, была какая-то причина, которая породила такую привычку.

exFAT же.

Вроде бы принято, что, если делать так, то линупс рано или поздно сломает этот раздел, либо должны быть ужасно медленные скорости. Никогда не пробовал, но об этом писалось везде, когда я читал. Хотя, побитые exFAT-разделы я получал только тыкая флешки в смартфоны Сяоми.

Tyse_EX ★
() автор топика
Последнее исправление: Tyse_EX (всего исправлений: 1)
Ответ на: комментарий от mumpster

для десктопа и тем более бука подкачку лучше отдельно и в размере ОЗУ - для suspend

Если используется suspend.

/boot/efi рекомендовано 512мб

Если там ядра хранить, то да. Если grub - то 200 за глаза, если биосы не обновлять вендорскими утилитами, то 50 за глаза.

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

Я не помню. Я так делал, ещё когда сидел на Минте, только выделял гигабайт под загрузочные разделы. Видимо, была какая-то причина, которая породила такую привычку.

Сейчас в этом мало смысла. Раньше было много накопителей, немного позже были связки ssd + hdd, сейчас можно купить 1 ssd и сидеть на нём на одном разделе (а бэкапиться на nas)

Вроде бы принято, что, если делать так, то линупс рано или поздно сломает этот раздел, либо должны быть ужасно медленные скорости.

Какие-то странные сказки. Видимо, ещё про fuse-exfat.

Никогда не пробовал, но об этом писалось везде, когда я читал.

Ггг :)

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

NTFS норм. проверено на M.2 через USB - там обычным фатом уже не поползуешься из-за объёма и ограничений в 4гб.

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

200мб - мало для 4к. т.е. венда с некоторых sata и 100% nvme - не взлетит. ну и зачем тогда такое советовать?

ну и https://wiki.archlinux.org/title/EFI_system_partition

как бы намекает: «It is recommended to make the partition 1 GiB in size to ensure it has adequate space for multiple kernels or unified kernel images, a boot loader, firmware updates files and any other operating system or OEM files. If still in doubt, 4 GiB ought to be enough for anybody.»

dixi

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

Не для suspend а для hibernate.

same sh*t, суть - одна и механизм - один и тот же

и да - можно не париться с точным соответствием размера ОЗУ и suspend area т.к. это не проблема елси в целом весь RSS, ядро просто буфера обнулит и всё. и да - в подкачке отображается реальное ОЗУ! т.е. оно уже там! не надо его прибавлять ;-) или ты плохо понимаешь как подкачка работает?

вообще да. там етсь некое волшебство, у Лукидеса в книге меня здорово некоторые момент удивили в своё время (это про улучшение производительности BSD времён процесса между опекунами универа и корпократами из AT&T)

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

суть - одна и механизм - один и тот же

Совершенно нет. Suspend это остановка проца, hibernate - полное выключение компьютера.

suspend area

Hibernate area?

ядро просто буфера обнулит и всё

Этого вполне может не хватить.

в подкачке отображается реальное ОЗУ! т.е. оно уже там! не надо его прибавлять ;-) или ты плохо понимаешь как подкачка работает?

Да нет, плохо понимаешь кажется ты. Если у тебя ОЗУ 4гб и свап 1гб, то никак ОЗУ в свапе целиком быть не может. Если у тебя ОЗУ 4гб и свап 4гб, из которого 2гб заняты, а в ОЗУ занято 3.5гб и ещё 0.5гб буфера - то опять hibernate не получится. Вобщем, когда ты делаешь hibernate, то действительно всё ОЗУ, кроме ненужного, должно отобразиться на свап, но пока ты hibernate не запросил, такого нет.

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

можно вообще минимум выделить (32мб), а потом героически преодолевать внезапно возникшие трудности.

лично у меня горизонт планирования для этого - более чем 1 день.

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

Тут есть некоторая логическая ошибка: вот у тебя свап 4 ГБ и 2 занято. Ставишь 6, но оказывается занятым 4. Ставишь 8 - 6 и т.д. В общем, резервировать на постоянку место, которое понадобится только иногда, так себе затея. У винды с отдельным файлом как-то более по уму сделано. Надеюсь, такое и в Линь завезут.

bbc69
()
Ответ на: комментарий от firkax

Hibernate area?

гибрид ещё лучше. ещё раз - механизм там работает один, параметры просто разные задаются, одно время оно (S4) так и называлось suspend2disk

Если у тебя ОЗУ 4гб

вылезай уже из анабиоза! 4гб озу щаз на физике дома разве что на буках встречается, у меня даже с DDR2 комп был с 8гб, а это было много лет назад. а в ВМ suspend не нужен. ну и по жизни если у тя половина анонимных в подкачке - у меня для тя плохие новости, там точно не suspend to disk надо заниматься ))))

щаз подкачка на десктопе нужна только для suspend2disk, а сервера обычно не выключаются вообще )))

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

у винды с этим - какое-то отдельное приключение, особенно если на полном автомате (по умолчанию). и кстати - он там не один, их там два ;)

и да - в линуксе такое очень давно завезли. и в наше время подкачка не особо нужна. а для QLC ТТД так даже противопоказана.

так что на десктопе подкачка нужна сейчас только для suspend2disk. а на серверах - только как защита от промахов с расчётами по ОЗУ чобы избежать последствий OOM

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

у винды с этим - какое-то отдельное приключение, особенно если на полном автомате (по умолчанию). и кстати - он там не один, их там два ;)

Никаких приключений не помню. 2 файла, это если правильно всё помню:

  • pagefile - собственно сам файл подкачки. Надо делать сразу фиксированного размера, чтобы дефрагментация не заела.
  • hybernate - файл гибернации. Создаётся собственно при гипернации. Там размер пофигу, сам проставит всё, что надо.

Я про то и говорю, что отдельные файлы лучше.

и в наше время подкачка не особо нужна. а для QLC ТТД так даже противопоказана.

Я как-то пытался жить без подкачки, но внезапные ООМ заставили пересмотреть свои взгляды. Со свапом система кряхтит, пердит, но работает. Так что да, свап - неотъемлемая часть работы Линукс.

bbc69
()
Ответ на: комментарий от Tyse_EX

Раз windows еще нет, я бы в начале поставил ее на ssd а потом уже переносил linux. Или вы windows будете тоже образом тащить?

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

А что там преодолевать-то? 2 ядра десктопных или 3 серверных или 5 микросерверых там поместится.

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

Не понял, в линуксовый /boot закинуть ВИНДОВСОВЫЙ ЗАГРУЗЧИК??? С каких пор так можно? Начиная, где-то с семёрки, оно само создаёт раздел на ~240 мегабайт для своего загрузчика. Не думаю, что винда как-то сможет подружиться с GRUB

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

200мб - мало… т.е. венда с некоторых sata и 100% nvme - не взлетит.

Полно глупости молоть. Винда сама делает ESP 100мб. И там ещё остаётся достаточно места, чтобы пару-тройку раз поместился весь груб.

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

RTFM. я уже тут на арч вики ссылку дал

на GPT разметке (разумно на неё щаз перейти) твой «раздел с 7ки» - это EFI boot, не путай с /boot !

там лежат загрузчики для всего. можно прям туда ядра закидывать и т.п. но мне обычно удобнее GRUB.

и поэтому отдельный /boot не нужен, он имеет смысл только если имеется LVM и то это под вопросом

и да - винда легко подружится с GRUB. например, на dual boot машинах это вообще норма. но сначала ставишь венду, а потом линукс с грубом (линукс можно просто перенести, но потом - тут лицо прапорщика). и прописываешь ему chain loader. если надо - могу его готовую настройку под W10 дать для grub.cfg.

если же ты хочешь сохранить MBR-style на GPT - то это гемор ещё тот. но в принципе возможно. тебюе понадобится небольшой размер BIOSBOOT - туда GRUb своё core пропишет, его даже можно попробовать разместить после MBR, с 34 сектора по 2047, там всего ~1МБ надо.

технически можно вообще прописать всё в UEFI и делать выбор чо грузить - из его BOOT Menu.

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

какая именно? 7ая? ;-) у нас 2026 год на дворе

нате:

https://learn.microsoft.com/en-us/windows-hardware/manufacture/desktop/configure-uefigpt-based-hard-drive-partitions?view=windows-11

The EFI system partition must meet the following minimum size requirements for the storage device type:

512 native / 512e byte sector size: minimum 200 MB  
4K native sector size: minimum 300 MB

и да - это только под венду. а ведь есть ещё другая ОС. плюс там есть ещё требования про свободное место.

никогда не надо закладываться на «сегодня хватит». так-то и 640кб хватало для всего

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

Есть у меня родной образ Win11 2022 года. Она делает ESP 100мб. Все до нее делают 100мб.

Да, примерно с того времени все вдруг решили увеличивать размер ESP. Нынешняя Убунту создаёт гигабайтный ESP, но занимает там всего несколько мегабайт.

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

Да, примерно с того времени все вдруг решили увеличивать размер ESP. Нынешняя Убунту создаёт гигабайтный ESP, но занимает там всего несколько мегабайт.

Это зависит от того как у вас монтируется esp раздел, у некоторых он монтируется в /boot а там ядрышки …

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

200мб - мало для 4к

4к? (А всё, прочитал выше).

т.е. венда с некоторых sata и 100% nvme - не взлетит.

Венда (начиная с 25h1 емнип) делает по-умолчанию efi 200mb, до этого делала 100mb.

adequate space for multiple kernels or unified kernel images

Арч хранит ядра на efi-партиции, мягко говоря, далеко не все так делают

Dimez ★★★★★
()
Последнее исправление: Dimez (всего исправлений: 2)

SSD уже заказан и приедет где-то через три дня…

Три дня смотришь на свои старые диски, чтобы понять, что не нужна эта несуразица на новом диске. Три дня думаешь, а чтоже ты хочешь на новом диске…

Три дня прошло…

Буду пробовать копировать разделы напрмую через dd.

Это самое ненужное. Раз винду только собираешься устанавливать, начинай с её установки. Но крепко держи её за рога, чтобы встала точно в своё стойло, а не заняла всё. Дальше уже будешь плясать под её дудку. Старые диски пока тихо лежат в сторонке.

andytux ★★★★★
()
Последнее исправление: andytux (всего исправлений: 1)
Ответ на: комментарий от Dimez

Арч хранит ядра на efi-партиции…

Ну тады ой! Либо взять систему, которая так не поступает, либо делать ESP гигабайтных размеров.

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

Три дня думаешь, а чтоже ты хочешь на новом диске…

Две системы и возможность дуалбута, по надобности.

Раз винду только собираешься устанавливать, начинай с её установки

Ну тогда надо начинать с винды, потом наметить разделы под Арч и на них переписать всё, что было на HDD

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

Нет ESP виндовых или каких других. ESP он для EFI-загрузчиков. В случае с линуксом, он может монтироваться в /boot или /boot/efi. Но не обязательно. Для работы системы это не нужно.

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

Отличается.

Есть 2 варианта:

  1. EFI-раздел монтируется в /boot и там лежат загрузчики и ядра => нужен большой EFI-раздел.

  2. EFI-раздел монтируется в /boot/efi, там лежат только загрузчики, достаточно 200mb (ну вот для 4k уже микрософт хочет 300) даже для всяких вендорских вещей типа bios self-healing и обновление биоса из винды (суть которого - положить efi-обновлятор и файл самого биоса на efi-партицию и одноразово переключить загрузку на обновление)

Лично мне больше по душе 2 вариант, т.к. всё равно везде использую grub и не люблю, чтобы много важных линуксовых файлов лежало на fat32.

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

По своей прихоти, сделал ESP 8гб. Могу поместить туда любой исо-образ, чтобы с него устанавливать систему. Впринципе, могу установить туда Виндовс 98.

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

проще полгига сделать и васякот!

а чобы не забивалось и не надо было гиг - чистить иногда старьё.

а то я раз ошибку сделал - маленькие бут с рутом во времена мелких дисков и когда лучше было всё раздельно иметь. ещё и на mdraid <1.2.

имел потом секас когда ядра перестали влазить.

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

Я так тоже попадал :)

Поэтому со временем перестал /boot делать отдельным разделом. На ноуте неплохо было бы шифрование сделать (что подразумевает либо большой efi, либо отдельный /boot), но всё лень.

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

Тю, да 98-ке столько и не надо :) Я одно время жил с ХР на 4-гиговом разделе, и ничего :)

yars068 ★★★★★
()
Последнее исправление: yars068 (всего исправлений: 1)
Ответ на: комментарий от Dimez

тогда это было ещё обязательным - 1 груб, мдадм даже ещё не первый, диски гигов по 80 в лучшем случае и это вот всё

mumpster ★★★★★
()

Пришёл к выводу, что HDD и SSD я в один ноутбук не запихну, так как у слота под DVD-привод стоит миниатюрный SATA, а салазок у меня нет. Могу тыкнуть оба диска к компу и перекинуть данные с них через Rsync?

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

Купи на али usb коробочку для sata 2.5", их там как грязи. Только с поддержкой UAS обязательно.

Потом будет у тебя внешний диск.

Dimez ★★★★★
()
Последнее исправление: Dimez (всего исправлений: 1)
Ответ на: комментарий от bbc69

С чего это занятым 4 6 итд окажется? Если у тебя текут какие-то проги надо их чинить (ну или ограничивать им трату памяти). Когда памяти 4 и занято +2 свапа ещё к этому это в целом вменяемая ситуация (треть данных редко используется), а когда памяти 4 и занято 6 свапа - уже крайне сомнительная - либо кто-то жрёт свап всяким мусором неадекватно, либо это не мусор и у тебя всё постоянно и жёстко лагает.

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

механизм там работает один

При suspend нет вообще никакого механизма, связанного с памятью, она остаётся как была. Засыпает проц и какая-то периферия. Так что ты ерунду какую-то пишешь.

называлось suspend2disk

Назвать можно как угодно. Но видимо они поняли что название вводит в заблуждение и поэтому переименовали.

вылезай уже из анабиоза! 4гб озу щаз на физике дома разве что на буках встречается

У автора как раз ноут. И как бы там не меньше 4 оказалось.

если у тя половина анонимных в подкачке - у меня для тя плохие новости, там точно не suspend to disk надо заниматься

Если свап размером с ОЗУ, то чтобы всё сломалось - достаточно чтобы в свапе было занято больше, чем занимает дисковый кеш в памяти. Не такая уж это невероятная ситуация, и совсем не обязательно она будет сопровождаться лагами. Бывает софт который жрёт лишнюю память на старте (и делает что-то с ней что она реально выделяется), а потом больше к ней не притрагивается, либо притрагивается крайне редко.

У меня, начиная с какого-то обновления фф, оно регулярно начало именно таким способом жрать свап: заняты все 16гб ОЗУ, занято 16 из 30гб свапа, но лагов нет т.к. в свапе лежат мёртвые данные которые на самом деле не нужны. Когда свапа занято ещё больше - обычно уже лаги начинались. Потом настроил для фф подменный /proc/meminfo чтоб он думал что на компе мало памяти - жор уменьшился.

firkax ★★★★★
()
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария