rEFInd mostrando 3 ubuntu .efi em vez de 2

1

Isso não é realmente um problema, embora eu esteja apenas curioso para saber por que de repente eu vejo o 3 ubuntu, em vez do usual 2. Deve ser o grub64.efi e o shim64.efi. Embora agora seja grub64.efi, vm-linuz-3.13.0.32-generic.efi.signed by UBUNTU

e vm-linuz-3.13.0.52-generic.efi.signed by UBUNTU

Por que isso? Qual deles devo usar? Eu uso o grub64.efi, e estou perguntando qual é a diferença e devo usar alguns dos outros? Essa mudança aconteceu assim que instalei o bcmwl para que meu Wi-Fi funcionasse.

Estou usando o linux 14.04 LTS (Trusty Tahr)

O sistema operacional nativo é o Mac OS X 10.10.3

    
por TheBro21 10.05.2015 / 19:37

2 respostas

2

A resposta é dada na descrição das entradas de inicialização:

3.13.0. 32 -genérico vs. 3.13.0. 52 -genérico , isto é, o este último irá inicializar um kernel mais recente.

Isso se deve à prática do Ubuntu (outras distros fazem isso também) de manter imagens mais antigas do kernel quando uma nova é instalada, para que você possa facilmente reverter se a atualização não funcionar como deveria ou se recusar a inicializar.

Você pode, no entanto, desinstalar manualmente imagens de kernel genéricas mais antigas usando

sudo apt-get remove linux-image-(old version string)-generic

ATENÇÃO : Nunca desinstale vários kernels ao mesmo tempo usando regexes ou globs, mas remova apenas um de cada vez e sempre verifique a saída de uname -r , fornecendo a versão atual do kernel, que você não deve remover. Senão, você assumirá o risco de um único erro de digitação, excluindo todos os seus kernels e tornando seu sistema não inicializável ...

    
por s3lph 10.05.2015 / 20:08
3

O rEFInd foi projetado para remover automaticamente algumas entradas redundantes. Uma dessas redundâncias é shimx64.efi , se grubx64.efi também estiver presente. Portanto, sua declaração de que "[i] t deve ser grub64.efi e shim64.efi" não está correta, a menos que você tenha criado uma sub-rotina de inicialização manual para um ou ambos os arquivos.

No seu caso, você tem três entradas:

  • grubx64.efi - Este é o binário do GRUB que o Ubuntu instalou. Selecioná-lo inicia o GRUB, que carrega o kernel do Linux e o inicializa usando o mecanismo do carregador de inicialização GRUB para o kernel do Linux. O GRUB pode apresentar seu próprio menu ou não, dependendo de sua configuração. É provável que este menu inclua opções para todos os seus kernels Linux, e talvez para outros sistemas operacionais ou funções especiais. Se você não selecionar nenhuma opção no menu do GRUB, provavelmente lançará o kernel mais recente (atualmente 3.13.0-52)
  • vm-linuz-3.13.0.32-generic.efi.signed - Esta opção carrega o kernel 3.13.0-32 Linux, que é o kernel que vem com o Ubuntu 14.04 LTS (a versão lançada em abril de 2014). rEFInd lança o kernel como se fosse um aplicativo EFI, contando com o carregador stub EFI como gerenciador de partida e ignorando o GRUB.
  • vm-linuz-3.13.0-52-generic.efi.signed - Esta opção é como a anterior, exceto pelo fato de que ela lança o kernel 3.13.0-52 mais atualizado, que inclui correções de bugs e novos recursos coletados ao longo do ano passado.

Como uma questão prática, você deve usar o que funciona melhor para você. Na maioria dos casos, a opção GRUB e a opção rEFInd para o kernel mais recente resultarão em sistemas que funcionam de forma idêntica pela maioria das medidas. Pode haver algumas pequenas diferenças, como uma linha Command line: ligeiramente diferente na sua saída dmesg , mas elas não terão efeitos práticos. Dependendo da configuração do GRUB e do conteúdo de /boot/refind_linux.conf , pode haver outras diferenças, como mensagens de inicialização gráficas versus de texto; ou, em casos extremos, um pode inicializar e o outro não. É provável que uma inicialização direta do kernel seja mais fácil de corrigir se algo der errado, porque o GRUB pode ser complexo e difícil de depurar. Além disso, se você quiser inicializar um kernel mais antigo por algum motivo, fazê-lo no menu rEFInd pode ser um pouco mais fácil do que fazê-lo a partir do GRUB, especialmente se o GRUB estiver configurado para inicializar sem mostrar seu próprio menu. OTOH, se não houver nenhum arquivo /boot/refind_linux.conf ou se ele estiver configurado incorretamente, o GRUB poderá inicializar corretamente onde a inicialização direta do kernel do rEFInd poderá falhar ou configurar as coisas de maneira insuficiente.

Conforme você continua a usar e atualizar o sistema, você pode ver opções adicionais de kernel direto aparecerem no menu do rEFInd. Você pode desinstalar manualmente os kernels que você sabe que não vai usar; ou digitar sudo apt-get autoremove em um Terminal removerá todos menos três deles (geralmente o kernel original e os dois mais recentes). Geralmente é uma boa ideia manter pelo menos dois kernels ao redor. A razão é que os bugs do kernel às vezes são introduzidos, então você quer ter a opção de inicializar de volta para um kernel mais antigo, caso você tenha um problema semelhante.

Se você quiser remover as opções que não está usando na exibição de rEFInd, poderá fazê-lo de várias maneiras:

  • Você pode usar as opções dont_scan_volumes , dont_scan_dirs e dont_scan_files em refind.conf (geralmente em /boot/efi/EFI/refind/ do Ubuntu). Essas opções removem carregadores de inicialização específicos do menu com base em locais ou nomes de arquivos sem realmente excluí-los.
  • Você pode definir scan_all_linux_kernels false em refind.conf . Isso fará com que o rEFInd ignore os kernels do Linux que não possuem extensões .efi . (Observe que seus kernels têm .efi.signed extensões, que serão ignoradas com essa opção definida como false .)
  • Você pode remover o driver EFI do sistema de arquivos no qual seu kernel reside. Esse driver geralmente está em /boot/efi/EFI/refind/drivers_x64 do Linux. A remoção desse driver removerá todas as opções diretas de inicialização do Linux.
  • Você pode excluir os arquivos totalmente. Isto não é uma opção se você quiser remover as entradas que iniciam diretamente o kernel do Linux, já que o GRUB precisa desses arquivos para inicializar o Linux; mas você pode considerá-lo se não quiser ver a opção GRUB ou se alguma outra coisa estiver aparecendo (digamos, uma entrada de inicialização antiga do Windows para uma instalação do Windows que você excluiu). A maioria das entradas de inicialização aparecerão nos subdiretórios de /boot/efi/EFI/ no Ubuntu, mas algumas podem estar em outro lugar.

Se você tiver precisamente as três entradas que descreveu, se remover as entradas diretas do kernel, provavelmente seria melhor ignorar o rEFInd e usar o GRUB diretamente - afinal, não faz sentido ter um gerenciador de inicialização com apenas uma opção de inicialização. Remover a entrada do GRUB pode fazer algum sentido, mas tê-la disponível também vale a pena no caso de você ter um problema com o carregador de stubs EFI na linha.

    
por Rod Smith 10.05.2015 / 20:26