Arch Linux UEFI menu de inicialização desordem

0

Meu menu de inicialização ficou assim logo após a instalação do Arch Linux:

1. reFind boot manager
2. Windows boot manager
3. SanDisk partition 1
4. Kingston partition 1

Onde o SanDisk é a unidade do Linux e a Kingston é a unidade do Windows.

De vez em quando eu checava as entradas do menu de inicialização e eles começaram a parecer mais com isso:

1. reFind boot manager
2. Windows boot manager
3. SanDisk partition 1
4. SanDisk partition 1
5. SanDisk partition 1
6. Kingston partition 1

Agora eles se parecem com isso:

1. reFind boot manager
2. Windows boot manager
3. SanDisk partition 1
4. SanDisk partition 1
5. SanDisk partition 1
6. SanDisk partition 1
7. SanDisk partition 1
8. SanDisk partition 1
9. SanDisk partition 1
10. SanDisk partition 1
11. SanDisk partition 1
12. SanDisk partition 1
13. SanDisk partition 1
14. SanDisk partition 1
15. SanDisk partition 1
16. SanDisk partition 1
17. SanDisk partition 1
18. SanDisk partition 1
19. SanDisk partition 1
20. SanDisk partition 1
21. SanDisk partition 1
22. SanDisk partition 1
23. SanDisk partition 1
24. SanDisk partition 1
25. Kingston partition 1

O que pode estar causando esse "spam" de entradas de inicialização? A partição 1 do SanDisk é onde o / boot está localizado para o Arch linux. Eu tenho systemd-boot instalado e reFind para gerenciar várias unidades. Eu tentei piscar o UEFI e não ajudou. Eu acho que 25 entradas é o limite, já que não está mais aumentando. Qualquer ajuda seria bem vinda.

    
por Rtsne42 18.08.2016 / 19:52

1 resposta

2

Meu primeiro comentário é que você provavelmente não precisa dos dois rEFInd e systemd-boot. É concebível que um ou outro (provavelmente não REFInd, a menos que os desenvolvedores do Arch tenham feito alterações significativas em seus scripts) esteja causando as entradas duplicadas, a menos que você tenha uma razão convincente para manter ambos os gerenciadores de inicialização instalados, removendo um deles pode impedir que mais entradas apareçam. Este é um tiro no escuro, mas como regra geral, é bom não instalar mais software do que o necessário, pois isso pode causar problemas bizarros em alguns casos.

Também há uma pequena chance de que algum outro programa de inicialização esteja sendo lançado sem o seu conhecimento e esteja causando esse problema. Eu vi relatos de erros sobre algumas ferramentas da Red Hat, que são projetadas para corrigir problemas com o firmware defeituoso que esquece as entradas de inicialização, fazendo isso. Eu não segui esse problema muito de perto, mas acho que esse bug já está consertado. Além disso, ele normalmente replica a entrada do Fedora, não algo mais genérico como sua entrada SanDisk partition 1 , então duvido que esse software específico seja o culpado; Eu menciono isso apenas como um exemplo de uma causa possível . Pesquisando seu ESP por .efi arquivos que você não entende - e particularmente para arquivos que podem ser lançados por sua entrada de inicialização padrão, mas que não são o gerenciador de inicialização pretendido - pode valer a pena.

A causa mais provável, no entanto, é um erro de firmware. Você não diz qual código do sistema de arquivos ou partição deu à sua partição /boot , mas se esse é o seu ESP (como é comum nas instalações do Arch), seu firmware pode estar procurando por um carregador de inicialização substituto ( EFI/BOOT/bootx64.efi ) e adicionando uma entrada para ele em cada inicialização. Normalmente, é claro, não deve fazer isso em todas as inicializações; mas se houver um bug, todas as apostas serão canceladas. Se não houver um carregador de boot de fallback nesse sistema de arquivos, isso pode ser o que está provocando o bug. Examinar a natureza da entrada de inicialização com efibootmgr -v no Arch Linux pode fornecer algumas dicas.

Você pode remover entradas em excesso com efibootmgr , como em efibootmgr -b 3 -B para remover a entrada Boot0003 . É claro que, se o firmware estiver constantemente adicionando as entradas de volta, você precisará escrever um script de inicialização para localizar e excluir as entradas em excesso - ou apenas viver com elas bagunçando o menu de inicialização. Se você puder descobrir o que está provocando o bug, poderá reconfigurar o sistema para evitar o acionador - digamos, adicionando um arquivo EFI/BOOT/bootx64.efi , se a ausência dele for o acionador.

Uma solução melhor a longo prazo, se tiver razão, é atualizar seu firmware. (A placa-mãe ou o fabricante do computador provavelmente chama esses upgrades de "atualizações do BIOS" ou algo similar.) Isso pode ou não eliminar o problema daqui para frente. provavelmente não eliminará as entradas em excesso existentes, mas pode impedir que novas sejam criadas. Esteja ciente de que a atualização pode também ter o efeito negativo de excluir suas entradas válidas, portanto, você deve estar preparado com um meio de inicialização de emergência no caso de precisar recriar essas entradas após atualizar seu firmware. / p>     

por 20.08.2016 / 02:37