O problema com uma configuração de distribuição múltipla do Linux é que você acabará com várias instalações do GRUB, o que é redundante e confuso. Cada distribuição irá configurar seu próprio GRUB como padrão e configurá-lo para encadear os GRUBs de outras distribuições ou inicializar seus kernels diretamente (ou talvez fazer as duas coisas). Existem problemas com isso:
- Quando você inicializa uma distribuição cujo GRUB não é o principal e atualiza seu kernel, é provável que a configuração do GRUB de controle não seja atualizada. Se o GRUB de controle inicializar os kernels de outras distribuições diretamente e se as atualizações do kernel acontecerem com freqüência suficiente, a distribuição com kernels atualizados poderá parar de inicializar porque os kernels originais terão desaparecido. Mesmo que a distribuição continue a ser inicializada, será através de um kernel antigo que pode ter problemas de segurança ou outros. Você terá que ir para a distribuição cujo GRUB está no comando e executar
update-grub
(ou algo equivalente) para que ele funcione novamente. Uma configuração de carga de cadeia é mais robusta contra esses problemas, então, se você tiver uma escolha, é assim que eu a configurei. - Após uma atualização para seus próprios pacotes do GRUB, muitas distribuições tentarão redefinir seus próprios GRUBs como padrão. O resultado pode ser aquele que as inicializações do GRUB primeiro mudarão de vez em quando. Se alguém faz um trabalho melhor do que os outros, você terá que usar
efibootmgr
para redefinir as prioridades de inicialização de tempos em tempos. - Se você excluir a distribuição cujo GRUB é iniciado por padrão, as chances são de que o GRUB pare de funcionar. (Isso nem sempre é o caso, pois depende de onde o GRUB armazena seus arquivos de configuração, mas é a maneira como a maioria das distribuições configura as coisas.) Você pode ignorar esse problema usando o gerenciador de boot interno do firmware, mas ainda é um incômodo - e um problema sério para os usuários que não sabem como usar o gerenciador de inicialização do firmware. (Após a primeira inicialização, quando isso acontecer, você precisará instalar outra distribuição ou usar
efibootmgr
para definir outro GRUB como padrão para evitar a necessidade de usar o gerenciador de inicialização do firmware).
Esses problemas não são intransponíveis, mas são incômodos. Configurar o um gerenciador de inicialização como padrão ignora esses problemas, mas geralmente requer configuração manual que provavelmente levará mais esforço do que para superar os problemas que acabei de descrever. rEFInd (que eu mantenho) é projetado para contornar esses problemas sendo menos dependente dos arquivos de configuração. Em particular, o rEFInd não precisa da configuração por kernel, da qual todos os outros gerenciadores de boot do Linux que eu conheço precisam. Em vez disso, o rEFInd depende de um arquivo de configuração que fornece opções que se aplicam ao kernel every em um determinado diretório. Isso requer alguma configuração inicial explícita quando você instala uma distribuição, mas isso é uma questão de executar um script que vem com rEFInd ( mkrlconf
). Posteriormente, quando você atualizar seu kernel, o rEFInd não precisará de reconfiguração; apenas pega as opções antigas e as aplica ao novo kernel. (Note que o GRUB precisa de reconfiguração após uma atualização do kernel. O Ubuntu esconde isso executando scripts para fazer a reconfiguração como parte do processo de atualização / instalação do kernel - mas como mencionado anteriormente, esses scripts atualizam apenas uma configuração do GRUB, que pode não ser aquele que precisa ser atualizado.)
Se você instalar o rEFInd, ainda terá o problema de cada distribuição tentando definir seu próprio GRUB como o padrão. Normalmente há maneiras de contornar isso, no entanto. Para o Ubuntu, em vez de inicializar o meio de instalação e selecionar a opção para instalar diretamente, você deve inicializar no modo "tentar antes de instalar", abrir uma janela do Terminal e digitar ubiquity -b
. Isto irá executar o instalador e dizer para não instalar o GRUB. O mesmo truque obviamente também pode ser usado se você quiser que o GRUB de outra distribuição manipule tudo. Para inicializar após a instalação dessa maneira, o rEFInd precisará já ter sido instalado; ou você pode inicializar com o rEFInd em uma unidade flash USB ou CD-R e instalá-lo então.
Você pode descobrir como é fácil desativar o GRUB em cada distribuição que planeja instalar. Usando essas informações, em conjunto com seus próprios planos e prioridades, você pode decidir qual (is) você deseja instalar e quais você deseja ignorar.
Outra opção para tudo isso é usar a virtualização, como o VirtualBox. Se você tem memória suficiente, você pode executar meia dúzia de distribuições simultaneamente em máquinas virtuais enquanto outra controla o computador como um todo. Essa abordagem ignora os conflitos do boot loader, tornando a configuração muito mais simples - cada sistema operacional é totalmente responsável por seu próprio "computador".