Исправление загрузки EFI Windows из Linux

Возможно использование параллелизма GNU

find / -name "HAHA" -type f | parallel 'echo mv {}
./dest-dir/{/}_`stat -c%i {}`

{/} ............. returns dirname
{/.}............. dirname with no extension
stat -c%i {}..... gets the inode for each file "whic is unique"

OBS :Я использовал echoдля тестирования, просто удалите его, если он соответствует вашим потребностям

0
05.09.2021, 21:37
1 ответ

Хорошо, по просьбе @FelixJN, вот ответ вместо ссылки.

Моя цель состояла в том, чтобы найти решение на основе Linux, поскольку, по крайней мере, использование ntldrзагрузки Windows bootmgrбыло уловкой, которую я использовал еще в старые grub/ grub4dosдни. Мол, это должно работать:

menuentry "Windows 8 UEFI/GPT" {
    insmod part_gpt
    insmod search_fs_uuid
    insmod chain
    search --fs-uuid --no-floppy --set=root 28cf-35de
    chainloader ($root)/EFI/Microsoft/Boot/bootmgfw.efi
}

но я не пробовал, так как не особо доверяю grub2 и его документации, а вместо этого обратился к решению из Windows, как и @telcoM,

run the boot repair process in UEFI mode to write the Windows UEFI bootloader onto the ESP partition

Вот подробные шаги, взятые из здесь .

  1. Вставьте носитель (DVD/USB )в ПК и перезагрузите .

  2. Загрузитесь с носителя.

  3. Выберите Восстановить компьютер .

  4. Выберите Устранение неполадок .

  5. Выберите Командная строка в меню :

    .
    1. Введите и выполните команду:

      diskpart
      
    2. Введите и запустите команду:

      sel disk 0
      
    3. Введите и выполните команду:

      list vol
      
  6. Убедитесь, что раздел EFI (EPS -Системный раздел EFI )использует файловую систему FAT32, и назначьте ему букву диска (Назначьте букву, которая еще не используется.):

  7. Введите и выполните команду:

     sel vol <number of volume>
    
  8. Введите и выполните команду:

     assign letter=<drive letter>:
    
  9. Введите и выполните команду:

     exit
    
  10. Для восстановления загрузочной записи:

    1. Введите и выполните команду:

      cd /d <drive letter>:\EFI\Microsoft\Boot\
      
    2. Введите и выполните команду:

      bootrec /FixBoot
      

На данный момент следующий шаг одинаков для всех операционных систем:

  1. Восстановить хранилище BCD

  2. Сначала запустите приведенную ниже команду, чтобы создать резервную копию старого BCD:

     ren BCD BCD.old
    
  3. Теперь заново создайте его с помощью этой команды:

     bcdboot c:\Windows /l en-us /s <boot letter>:All
    
1
06.09.2021, 15:04

Теги

Похожие вопросы