Pergunta: Remover vários itens de inicialização?

11

Acabei de instalar o Ubuntu em uma unidade separada (não particionada com nenhum outro SO), bem como com o rEFInd, no meu Mac Pro. Consegui fazer com que tudo fosse iniciado corretamente e posso inicializar em qualquer um dos locais do rEFInd sem problemas. O problema é que eu tenho 3 itens extras carregando no gerenciador de inicialização que eu meio que quero me livrar. Eu tenho procurado respostas e ainda nada parece funcionar. Além do meu OS X, Windows 7 e Ubuntu Grubx64 (o que isso significa), tenho os seguintes itens:

boot \ vmlinuz-3.11.0-18-generic.efi.signed
boot \ vmlinuz-3.11.0-15-generic.efi.signed
OS herdado da inicialização do volume total do disco

Eu continuo vendo as pessoas dizerem "bem, tente isso" e elas apenas dão o método sem dar as instruções de como realmente fazê-lo. Alguém pode me dar um conjunto simples de instruções sobre como ocultá-las?

whitecrow1
fonte

Respostas:

7

Existem várias maneiras de fazer o que você deseja, mas primeiro, entenda que você tem três (ou talvez quatro) entradas que inicializam o Ubuntu de maneiras diferentes:

  • A grubx64.efientrada inicia o GRUB, que, por sua vez, inicia o kernel do Linux (e também pode oferecer seu próprio menu para inicializar outras coisas, dependendo de como está configurado).
  • A boot\vmlinuz-3.11.0-18-generic.efi.signedentrada inicia o kernel 3.11.0-18 genérico sem usar o GRUB. (Ele é inicializado através do carregador de stub EFI , que é incorporado ao próprio kernel.)
  • A boot\vmlinuz-3.11.0-15-generic.efi.signedentrada lança o kernel 3.11.0-15 genérico - um kernel um pouco mais antigo que o anterior.
  • A opção "Boot Legacy OS ..." pode iniciar uma versão do GRUB no modo BIOS - você não descreve o que acontece quando seleciona essa opção; portanto, não está claro se faz isso ou se é útil.

De qualquer forma, a grande distinção aqui é entre o GRUB e o stub loader EFI. Na maioria dos casos, as duas abordagens para inicializar o Linux funcionam igualmente bem, mas às vezes uma funciona melhor que a outra. Pessoalmente, eu não gosto do GRUB; IMHO é inchado e desnecessariamente complexo. É também uma etapa extra no seu caminho de inicialização, já que você provavelmente precisa de refEnd para gerenciar sua inicialização tripla em um Mac. OTOH, GRUB é a maneira padrão de inicializar o Ubuntu. Observe que, embora o GRUB possua apenas uma entrada no rEFInd, seu próprio menu (se você o definir para aparecer) provavelmente permitirá que você inicialize um dos dois kernels do Linux que o rEFInd permite inicializar diretamente.

Pessoalmente, eu manteria todas essas três entradas (GRUB e os dois kernels), pelo menos se todas funcionassem. O motivo é que eles oferecem várias opções para inicializar seu computador; se um falhar, você terá os outros como substitutos. Observe que é provável que sua seleção de kernel aumente conforme você atualiza seu sistema e novos kernels são lançados. Você pode manter a lista em dois ou três usando sudo apt-get autoremoveuma vez que a lista crescer além desse limite.

Se você deseja remover entradas, você tem várias opções, a maioria das quais envolve edição refind.conf(que provavelmente está no /boot/efi/EFI/refindLinux):

  • Adicione os nomes de arquivo para os quais você deseja evitar a digitalização dont_scan_files. Observe que ocultar kernels individuais dessa maneira é ineficiente, pois você precisará atualizar a lista quando novos kernels forem instalados. Essa poderia ser uma boa maneira de ocultar o GRUB.
  • Adicione o (s) diretório (s) onde estão descritos os gerenciadores de inicialização indesejados dont_scan_dirs. (Por exemplo, bootpara remover os kernels do Linux ou EFI/ubuntupara remover o GRUB.)
  • Adicione os nomes de volume associados aos carregadores de inicialização indesejados dont_scan_volumes. Observe que esta é a única dont_scan_*opção que funciona com as opções de inicialização do BIOS / CSM / legado; adicione qualquer subconjunto do nome relevante para bloquear essa entrada.
  • Para desabilitar todas as opções de inicialização de BIOS / CSM / legado baseadas em disco, remova o comentário scanfore verifique hdbiosse não está entre as opções. Isso provavelmente é indesejável no seu caso, já que você diz que está inicializando o Windows 7 e que normalmente inicializa no modo BIOS / CSM / legado. Se você conseguiu instalar o Windows no modo EFI, essa pode ser uma boa opção.
  • Para remover as opções do kernel e todas as opções futuras do kernel, você pode remover o driver do sistema de arquivos EFI para o seu sistema de arquivos Linux do subdiretório drivers( drivers_x64ou drivers_ia32, dependendo da sua arquitetura) do EFI/refinddiretório em seu ESP. Isso tornará o rEFInd incapaz de localizar os kernels do Linux; portanto, essas opções desaparecerão. O GRUB não depende desses drivers, portanto continuará funcionando.
  • As opções de BIOS / CSM / legado aparecem somente quando o rEFInd pensa que foi detectado o código de inicialização no MBR de um disco ou em uma partição. Dada a descrição da sua opção "Boot Legacy OS ...", o rEFInd provavelmente encontrou o código de inicialização no MBR. No entanto, os erros em algumas versões recentes do rEFInd causam erros de identificação do local; portanto, se você não estiver usando a versão 0.8.7, essa identificação pode estar incorreta.) A limpeza do código de inicialização pode remover uma entrada do menu do rEFInd. Essa abordagem é perigosa, no entanto. Eu recomendo experimentá-lo apenas se você já entender como fazê-lo, e é por isso que deliberadamente não estou fornecendo instruções explícitas para fazê-lo - eu poderia escrever uma resposta completa sobre como executar essa tarefa e provavelmente ainda estaria incompleta.

As refind.confopções são descritas em mais detalhes nos comentários dentro refind.confe na página de documentação de configuração do rEFInd.

Rod Smith
fonte
Assim, praticamente do diretório de inicialização, pude mover os kernels indesejados para o novo diretório, que os removeu com segurança da tela do gerenciador de inicialização. Se tiver algum problema futuro, posso puxar minhas outras unidades de SO, o que causará um desvio para o gerenciador de inicialização e iniciar o ubuntu diretamente. Agora é só uma questão de descobrir o "Boot Legacy OS", que acaba de lançar o boot camp e me levar ao Windows 7 também. Obrigado por sua ajuda neste assunto. É uma experiência bastante divertida de aprendizagem
whitecrow1
1
Você NÃO deve mover seus arquivos do kernel! O GRUB também depende deles estarem onde estão! Você pode se safar em determinadas circunstâncias, mas, na melhor das hipóteses, é uma ação muito arriscada a ser tomada!
Rod Smith
0

Easy Fix

No menu do carregador de inicialização ref , você pode ocultar as entradas excedentes selecionando as entradas extras pressionando as setas do teclado e pressionando a tecla Delete ! Uma confirmação será exibida ... ao selecionar sim, a entrada fica oculta e seu bootloader está pronto!

Felicidades!

Soujatya Sarkar
fonte
1
Curiosidade: a outra resposta foi escrita pelo desenvolvedor do rEFind.
Organic Marble
Pergunte a ele se estou errado, porque eu resolvi meu problema com esta solução.
Soujatya Sarkar 04/03