Gentoo Logo

1.  Escolhendo um gerenciador de inicialização

Introdução

Agora que seu kernel está configurado e compilado, você precisará de um gerenciador de inicialização para iniciar sua nova instalação de Linux. O gerenciador de inicialização que você usar dependerá do tipo de máquina PPC que você tem.

Se você estiver usando uma máquina NewWorld Apple ou IBM machine, você precisa usar yaboot. Máquinas OldWorld Apple tem duas opções BootX (recomendado) e quik. O Pegasos não precisa de um gerenciador de inicialização, mas você precisará instalar o BootCreator para criar menus de inicialização de SmartFirmware.

1.  Padrão: Usando o yaboot

Introdução

Importante: O yaboot só pode ser usado em sistemas IBM e Apple NewWorld!

Para poder encontrar os dispositivos de inicialização, o yaboot precisa acessar o sistema de arquivos /dev. Para fazer isso, você precisa fazer "bind-map" do sistema de arquivos /dev do CD de instalação para o /dev dentro do chroot.

Listagem de código 1.1: Fazendo bind-mounting do sistema de arquivos /dev

# exit  # isso irá sair do chroot
# mount -o bind /dev /mnt/gentoo/dev
# chroot /mnt/gentoo /bin/bash
# /usr/sbin/env-update && source /etc/profile 

Para configurar o yaboot, você pode usar o yabootconfig para criar um arquivo de configuração automaticamente para você. Se você estiver instalando o Gentoo em um G5 (onde o yabootconfig nem sempre funciona), ou você planeja carregar de firewire ou USB, você precisará configurar o yaboot manualmente.

Nota: Você precisará editar o arquivo yaboot.conf se estiver usando genkernel, mesmo se yabootconfig for usado. A seção de imagem de kernel do yaboot.conf deve ser modificada como a seguir:

Listagem de código 1.1: Adicionando argumentos de inicialização do genkernel ao yaboot.conf

###########################################################
## Esta seção pode ser duplicada se você tiver mais que um
## kernel ou conjunto de opções de inicialização - troque kernel-2.6.12
## pelo nome de arquivo exato de seu kernel.
###########################################################
image=/boot/kernel-2.6.12
   label=Linux
  root=/dev/ram0    # Se estiver usando genkernel é igual a /dev/ram0
   partition=3
  append="real_root=/dev/hda3 init=/linuxrc"  
  # Você pode adicionar argumentos de kernel como
  # rootdelay=10 para inicialização de USB/Firewire
   read-only
##########################################################
 

Padrão: Usando o yabootconfig

O yabootconfig irá auto-detectar suas partições em sua máquina e irá configurar combinações de boot paralelo com o Linux, Mac OS e Mac OS X.

Para usar o yabootconfig, seu dispositivo deve ter uma partição Apple_Bootstrap e o /etc/fstab deve estar configurado com suas partições de Linux. Ambos já devem ter sido feitos. Primeiro, certifique-se de que você tem a última versão do yaboot instalado.

Listagem de código 1.1: Instalando o yaboot com GRP

# emerge --usepkg --update yaboot

Agora, saia do chroot e rode yabootconfig --chroot /mnt/gentoo. Irá pedir que você confirme o local da partição Apple_Bootstrap. Digite Y se estiver correta. Se não, verifique o /etc/fstab e certifique-se de que os caminhos de dispositivos estão corretos. Uma vez que a partição de bootstrap for selecionada, o yabootconfig irá escanear seus ajustes de sistema, criar o /etc/yaboot.conf e rodar mkofboot. mkofboot formata a partição Apple_Bootstrap e instalar o arquivo de configuração do yaboot nela. Depois que isto terminar, entre no chroot novamente.

Listagem de código 1.1: Entrando novamente no chroot

# chroot /mnt/gentoo /bin/bash
# /usr/sbin/env-update && source /etc/profile

Você deve verificar o conteúdo do /etc/yaboot.conf. Se você fizer mudanças no /etc/yaboot.conf (como mudar o sistema operacional padrão de inicialização), certifique-se de rodar ybin -v para aplicar as mudanças na partição Apple_Bootstrap.

Agora continue com Reiniciando o sistema.

Alternativa: Configuração manual do yaboot

Primeiro, certifique-se que você tem a última versão do yaboot instalada.

Listagem de código 1.1: Instalando o yaboot

# emerge --usepkg --update yaboot

Um arquivo de yaboot.conf de exemplo é dado abaixo, mas você precisará alterá-lo para suas necessidades. Usuários de G5 e usuários carregando a partir de firewire e USB devem saber que seus discos são vistos como discos SCSI pelo kernel do Linux, então você precisará trocar /dev/hda por /dev/sda).

Listagem de código 1.1: /etc/yaboot.conf

## /etc/yaboot.conf
##
## rode: "man yaboot.conf" para detalhes. Não faça mudanças antes disso!!
## veja também: /usr/share/doc/yaboot/examples para exemplos de configuração.
##
## Para um menu de boot paralelo, adicione um ou mais de:
## bsd=/dev/hdaX, macos=/dev/hdaY, macosx=/dev/hdaZ

## nossa partição de bootstrap:

boot=/dev/hda2

## ofboot é o jeito do Open Firmware especificar a partição de bootstrap.
## Se não for definido, o yaboot falha no G5 e alguns G4s (a menos que  
## você passe os argumentos necessários para o programa mkofboot/ybin).
## hd:X significa /dev/sdaX (ou /dev/hdaX).
## 
## Usuários de G5 devem descomentar esta linha!!
#ofboot=hd:2

## Usuários carregando de firewire devem usar algo como esta linha:
# ofboot=fw/node/sbp-2/disk@0:

## Usuários carregando de USB devem usar algo como esta linha:
# ofboot=usb/disk@0:

## hd: é notação para o primeiro disco rígido visto pelo Open Firmware
device=hd:

## Usuários de Firewire e USB precisarão especificar o nome completo do dispositivo OF
## Isto pode ser encontrado usando ofpath, que é incluído com o yaboot.

# device=fw/node@0001d200e00d0207/sbp-2@c000/disk@0:


delay=5
defaultos=macosx
timeout=30
install=/usr/lib/yaboot/yaboot
magicboot=/usr/lib/yaboot/ofboot

#################
## Esta seção pode ser duplicada se você tiver mais que um kernel ou configurações
## de boot - substitua 2.6.9 com sua versão do kernel
#################
image=/boot/kernel-2.6.9
  label=Linux
  root=/dev/hda3
  partition=3
#  append="rootdelay=10"  # Necessário para carregar USB/Firewire
  read-only
##################

## Usuários de G5 e alguns de G4 devem colocar 
##   macos=hd:13
##   macosx=hd:12
## ao invés dos valores de exemplo.
macos=/dev/hda13
macosx=/dev/hda12
enablecdboot
enableofboot

Uma vez que o yaboot.conf estiver configurado, rode mkofboot -v para formatar a partição Apple_bootstrap e instalar os ajustes. Se você mudar o yaboot.conf depois de a partição Apple_bootstrap ter sido criada, você pode atualizar os ajustes rodando ybin -v.

Para mais informações sobre o yaboot, veja o projeto do yaboot. Por hora, continue a instalação com Reiniciando o sistema.

1.  Alternativa: BootX

Importante: O BootX só pode ser usados em sistemas Apple OldWorld!

Já que o BootX inicia o Linux de dentro do MacOS, o kernel precisará ser copiado de uma partição de Linux para a partição MacOS. Primeiro, monte a partição MacOS de fora do chroot. Use mac-fdisk -l para encontrar o número da partição MacOS, sda6 é usado como um exemplo aqui. Uma vez que a partição estiver montada, iremos copiar o kernel para a pasta de sistema para que o BootX possa encontrá-lo.

Listagem de código 1.1: Copiando o kernel para a partição MacOS

# exit
cdimage ~# mkdir /mnt/mac
cdimage ~# mount /dev/sda6 /mnt/mac -t hfs
cdimage ~# cp /mnt/gentoo/usr/src/linux/vmlinux "/mnt/mac/System Folder/Linux Kernels"

Se o genkernel for usado, tanto o kernel quanto a initrd precisarão ser copiados para a partição MacOS.

Listagem de código 1.1: Copiando o kernel de Genkernel e initrd para a partição MacOS

# exit
cdimage ~# mkdir /mnt/mac
cdimage ~# mount /dev/sda6 /mnt/mac -t hfs
cdimage ~# cp /mnt/gentoo/boot/kernel-* "/mnt/mac/System Folder/Linux Kernels"
cdimage ~# cp /mnt/gentoo/boot/initramfs-* "/mnt/mac/System Folder"

Agora que o kernel foi copiado, precisaremos reiniciar para configurar o BootX.

Listagem de código 1.1: Desmontando todas partições e reiniciando

cdimage ~# cd /
cdimage ~# umount /mnt/gentoo/proc /mnt/gentoo/dev /mnt/gentoo /mnt/mac
cdimage ~# reboot

Claro, não se esqueça de tirar o CD carregável, já que o MacOS precisa ser carregado desta vez.

Uma vez que a máquina tenha carregado o MacOS, abra o painel de controle do BootX. Se você não estiver usando genkernel, selecione Opções e desmarque Usar disco de RAM especificado. Se você estiver usando genkernel, certifique-se de que a initrd do genkernel está selecionada ao invés da initrd do CD de instalação. Se você não estiver usando genkernel, agora há uma opção para especificar o disco raiz e partição do Linux da máquina. Preencha com os valores apropriados. Dependendo da configuração de kernel, argumentos de inicialização adicionais podem precisar ser aplicados.

O BootX pode ser configurado para iniciar o Linux durante a inicialização. Se você escolher fazê-lo, o computador irá carregar o MacOS e durante o início carregar o BootX, que por sua vez inicia o Linux. Veja a home page do BootX para mais informações.

Agora reinicie novamente e carregue o Linux, então continue com (Completando sua instalação do Gentoo).

1.  Alternativa: quik

quik permite que Macs OldWorld carreguem sem MacOS. No entanto, não é bem suportado e tem alguns problemas. Se você tiver a opção, é recomendado usar BootX, já que é muito mais confiável e fácil de configurar que quik.

Primeiro, iremos instalar quik:

Listagem de código 1.1: Emerge quik

# emerge quik

A seguir, precisamos configurá-lo. Edite o /etc/quik.conf e coloque sua imagem para o kernel que copiamos para a sua partição de boot.

Listagem de código 1.1: Configurando quik.conf

# Examplo de quik.conf
init-message = "Gentoo 2005.1\n"
partition = 2		# Esta é a partição de inicialização
root = /dev/hda4
timeout = 30
default = gentoo
image = /vmlinux-2.6.12
	label = gentoo

Seu arquivo quik.conf deve estar no mesmo disco que as imagens de inicialização de quik, embora possa estar em uma partição diferente do mesmo disco. É recomendado, todavia, colocar em sua partição de inicialização.

Listagem de código 1.1: Colocando quik.conf em /boot

# mv /etc/quik.conf /boot/quik.conf

Nós iremos agora configurar suas variáveis de inicialização para que o quik carregue durante a inicialização. Para fazê-lo, usaremos um programa chamado nvsetenv. As variáveis que você deve configurar variam de máquina para máquina, é melhor ver os problemas de sua máquina antes de fazer isto.

Listagem de código 1.1: Configurando as variáveis de inicialização

# nvsetenv auto-boot true # Configure como falso se você quiser carregar o OF, nem todos modelos podem mostrar a saída de OF
# nvsetenv output-device video # Verifique a página de problemas, existem muitas variações aqui
# nvsetenv input-device kbd
# nvsetenv boot-device scsi/sd@1:0 # Para SCSI
# nvsetenv boot-device ata/ata-disk@0:0 # Para ATA
# nvsetenv boot-file /boot/vmlinux-2.6.12 root=/dev/hda4 Primeiro item é o caminho para o kernel, o segundo é a partição raiz (root). Você pode passar qualquer opção de kernel no final desta linha.
# nvsetenv boot-command boot # Coloque isto como bye para MacOS e boot para Linux

Nota: Também é possível mudar outras variáveis de inicialização do MacOS. Dependendo do modelo, tanto bootvars ou Apple System Disk podem ser usados. Por favor, veja a página de problemas do quik acima para mais informações.

Agora que configuramos nossas máquinas para iniciar, nós precisamos nos certificar que as imagens de inicialização estão instaladas corretamente. Rode quik -v -C /boot/quik.conf. Isto deve dizê-lo que instalou o primeiro estágio do block de inicialização do QUIK.

Nota: Se algo der errado, você pode sempre resetar seu PRAM de volta para valores padrão segurando command + option + p + r antes de ligar sua máquina. Isto irá limpar os valores que você configurou com o nvsetenv e deve permitir carregar tanto um disco de inicialização de MacOS como de Linux.

Agora, continue a instalação com Reiniciando o sistema.

1.  Alternativa: BootCreator

Importante: O BootCreator irá criar um menu de inicialização de SmartFirmware escrito em Forth para o Pegasos.

Primeiro certifique-se de que você o bootcreator instalado em seu sistema:

Listagem de código 1.1: Instalando o bootcreator

# emerge bootcreator

Agora copie o arquivo /etc/bootmenu.example para /etc/bootmenu e edite-o de acordo com suas necessidades:

Listagem de código 1.1: Edite o arquivo de configuração do bootcreator

# cp /etc/bootmenu.example /etc/bootmenu
# nano -w /etc/bootmenu

Um exemplo de arquivo de configuração /etc/bootmenu está incluído abaixo.

Listagem de código 1.1: arquivo de configuração de bootcreator

#
# Exemplo de arquivo de descrição para bootcreator 1.1
#

[VERSION]
1

[TITLE]
Boot Menu

[SETTINGS]
AbortOnKey = false
Timeout    = 9
Default    = 1

[SECTION]
Local HD -> Morphos      (Normal)
ide:0 boot2.img ramdebug edebugflags="logkprintf"

[SECTION]
Local HD -> Linux 2.6.12 (Normal)
ide:0 linux-2.6.12 video=radeonfb:1024x768@70 root=/dev/hda3
 
[SECTION]
Local HD -> Genkernel (Normal)
ide:0 kernelz-2.6.12 root=/dev/ram0 real_root=/dev/hda3 init=/linuxrc

Finalmente o bootmenu deve ser transferido em Forth e copiado para sua partição de inicialização para que o SmartFirmware possa lê-lo. Portanto, você tem que rodar bootcreator:

Listagem de código 1.1: Instale o bootmenu

# bootcreator /etc/bootmenu /boot/menu

Nota: Certifique-se de verificar os ajustes do SmartFirmware quando você reiniciar e que o menu é o arquivo que será carregado por padrão.

Agora, continue a instalação com Reiniciando o sistema.

1.  Reiniciando o sistema

Saia do ambiente de chroot e desmonte todas partições montadas para podermos reiniciar de maneira limpe e digite reboot.

Listagem de código 1.1: Saindo do chroot, desmontando todas partições e reiniciando

# exit
livecd ~# umount /mnt/gentoo/proc /mnt/gentoo/dev /mnt/gentoo
livecd ~# reboot

Uma vez iniciada sua nova instalação do Gentoo, termine com (Completando sua instalação do Gentoo).

Atualizado 19 de janeiro de 2006

A versão original deste documento foi atualizada em 9 de maio de 2011

Donate to support our development efforts.

Copyright 2001-2012 Gentoo Foundation, Inc. Questions, Comments? Contact us.