É possível fazer dual boot a partir do cartão SD?

41

Digamos que eu desejasse ter o Debian Squeeze e o Arch Linux ARM no meu cartão SD. Seria possível a inicialização dupla do Grub?

Jivings
fonte
2
Além da resposta abaixo, consulte: berryterminal.com/doku.php/berryboot
George Duckett
A propósito, @Jivings, acabei de encontrar isso , você pode conferir.
ACarter

Respostas:

27

Embora seja possível colocar vários sistemas operacionais no cartão SD, não há um gerenciador de inicialização no momento que seja executado no Pi e possa lidar com a troca de sistemas operacionais em tempo de execução.

O que você poderia fazer, porém, é ter um shell script, localizado em /boot, que define qual sistema operacional você deseja usar na próxima inicialização.

Você pode conseguir isso armazenando os arquivos de inicialização para diferentes sistemas operacionais em outro diretório, assim.

  • /boot/debian
  • /boot/fedora
  • /boot/arch

Nota: Os arquivos necessários que precisam ser copiados são /boot/cmdline.txte /boot/config.txt.

Em seguida, faça com que seu script de shell copie os arquivos do diretório apropriado e no /boot. Dessa forma, quando você reinicia, ele inicializa no sistema operacional desejado.

Referências


fonte
Obrigado pela sua resposta, mas acho que vou ter que testá-la antes de aceitar! Parece um pouco de hack.
Jivings
2
@Jivings É um hack. = P
Você sabe por que o Pi não pode usar o Grub?
Jivings
@Jivings Nenhuma pista.
1
Suponho que o principal motivo é que ninguém portou o GRUB. A principal razão para isso é provavelmente que esse carregador não é necessário.
XTL
17

O Berryboot é essencialmente um carregador de inicialização projetado especificamente para o Raspberry Pi que fará isso para você:

O Berryboot é uma tela simples de seleção de inicialização, permitindo colocar várias distribuições Linux em um único cartão SD. Além disso, permite colocar os arquivos do sistema operacional em um disco rígido USB externo, em vez de no próprio cartão SD.

user4349
fonte
Você pode explicar um pouco o que o BerryBoot faz?
hifkanotiks
Mas li em outro lugar que o Berryboot não é um carregador de inicialização da mesma forma que o Grub e que tudo é virtualizado de alguma forma, ou que o Berryboot executa tudo em um ambiente chroot. Isso é verdade?
precisa saber é o seguinte
Até onde eu sei, o Berryboot usa o mesmo kernel (Berryboot kernel) para todas as distribuições que ele manipula. Portanto, não é um gerenciador de inicialização verdadeiro, mas um invólucro chroot.
Bartosz Pierzchlewicz
2

Usando u-boot(que é usado pelo berry-boot nos bastidores), é possível alternar entre todas as distros instaladas para inicializar em tempo de execução, usando algo como askenv para alternar entre sistemas operacionais no mesmo servidor SD ou possivelmente nfs ou PXEusando um diferente instalação em um PXEservidor de inicialização, embora não seja a coisa mais trivial para executar. Vou tentar preparar um tutorial.

Máx.
fonte
@Jivings, você usou esta solução? Gostaria de ler seus comentários
Suhaib
-7

Eu acho que vai funcionar. Você só precisa instalar o GRUB com todas as "configurações" ...

Marzel
fonte
1
Qual versão do GRUB seria executada em um Pi? E quais seriam essas "configurações"? Essa resposta parece que você acabou de inventar algo sem saber o que o hardware Pi realmente faz para inicializar.
Caleb
1
O Grub foi estendido para rodar em cima do u-boot no ARM, cortesia de linaro. Os patches originais são de outubro passado, os mais recentes podem ser encontrados aqui: blog.gmane.org/gmane.comp.boot-loaders.grub.devel/…
Max