Переместить системный раздел EFI на другой диск

у меня была установка Windows 8 на жестком диске, используя UEFI в качестве загрузки. Жесткий диск имеет следующую таблицу GPT:

DISKPART> list partition

Partizione ###   Tipo              Dim.     Offset
---------------  ----------------  -------  -------
Partizione 1     Ripristino         300 Mb  1024 Kb
Partizione 2     Sistema            100 Mb   301 Mb
Partizione 3     Riservato          128 Mb   401 Mb
Partizione 4     Primario           390 Gb   529 Mb
Partizione 5     Primario           540 Gb   390 Gb

(Я извиняюсь, что это на итальянском языке, но перевод довольно прост).

Я недавно купил SSD-накопитель, подключил его и установил новую Windows 8. Теперь у меня есть рабочая двойная загрузка, но раздел UEFI находится на жестком диске, а не на SSD. Вот список разделов SDD:

Partizione ###   Tipo              Dim.     Offset
---------------  ----------------  -------  -------
Partizione 1     Riservato          128 Mb  1024 Kb
Partizione 2     Primario           221 Gb   129 Mb

Я думаю, что лучшим решением будет это на SSD по двум причинам:

во-первых, это производительность (я думаю, это было бы немного быстрее на SSD из-за времени раскрутки для жесткого диска, но я могу ошибаться в этом)

вторая причина-это системность. Поскольку я планирую использовать только установку Windows 8, которая находится на SSD, и я, вероятно, собираюсь стереть системный раздел на жестком диске, чтобы использовать его в качестве устройства хранения данных, я думаю, что загрузочный раздел должен быть на том же диске, что и ОС.

Итак, вопрос в том, как переместить системный раздел EFI на SSD?

30
задан Pincopallino
14.12.2022 6:54 Количество просмотров материала 3542
Распечатать страницу

5 ответов

моя рекомендация-не заморачиваться. Улучшение производительности будет незначительным, поскольку файлы, считываемые с ESP, являются крошечными и считываются только при загрузке компьютера. Кроме того, сам раздел является крошечным по современным стандартам, так что вы не будете восстанавливать достаточно места, чтобы сделать усилия стоит. Кроме того, попытка переместить ESP рискует создать проблемы загрузки, которые потребуют гораздо больше времени для исправления, чем любое другое время, которое вы могли бы сэкономить в улучшенном времени загрузки из двигаться.

если вы хотите, чтобы идти вперед и сделать это в качестве учебного опыта, несмотря на мою рекомендацию, вы должны будете смотреть в:

  • создание ЭСО с какими разделами программы. Я не уверен, как вы это сделаете со стандартными инструментами Windows. С gdisk, вы создадите раздел типа EF00, но затем вам нужно будет создать на нем файловую систему FAT, так как gdisk Это разделение-только инструмент (он не обрабатывает файловая система.)
  • одновременное монтирование обоих ESP для копирования файлов (или последовательное использование временного хранилища). Я не уверен, как это сделать в Windows, хотя это было бы легко в Linux или из оболочки EFI. (Это было бы автоматически в оболочке EFI, на самом деле.)
  • Регистрация загрузчика на своем новом доме. (Используя резервное имя файла EFI\BOOT\bootx64.efi, вероятно, будет более простой альтернативой, но является менее предпочтительным методом загрузки загрузчика.) Окна bcdedit команда и оболочка EFI bcfg инструмент может как зарегистрировать загрузчики; однако,bcdedit является негибким, поскольку Windows поддерживает только один ESP, что создает проблемы при копировании ESP.
4
отвечен Rod Smith 2022-12-15 14:42

для людей, как я, исходя из Google: Да, это можно сделать с помощью Windows, без каких-либо сторонних инструментов. Протестировано с Windows 10 Pro x64. Я использовал эту процедуру для перемещения системного раздела EFI и раздела, зарезервированного системой. Она должна работать на Windows 8, а также.

Если ваш основной диск не хватает места, сначала вам нужно сжать раздел C: (или эквивалент). Я использую 260 МБ в этом примере, поскольку это то, что требуется для новых дисков, но старые диски с меньшими секторами требуют только 100 МБ. Если вам не нужно делать пространство, обратите внимание на комментарии, которые указывают, какие шаги вы должны пропустить.

В то время как вы находитесь на нем, вы, вероятно, хотите, чтобы переместить системный зарезервированный раздел. Обычно они занимают 1000 МБ и хранят полезные метаданные Windows. Вы можете обнаружить, что некоторые компоненты Windows не работают без раздела, зарезервированного системой. Я включил шаги для создания такого раздела на вашем основном диске и отметил те шаги с комментариями. Эти шаги можно легко исключить, если вы предпочитаете их пропускать, но при сжатии потребуется изменить их число (например, 260 МБ вместо 1260 МБ).

комментарии начинаются с REM (для "замечание"), так как они поддерживаются как cmd.exe и diskpart.исполняемый.

из cmd.exe работает от имени администратора:

diskpart
list disk
REM Choose the appropriate disk number from the list.  If you're unsure, you can open diskmgmt.msc; the numbers will be the same.
sel disk 0
list part

REM Perform the following only if you need to shrink a partition to make space for the EFI partition.
REM Choose the appropriate partition from the list.  I used my C: partition.
sel part 2
shrink desired=260
REM End of shrinking operation.

REM Create a new EFI partition:
create part efi size=260
format quick fs=fat32
list vol
REM Find your newly created volume in the list.  If it's not already selected (marked with an asterisk), select it now with "sel vol #".
REM You'll need to give the volume a drive letter for later:
assign
list vol
REM Note the drive letter that the volume has been given.  Mine was F:, so I'll use that in the example.
REM Done creating new EFI partition.

REM Optionally create a new System Reserved partition:
create part msr size=1000
REM Done creating new System Reserved partition.

REM We're done with diskpart.exe:
exit
REM You should no longer see the DISKPART> prompt.

REM Note that you may need to change these drive letters, particularly F:.  F: should match the volume you created previously.
bcdboot C:\Windows /s F: /f UEFI

REM We no longer need a drive letter for the EFI partition, so we should remove it:
diskpart
list disk
REM Change disk number appropriately.
sel disk 0
list vol
REM Change volume number appropriately.
sel vol 2
REM Remove drive letter assignment:
remove
REM Exit diskpart.exe:
exit

REM Exit cmd.exe:
exit

пришло время перезагрузиться, чтобы убедиться, что все работает. Возможно, потребуется обновить порядок загрузки BIOS параметры в соответствии с изменениями. В моем случае настройки BIOS были уже правильными, поэтому я застрял в цикле перезагрузки; каждый раз, когда я хотел загрузить свой компьютер, мне приходилось вручную выбирать старый диск с неуместным разделом EFI.

Если все работало, как ожидалось, вы сможете удалить старый раздел EFI. Если он не работает, или ваш BIOS по-прежнему настроен для загрузки со старого раздела, Windows не позволит вам удалить его, даже если вы используете флаг переопределения в diskpart.исполняемый. Так как вы, вероятно, хотите избавиться от этого старого раздела В любом случае, удаление это отличный способ, чтобы убедиться, что вы загружаетесь с нового раздела.

diskpart
list disk
REM Change disk number appropriately.
sel disk 2
list part

REM You can repeat this next group of steps to delete as many "special" partitions as you like.  I had 4 reserved partitions from an old OEM installation.  Just make sure you don't delete your data!  The "override" flag is only necessary for partitions that can't normally be deleted.
REM Change partition number appropriately.
sel part 1
del part override

REM When you're done, exit diskpart.exe:
exit

REM Exit cmd.exe:
exit
4
отвечен Zenexer 2022-12-15 16:59

Я знаю, что это старый пост, но я думаю, что хороший ответ все еще нужен многим.

это применимо для Windows 7, 8, 10. А также действителен для события id: 12290 если ЭФИ-раздел находится на другой диск, затем на ту, что активных ОС и должны быть поддержаны.

сначала отключите любой другой диск, содержащий EFI-разделы, чтобы случайно не изменить его.

после этого вы должны создать новый раздел на 100-300Мб на диске вы хотите EFI-раздел находиться на. Если диск заполнен, сначала необходимо сжать один из существующих разделов.

Boot, в моем случае, xubuntu 13 (ubuntu выше 12.1 я думаю) с usb-stick, live. Не устанавливайте его.

открыть Gparted и создать раздел и отформатировать его в FAT32. Пометить диск как "загрузки" и снять отметку любой другой раздел flaged как "загрузки". Также присвоить новому разделу букву диска, если это возможно. Если нет, вы можете сделать это с помощью diskpart позже на.

Перезагрузка и теперь загрузиться с Windows (RE) восстановления с установочного DVD-диска Windows. Переходим к команде promt. Запустите diskpart и назначьте новому разделу driveletter, если это невозможно в Gparted. Выйдите из diskpart в командной Промт.

теперь вы собираетесь скопировать необходимые файлы Инте новый раздел.

{bcdboot /S: / f UEFI} обратите внимание на пробелы!

пример: {bcdboot c:\Windows /s: / f UEFI}

эта команда также даст разделу EFI-статус.

перестроить BCD с помощью следующей команды:

{bootrec / RebuildBcd}

теперь, когда вас спрашивают, какую ОС вы хотите добавить в EFI-раздел, вы говорите " Да "тем, кого хотите включить, и" нет " тем, с которыми вы не хотите загружаться. Как в моем случае, недавно я обновился до Windows 10, и как вы знаете, окна-магазина вы старую Windows 7/8, если вы не удалили его самостоятельно. Эта копия старой ОС не то, что вы обычно хотели бы иметь возможность загрузиться. Это нормально recides в Windows.старый. Так что не выбирайте все альтернативы.

Я не знаю, но я думаю, что эта команда ищет только установки Windows. Если у вас есть ОС linux, например, на том же компьютере. Затем вы должны использовать что-то вроде bcdedit впоследствии, чтобы получить на загрузки meny, а также.

есть последняя команда, которую я не использовать.

{bootrec / fixboot}

Я попытался узнать больше об этой команде, и я думаю, что он просто установил флаг загрузки на efi-раздел и делает его загрузочным. Это должно быть так же, как когда я пометил efi-раздел как загрузку в Gparted.

Если был другой efi-раздел, который вы больше не хотите, самый простой способ-снова загрузиться в linux/gparted и удалить его оттуда.

2
отвечен Joelbit 2022-12-15 19:16

Я создал новую установку на новый SSD-диск, используя оригинальный установочный ISO (DVD) W10. Установка пошла на тип MBR вместо GPT. Мне нужна была безопасная загрузка, поэтому мне пришлось конвертировать эту новую установку (без потери данных) из MBR в GPT.

затем я создал свободное пространство (260 МБ), сжимая последний NTFS partiton в конце диска (я загрузил Linux с SystemRecueCD с USB-накопителя и использовал gparted, но менеджер дисков из Windows 10 может быть использован слишком.)

затем я сформировал этот новый небольшой раздел в FAT32 (это можно сделать и в Windows, и в Linux). Я скопировал файлы из оригинального EFI в этот новый раздел (я сделал это в Linux, потому что Windows не нравятся два диска с буквой диска с именем C:).

затем я изменил MBR на GPT с помощью gdisk в Linux. Я использовал gdisk, а затем этот небольшой раздел должен быть изменен на тип ef00 (EFI) и отмечен как загрузочный (должен быть только один, поэтому загрузочный флаг должен быть удален из оригинальный загрузочный диск C:).

затем я изменил тип загрузки в настройках ноутбука на UEFI-только чтобы убедиться, что он действительно загружается EFI. Windows не загружалась, так как отсутствовал какой-то файл (с именем efi).

затем я загрузился с установочного DVD-диска Windows 10, выбрал "Rescue system", а затем что-то вроде"Fix boot problems". Тогда Win10 загрузится без проблем. Никакое ручное intevention не требуется bcdboot.

конфигурация EFI смогла быть проверено утилитой efibootmgr в Linux.

1
отвечен Milan Kerslager 2022-12-15 21:33

Хорошо, давайте добавим еще одно решение. Моей целью было не только скопировать EFI раздел, но даже учесть other скрытые. Я не уверен, имеет ли значение заказ (у меня лично был другой, чем описано на msdn), но без него.

во всяком случае, я использовал GParted Live для подвига. После того, как вы получили его загрузки, уменьшить основной раздел Windows (что должно быть C:) того же количества MiB разделов, что и вы отсутствует на новом диске и переместите его в конец. Это займет некоторое время.

затем я приступил к созданию нового раздела 16MiB чуть ниже недавно измененного, где dd раздел MSR (для причины похоже, parted не может обрабатывать неформатированные FS). Как всегда, при использовании dd будьте предельно осторожны с командами.

после этого я вернулся к GParted GUI и вручную установить правильные флаги и имя для нового раздела MSR, затем удалил оригинал. И последнее, но не менее важное: я наконец-то скопировал восстановление и EFI раздел с оригинального жесткого диска на SSD (и повторил операции имена / флаг) и запустить sgdisk -s закрепить порядок раздела.

Перезагрузка, и прибыль! Не нужно возиться с efibootmgr или bcdboot, по крайней мере, на моем ноутбуке он автоматически нашел новый ESP.

EDIT: если при расширении первого диска по какой-то причине диспетчер дисков Windows преобразует его в динамический том.. Проверка этот способ.

0
отвечен mirh 2022-12-15 23:50

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя

Похожие вопросы про тегам:

hard-drive
partitioning
ssd
uefi
windows-8
Вверх