Como redimensionar a partição do sistema EFI?

1

Eu quero aumentar o tamanho da partição de sistema EFI para 750MiB assim.Eu posso instalar o Arch Linux junto com o Windows 10 porque a partição de sistema EFI do Windows me deu que é apenas 100MiB é muito pequeno. O Arch Linux recomenda que você monte o ESP em /boot em vez de /boot/efi e 100MiB seja muito pequeno para /boot . Eu não quero tocar na partição de recuperação.

    
por user18297 17.07.2017 / 23:59

3 respostas

5

A comunidade do Arch tomou a Especificação do Carregador de Boot do Freedesktop.org . AFAIK, Arch e seus derivados são as únicas distribuições para fazer isso, e mesmo no Arch, não é necessário. A Especificação do Carregador de Boot recomenda usar uma partição FAT compartilhada, como o ESP, como o local para armazenar os kernels do Linux, juntamente com um sistema para isolar os kernels de uma distribuição de outra nessa partição e gerenciar a configuração do carregador de inicialização para os kernels. p>

A especificação do carregador de boot é uma tentativa de resolver alguns problemas reais com a coexistência de distribuição do Linux em computadores de inicialização múltipla; no entanto, por ter sido adotado por apenas uma grande distribuição, mesmo após vários anos de existência, não oferece nenhum benefício prático. Além disso, o Boot Loader Specification está intimamente ligado ao gerenciador de boot systemd-boot, que é bastante impopular, exceto na comunidade Arch. Embora o systemd-boot tenha algumas vantagens, a menos que você esteja familiarizado o suficiente com o campo para entender essas vantagens e saber que precisa delas, talvez não queira começar a configurar coisas de formas estranhas (como montar o ESP em /boot ) apenas para permitir o uso do systemd-boot. Além disso, o systemd-boot tem uma desvantagem enorme : ele pode iniciar programas de inicialização subseqüentes (incluindo kernels Linux) somente a partir da partição a partir da qual foi lançado. Isso, por sua vez, significa que, se você usar o systemd-boot, estará bastante empenhado em armazenar o systemd-boot, seus kernels do Linux e os gerenciadores de inicialização de outros sistemas operacionais (como o Windows) em uma partição - o ESP. Isso está de acordo com a visão da Especificação do Carregador de Boot, mas cria seus próprios problemas.

Dito isto, se você quiser ampliar um ESP, você pode fazê-lo com várias ferramentas; no entanto, isso significa que você precisará reduzir a partição a seguir de seu ponto inicial. Isso é mais arriscado e consome mais tempo do que encolher uma partição do seu final, então eu strongmente recomendo fazer o backup da partição a seguir. Além disso, em um computador Windows, a partição após o ESP provavelmente será uma partição reservada da Microsoft, que é basicamente apenas uma partição vazia que o Windows usa para espaço de rascunho. Ele normalmente não possui sistema de arquivos, portanto, a maioria das ferramentas de particionamento não permite que você o reduza - e o Windows gosta de um tamanho específico (100 MiB ou 128 MiB, IIRC). Você pode, em vez disso, precisar reduzir a partição seguindo a partição reservada da Microsoft, excluir a partição reservada da Microsoft e criar uma nova. Isso tudo é um enorme problema e aumenta muito os riscos envolvidos na instalação de um novo sistema operacional.

Em vez disso, você pode querer criar um novo ESP em outro lugar no disco. Depois de criar espaço para o Arch Linux, você pode criar um novo ESP e outras partições para o Arch Linux. Dependendo do gerenciador de inicialização que você usa, você pode simplesmente ter Archs separados e Windows ESPs; ou você pode mover os arquivos do carregador de inicialização do Windows para o novo ESP e excluir ou reutilizar o ESP original. Observe que, como o systemd-boot não pode iniciar carregadores de inicialização que residem em partições diferentes das suas, se o motivo para montar o ESP como /boot é que você deseja usar systemd-boot, será necessário mover o Windows carregador de boot para o novo ESP, se você pretende iniciá-lo a partir do systemd-boot. Além disso, a última vez que eu verifiquei (que estava com o Windows 7, então isso pode não ser mais verdade), o instalador do Windows ficou muito confuso e não funcionou se viu dois ESPs em um disco, impossibilitando a instalação do Windows em tal disco . Assim, se você definir as coisas com dois ESPs, você pode ter problemas no caminho. Esses problemas podem ser facilmente superados alterando temporariamente o código de tipo de partição do ESP não Windows, mas você deve estar ciente dessa solução alternativa.

Em suma, embora reconheça que a comunidade do Arch gosta de montar o ESP em /boot e usá-lo para armazenar os kernels do Linux que são (frequentemente) lançados via systemd-boot, essa abordagem cria complicações e poucos ou nenhum benefício significativo . No geral, é melhor você usar o GRUB 2 ou o meu próprio rEFInd, que caberão no seu pequeno ESP e no lançamento grãos armazenados em outro lugar. A minha página Carregadores de inicialização da EFI para Linux descreve as opções do gerenciador de inicialização do Linux e do gerenciador de inicialização em mais detalhes.

    
por 18.07.2017 / 19:53
1

Esta questão está entre os principais resultados no Google para "Como redimensionar a partição do sistema EFI" (não é surpreendente, dado que é o título da pergunta), mas as respostas atuais aqui, embora contenham bons conselhos para a situação do OP e informações geralmente úteis , na verdade, não tente responder a essa pergunta como indicado. Minha tentativa anterior (agora deletada) de responder a essa questão foi rejeitada, então aqui está uma mais completa.

Há uma boa chance de você estar lendo isso porque você tentou a coisa óbvia (use o gparted) e obteve o erro "O GNU Parted não pode redimensionar esta partição para este tamanho. Estamos trabalhando nisso!". Você também pode ter tentado fazer isso de dentro do Windows (usando o Gerenciamento de Disco), apenas para descobrir que o Windows se recusa a executar qualquer operação com o ESP.

Bem, a próxima melhor coisa para realmente redimensionar a partição é recriá-la. Aqui estão os passos detalhados para fazer isso:

  1. Se você estiver redimensionando o ESP do disco em que está inicializando, verifique se há alguma mídia de resgate inicializável disponível que possa ser usada para reparar o sistema, caso as coisas corram mal. Ter uma cópia de segurança dos seus dados antes de fazer qualquer operação de particionamento de disco é uma boa ideia em geral.

  2. Se você estiver ampliando o ESP, crie espaço movendo ou redimensionando as partições que o seguem diretamente, usando sua ferramenta de particionamento favorita (por exemplo, gparted).

  3. Monte o ESP, se já não estiver montado:

    # mount /dev/sdx1 /mnt # replace sdx1 with ESP
    
  4. Faça um backup de seu conteúdo:

    # mkdir ~/esp
    # rsync -av /mnt/ ~/esp/
    
  5. Desmontar o ESP:

    # umount /mnt
    
  6. Exclua e recrie o ESP:

    # gdisk /dev/sdx # replace sdx with disk containing ESP
    p (list partitions)
    (ensure the ESP is the first partition)
    d (delete partition)
    1 (select first partition)
    n (create partition)
    Enter (use default partition number, should be 1)
    Enter (use default first sector, should be 2048)
    Enter (use default last sector, should be all available space)
    EF00 (hex code for EFI system partition)
    w (write changes to disk and exit)
    
  7. Formate o ESP:

    # partprobe /dev/sdx
    # mkfs.fat -F32 /dev/sdx1
    
  8. Restaure o conteúdo do ESP:

    # mount /dev/sdx1 /mnt
    # rsync -av ~/esp/ /mnt
    

Isso deveria ser tudo. Usei com êxito o procedimento acima para redimensionar o ESP para uma instalação do Windows cujo ESP era muito pequeno (50 MB) para permitir que o Windows atualizasse para a atualização do Fall Creators (antes de redimensionar o ESP, o Windows Update falhava com o erro 0x8E5E03FB e Assistente de atualização com erro 0xc1900200).

    
por 26.01.2018 / 04:25
0

Há um pouco de envolvimento em sistemas operacionais de inicialização dupla.

A primeira coisa que posso sugerir é não usar a partição do sistema EFI existente. Isso está lá para inicializar janelas. Não mexa com isso.

Em vez disso, abra o gerenciamento de disco e diminua a partição do Windows (sua principal) por um valor (por mais que você deseje usar com o Arch Linux). Sempre há um limite definido de quanto você pode diminuir, mesmo quando parece haver muito espaço no disco. Esse "problema" está resolvido em outro lugar, então não vou explicá-lo aqui. Basta lembrar qual é qual. Por exemplo. as grandes janelas, o pequeno espaço está vazio, etc.

Não se esqueça de desativar a inicialização rápida no Windows - isso é basicamente a hibernação do seu PC em vez de desligá-lo, a fim de obter uma "inicialização rápida". Se você inicializar no Linux, corre o risco de perder dados no sistema Windows.

Inicialize no ambiente de instalação do Linux (a partir de um USB ou outros) e, em seguida, configure o espaço livre que você criou no Windows e transforme-o na partição do sistema Linux. Apenas lembrando qual partição é qual. Por exemplo. não reformate a partição do Windows acidentalmente - use os tamanhos de partições que você gravou acima para verificar novamente.

    
por 18.07.2017 / 03:25