Eu tenho um computador com vários sistemas operacionais instalados em diferentes partições:
- FreeBSD
- PC-BSD
- Solaris
- Partição estendida
- / -partition para o Linux-Mint
- Trocar por Linux-Mint
- / home para o Linux-Mint
- / -partition (e tudo) para o Linux CentOS
Meu sistema operacional principal é o Linux-Mint, um derivativo do Ubuntu.
Eu tenho o GRUB2 instalado no MBR e ele (GRUB) usa dados da instalação do Linux-Mint (/ boot / grub etc.).
O FreeBSD e o PC-BSD têm seu próprio gerenciador de inicialização de segundo estágio em sua partição.
O Solaris tem sua própria instalação GRUB em sua partição (que atua como um carregador de inicialização de segundo estágio, permitindo que eu selecione entre os diferentes kernels Solaris).
O Linux-Mint e o CentOS são inicializados pelo GRUB no MBR.
+++
Meu problema é o FreeBSD e o PC-BSD - eles simplesmente não tocam bem um com o outro! Mesmo que eu tenha especificado diferentes partições-raiz, etc., nas entradas do GRUB para as duas instalações do BSD; o mesmo (ou FreeBSD ou PC-BSD) é inicializado, não importa se eu selecionei o FreeBSD ou o PC-BSD do menu do GRUB.
Inicialização * O BSD parece ser um processo de três estágios: O MBR-loader (1º estágio), carrega um segundo estágio nas partições do BSD, que finalmente carrega o kernel real (3º estágio).
Finalmente me abaixando para RTFM sobre a inicialização em * BSD, eu descobri o seguinte detalhe sobre o segundo estágio BSD-bootloader (que foi instalado em ambas as minhas partições BSD):
- Se nenhuma partição BSD estiver marcada como a ativa (a inicializável) na tabela de partições, o carregador iniciará o carregamento do terceiro estágio do kernel BSD loacated na primeira partição BSD no disco - não importa de qual partição BSD o segundo estágio foi carregado. No meu caso, sempre carrega o FreeBSD (desde o primeiro).
- Se, por outro lado, uma partição BSD estiver marcada como ativa (inicializável), este será o kernel BSD que será carregado como terceiro estágio. No meu caso, ou eu sempre recebo o FreeBSD ou sempre obtenho o PC-BSD.
Certamente deve haver alguma maneira de contornar isso ?! Talvez de alguma forma pulando o 2º estágio, e deixar o GRUB carregar o kernel do 3º estágio diretamente - e então diferentes kernels dependendo da minha escolha ... Ou talvez alguns argumentos especiais ou configurações para o 2º estágio - ou talvez um carregador de segundo estágio alternativo? Alguém aqui se deparou com um problema semelhante e resolveu o problema?
PS: A instalação do GRUB no MBR, sobrescreveu o primeiro boot loader instalado pelo FreeBSD (e PC-BSD). Eu duvido que usando a primeira fase do FreeBSD teria resolvido o meu problema, já que o problema é (AFAIK) o segundo estágio loader.