Este capítulo inicia com algumas informações gerais sobre a inicialização da Debian GNU/Linux, então se move para seções individuais de métodos de instalação particulares e sua conclusão são alguns avisos sobre problemas que podem ser encontrados durante este processo (e como resolve-los).
Parâmetros de inicialização são parâmetros que são geralmente usados para ter certeza que os periféricos funcionarão corretamente. Para a maior parte, o kernel pode auto-detectar as informações sobre seus periféricos. No entanto existem casos que você deverá ajudar um pouco o kernel.
Dependendo da firmware do console no qual você está inicializando, diferentes
métodos podem ser usados para passar parâmetros ao kernel. Estes métodos serão
descritos abaixo, separadamente para cada processo de inicialização.
Informações completas sobre os parâmetros de inicialização podem ser
encontrados na url Linux BootPrompt
HOWTO
; esta seção contém somente uma visão sobre os parâmetros de
inicialização mais utilizados.
Se esta é a primeira vez que você está inicializando o sistema, tente os parâmetros de inicialização padrão (i.e., não tente passar argumentos) e veja se ele funciona corretamente. Provavelmente funcionará. Se isto não ocorrer, você pode reiniciar depois e procurar por qualquer parâmetro especial que passará a configuração do hardware ao sistema.
Quando o kernel inicializa, a mensagem Memory: avail k/ total k available deverá ser mostrada pelo processo. total é o total de RAM disponível no sistema, em kilobytes, que está disponível. Se ele não confere com a memória RAM que se tem instalada, você precisará usar o parâmetro mem=ram, onde ram é o total de memória do sistema seguido de "k" para kilobytes, ou "m" para megabytes. Por exemplo, both mem=65536k ou mem=64m indicam uma memória RAM de 64MB.
Caso seu monitor seja capaz somente de mostrar preto-e-branco, use o parâmetro de inicialização mono. Caso contrário, sua instalação utilizará colorido, que é o padrão.
Se você está inicializando com um console serial, geralmente o kernel ira detecta-lo automáticamente. Se você tem uma placa de vídeo (framebuffer) e também um teclado ligado no computador que deseja inicializar via console serial, você deverá passar o argumento console=dispositivo para o kernel, onde dispositivo. é seu dispositivo serial, que é usualmente algum parecido com "ttyS0".
Detalhes completos sobre parâmetros de inicialização podem ser encontrados em
Linux
BootPrompt HOWTO
, incluindo dicas para hardwares antigos. Algumas
dicas comuns estão incluídas abaixo em Troubleshooting the Boot
Process, Secção 6.10.
O sistema de instalação reconhece alguns argumentos que podem ser úteis:
Durante a sequencia de inicialização, você pode ver diversas mensagens na forma "can't find something", "someghing not present", "can't inicialize something", ou "even this driver release depends on something". Muitas destas mensagens de erro podem ser ignoradas. Elas aparecem porque o kernel do sistema de instalação é criado para funcionar em computadores com diferentes tipos de periféricos. Obviamente, nenhum computador possui todos os tipos possíveis de periféricos, então o sistema operacional mostra diversas mensagens de erro quando não encontra os periféricos que você não possui. O sistema será pausado por um instante. Isto acontece quando ele está aguardando por uma resposta de algum dispositivo, e aquele dispositivo não esta presente em seu sistema. Se acontecer pausas muito longas durante a inicialização do sistema, você pode criar um kernel personalizado depois (veja Compilando um novo Kernel, Secção 8.4).
Em alguns casos, você pode inicializar através de um sistema operacional existente. Você também pode inicializar através de outros métodos e depois instalar o sistema básico através do disco rígido.
Você pode instalar a Debian através de uma partição ext2fs ou através de uma partição Minix. Esta técnica de instalação é apropriada se você esta trocando completamente seu sistema Linux atual pela Debian, por exemplo.
Note que a partição de onde você esta instalando não deverá ser a mesma que
você esta instalando a Debian (e.g., /, /usr, /lib
, e todas
outras).
Para instalar através de uma partição Linux existentes, siga estas instruções:
http://http.us.debian.org/debian/dists/potato/main/disks-alpha/current/base2_2.tgz
Se tiver uma unidade de CD que é inicializável e se sua arquitetura e sistema suportar a inicialização através da unidade de CD-ROM, você nãpo precisará de qualquer disquete. A inicialização através do CD-ROM no Alpha é mais envolvente que no i386. No entanto, a redução no número de disquetes requeridos faz isto worthwhile. Veja Iniciando o sistema de instalação, Capítulo 6 para mais informações sobre a inicialização em sistemas Alpha através do CD e disquetes.
Até mesmo se não puder inicializar através do CD-ROM, você pode instalar o sistema básico da Debian através do CD-ROM. Simplesmente inicialize usando uma das outras tecnicas de instalação; quando for a hora de instalar o sistema básico e qualquer pacote adicional, apenas aponte seu sistema de instalação para sua unidade de CD-ROM como descrito em ``Instalar o Sistema Básico'', Secção 7.14.
Você precisa configurar um servidor BOOTP e TFTP.
O BOOTP é um protocolo IP que informa ao computador seu endereço IP e onde obter uma imagem de inicialização na rede. Ao contrário da Open Firmware encontrada no Sparc e PowerPC, o console SRM não usará RARP para obter seu endereço IP, no entanto você deverá usar o BOOTP para inicialização através da rede no Alpha. Você pode também entrar com a configuração IP das interfaces de rede diretamente no console SRM. [3]
O Trivial File Transfer Protocol (TFTP) é usado para servir a imagem de inicialização ao cliente. Teóricamente, qualquer servidor, em qualquer plataforma, que implemente estes protocolos, podem ser usados. Nos exemplos desta seção, nós ofereceremos comandos para o SunOS 4.x, SunOS 5.x (a.k.a. Solaris), e GNU/Linux.
Existem dois servidor BOOTP disponíveis para GNU/Linux o CMU bootpd e o ISC
dhcpd, que estão contidos no pacote bootp
e dhcp
na
Debian GNU/Linux.
Para usar o CMU bootpd, você deve primeiro descomentar (ou adicionar) a linha
relevante no arquivo /etc/inetd.conf
. Na Debian GNU/Linux, você
pode executar update-inetd --enable bootps, então
/etc/init.d/inetd reload para fazer isto. A linha deve se parecer
com isto:
bootps dgram udp wait root /usr/sbin/bootpd bootpd -i -t 120
Agora, você deve criar o arquivo /etc/bootptab
. Este tem o
formato falimiar e parecido com o antigo arquivo BSD dourado
printcap(5)
, termcap(5)
, e disktab(5)
.
Veja a página de manual bootptab(5)
para mais detalhes. Para o
CMU bootpd, você prcisará conhecer o endereço de hardware (MAC) do cliente.
Em contraste, a configuração do BOOTP com o ISC dhcpd
é realmente
fácil, porque ele trata os clientes BOOTP como um caso moderadamente especial
dos clientes DHCP. Você não precisará conhecer o endereço de hardware (MAC) do
cliente, a não ser que deseje designar endereços fixos para suas máquinas
usando o BOOTP e/ou DHCP. Simplesmente adicione a opção allow
bootp ao bloco de configuraçào para a subrede que contém o cliente e
reinicie o dhcpd
com /etc/init.d/dhcpd restart.
Para deixar o servidor TFTP pronto para o funcionamento, você primeiro deve ter
certeza que o programa tftpd
está ativado. Este é usualmente
ativado se tiver a seguinte linha em /etc/inetd.conf
:
tftp dgram udp wait root /usr/etc/in.tftpd in.tftpd /tftpboot
Olhe neste arquivo e relembre o diretório que é usado como caminho de
in.tftpd
; você precisará disto abaixo. Se você teve que mudar
/etc/inetd.conf
, será necessário notificar o processo em execução
inetd
que o arquivo voi alterado. Em uma máquina Debian, execute
/etc/init.d/netbase reload; em outras máquinas, procure a
identificação do processo por inetd
, e execute kill -1
inetd-pid
Próximo, coloque a imagem de inicialização TFTP que precisa, como encontrado em
Descrição dos arquivos do
sistema de instalação, Secção 5.4, no diretório de inicialização de imagens
tftpd
. Geralmente este diretório será o /boot
na
Debian, e /tftpboot
em outros sistemas operacionais. Então, você
deverá fazer um link através daquele arquivo para o arquivo no qual
tftpd
será usado para inicializar um cliente particular.
Infelizmente o nome do arquivo é determinado pelo cliente TFTP, e assim não há
padrões.
Frequentemente, o arquivo que o cliente TFTP procura é
IP-do-cliente-em-hex-arquitetura-do-cliente. Para computar
IP-do-cliente-em-hex, ele obtem cada byte do endereço IP do cliente
e traduz em valores hexadecimais. Se você tem uma outra máquina com o programa
bc
, você pode usar o programa. Primeiro use o comando
obase=16 para configurar a saida em hexadecimal, então entre com
os componentes individuais do IP do cliente um de cada vez. Como para
arquitetura-do-cliente, tente alguns outros valores.
No Alpha, você deve especificar o nome de arquivo (como um caminho relativo para o diretório da imagem de inicialização) usando a opção -file para o comando boot do SRM, ou ajustando a variável de ambiente BOOT_FILE. Alternativamente, o nome de arquivo pode ser dado via BOOTP (no ISC hdcpd, use a diretiva filename). Ao contrário do Open Firmware, não existe nome de arquivo padrão no SRM, assim voê deve especificar um nome de arquivo em um deste métodos.
Uma vez que determinou o nome, faça um link como este: ln /boot/tftpboot.img /boot/file-name.
Próximo configure seu servidor boot ROMs ou BOOTP para inicialmente carregar o
arquivo tftplilo.bvme
ou tftplilo.mvme
através do
servidor TFTP. Veja o arquivo tftplilo.txt
para sua
sub-arquitetura para informações sobre configurações específicas no sistema.
Agora você deve estar realmente pronto para inicializar seu sistema. No SRM, as interfaces Ethernet são nomeadas com o prefixo ewa e serão listadas na saída do comando show dev, como este (editado rápidamente):
>>>show dev ewa0.0.0.9.0 EWA0 08-00-2B-86-98-65 ewb0.0.0.11.0 EWB0 08-00-2B-86-98-54 ewc0.0.0.2002.0 EWC0 00-06-2B-01-32-B0
Assim para iniicalizar atravé de sua primeira interface Ethernet, você deve digitar:
>>>boot ewa0
Se planejar usar um console serial, você deve passar o parâmetro console= ao kernel. Isto pode ser feito usando a opção -flags ao comando boot do SRM. As portas seriais são nomeadas da mesma forma que no diretório /dev. Por exemplo, para inicialiar através de ewa0 e usar um console na primeira porta serial, você deve digitar:
>>>boot ewa0 -flags console=ttyS0
Ainda não escrito
É mais especificamente para "instalação tftp para sistemas com pouca..." porque você não conseguiu carregar mais o ramdisk mas inicializou através do recém criado nfs-root fs. Voce então precisa trocar o link simbólico da imagem do tftpboot para um link simbólico para a imagem do kernel (eg. linux-a.out).
Minha experiência em inicializações através da rede foi baseado exclusivamente no RARP/TFTP que requerem todos os daemons sendo executados no mesmo servidor (a estação de trabalho sparc esta enviando uma requisição tftp de volta para o servidor que respondeu a uma requisição rarp anterior). No entanto o Linux também suporta o protocolo BOOTP mas eu não sei como configura-lo :-(( Ele tembém tem que ser documentado neste manual?
A firmware do console é armazenada na flash ROM e iniciada quando o sistema Alpha é ligado ou reiniciado. Existem duas especificações diferentes de console usada em sistemas Alpha e também duas classes de firmwares de consoles disponíveis:
Através da perspectiva do usuário, a diferença mais importante entre o SRM e o ARC é que a escolha do console interfere na possibilidade de esquema de particionamento do sistema do disco rígido que será inicializado.
O ARC reque que você utilize uma tabela de partição MS-DOS (como criada pelo
cfdisk
) para o disco de inicialização. No entanto a tabela de
partição do MS-DOS são o formato de partição nativa quando inicializar através
do ARC. De fato, desde que o AlphaBIOS contém um utilitário de particionamento
de disco, você pode preferir particionar seus discos através dos menus da
firmware antes de instalar o Linux.
Ao contrário, o SRM é incompatível com tabelas de partição MS-DOS. [4] Desde que os Unix Tru64 usam o formato de volume de disco BSD, esta é a partição nativa para as instalações através do SRM.
Porque o GNU/Linux é o único sistema operacional no Alpha que pode ser inicializado através de ambos os tipo sde console, sua escolha também dependerá de quais outros sistemas operacionais você deseja executar na mesma máquina. Todos os outros sistemas operacionais compatíveis com o Unix (Tru64 Unix, FreeBSD, OpenBSD, e NetBSD) e OpenVMS podem somente inicializar através do SRM, enquanto o Windows NT pode somente inicializar através do ARC.
A seguinte tabela resume a disponibilidade e combinações de tipos de sistemas/console suportados (veja CPU, Placa mãe, e suporte de Vídeo., Secção 2.1.2 para os nomes dos tipos de sistema). A palavra "ARC" abaixo se refere a qualquer um dos consoles compatíveis com o ARC. .
Tipo Sistema Tipo de Console Suportado =========== ====================== alcor ARC ou SRM avanti ARC ou SRM book1 SRM somente cabriolet ARC ou SRM dp264 SRM somente eb164 ARC ou SRM eb64p ARC ou SRM eb66 ARC ou SRM eb66p ARC ou SRM jensen SRM somente lx164 ARC ou SRM miata ARC ou SRM mikasa ARC ou SRM mikasa-p SRM somente nautilus ARC somente (veja o manual da placa mãe) noname ARC ou SRM noritake SRM somente noritake-p SRM somente pc164 ARC ou SRM rawhide SRM somente ruffian ARC somente sable SRM somente sable-g SRM somente sx164 ARC ou SRM takara ARC ou SRM xl ARC somente xlt ARC ou SRM
Geralmente, nenhum destes consoles pode inicializar diretamente no Linux, assim
é necessária a assistência de um gerenciador de inicialização intermediário.
Existem dois gerenciadores de partida recomendados no Linux: O
MILO
e o aboot
.
O MILO
é por si próprio um console, que substitui o ARM ou SRM da
memória. O MILO
pode ser inicializao através de ambos ARC ou SRM
e também é o único método de inicializar o Linux através do console ARC. O
MILO
é específico de plataforma (um tipo diferente de
MILO
é necessário para cada tipo de sistema) e existe somente para
estes sistemas, pelo qual o ARC o suporta é mostrado na tabela acima. Veja
também o (infelizmente desatualizado) MILO HOWTO
.
O aboot
é um gerenciador de partida pequeno e independente de
plataforma que é executado somente no SRM. Veja (infelizmente também
desatualizado) o SRM
HOWTO
para mais informações sobre o aboot
.
Assim, três cenários são geralmente possíveis, dependendo da firmware do
console do sistema e talvez do MILO
estão disponíveis:
SRM -> aboot SRM -> MILO ARC -> MILO
A placa mãe UP1000 (com o nome de subarquitetura `nautilus') do processador Alpha, Inc. é diferente de todos os oturos, no qual utiliza um gerenciador de partida com API específica que é executado através da firmware do AlphaBIOS. Não existem discos de instalação para o UP1000, mas você deve ser capaz de instalar inicializando através de um kernel "genérico" ou "nautilus" com o root.bin dos discos de instalação, seguindo as instruções do manual de instalação.
Por causa que o MILO
não está disponível para qualquer sistemas
Alpha atualmente em produção (como os de Fevereiro de 2000) e porque não é mais
necessário comprar uma licença do OpenVMS ou Unix Tru64 para ter a firmware SRM
em seu antigo Alpha, é recomendado que você use o SEM e o aboot
nas novas instalações do GNU/Linux, a não ser que você deseje fazer dupla
inicialização com o Windows NT ou se tiver discos particionados com o DOS.
A majoridade dos AlphaServers e todos os produtos servidores e workstations atuais contém ambos SRM e AlphaBIOS em sua firmware. Para máquinas "half-flash" como as várias placas de avaliação, é possível mudar de uma versão para outra regravando a firmware. Também, uma vez que o SRM estiver instalado, é possível executar o ARM/AlphaBIOS através de um disquete (usando o comando "arc").
Como em outras arquiteturas, você deve instalar a revisão mais nova da firmware
[5] antes de instalar a Debian.
Para o Alpha, as atualizações do firmware podem ser obitods de Alpha Firmware
Updates
.
No aviso de comando do SRM (>>>
), envie o seguinte
comando:
>>> boot dva0 -flags 0
Possivelmente trocando dva0
com o nome do dispositivo atual.
Normalmente dva0
é o disquete; digite
>>> show dev
para ver a lista de dispositivos (e.g., se você desejar inicializar através de
um CD). Note que se estiver inicializando através do MILO, o argumento
-flags
é ignorado, assim você precisa apenas digitar boot
dva0
.
Se tudo funcionar bem, você verá o kernel do Linux inicializando.
Se desejar especificar os parâmetros do kernel do Linux quando inicializar via
aboot
, use o seguinte comando:
>>> boot dva0 -file linux.gz -flags "root=/dev/fd0 load_ramdisk=1 arguments"
(digitado em uma linha), substituindo, se necessário, o nome do dispositivo SRM
atual por dva0
, o nome do dispositivos de inicialização Linux por
fd0
e os parâmetros do kernel por arguments
.
Se desejar especificar os parâmetros do kernel quando inicializar através do
MILO
, você terá que interromper a inicialização assim que entrar
no MILO. Veja Inicializando com o MILO,
Secção 6.9.
No menu de seleção do sistema, configure o linload.exe
como
gerenciador de partida e molo
como caminho do Sistema Operacional.
Inicializa usando a nova entrada criada.
Para inicializar o sistema de instalação entre com o seguinte comando no aviso de comando do MILO:
MILO> boot fd0:linux.gz root=/dev/fd0 load_ramdisk=1
Se estiver iniicalizando através de qualquer coisa que não seja um disquete,
substitua o fd0
do exemplo acima com o nome de dispositivo
apropriado na notação do Linux. O comando help
deve te ajudar com
uma breve descrição dos comandos do MILO.
Se você tem problemas e o kernel trava durante o processo de inicialização, não reconhece periféricos instalados ou unidades não são reconhecidas corretamente, a primeira coisa para checar é os parâmetros de inicialização, como discutido em Parâmetros de Inicialização, Secção 6.1.
Normalmente, estes problemas podem ser resolvidos removendo-se periféricos e add-ons, e então tentando inicializar novamente.
Se você ainda tem problemas, por favor envie um relatório sobre esta falha.
Envie um e-mail (em inglês) para submit@bugs.debian.org
. Você
deve incluir o seguinte nas primeiras linhas de seu e-mail:
Package: boot-floppies Version: versão
Preencha versão com a versão dos disquetes de inicialização que você teve problemas. Se não conhecer a versão, use a data destes arquivos, e inclua o nome da distribuição que foi copiado (e.g., "stable", "frozen")
Você deve incluir ainda as seguintes informações no seu relatório:
architecture: alpha model: vendedor do hardware e modelo memory: quantidade de memória RAM scsi: adaptador SCSI, se possuir cd-rom: modelo do CD-ROM e tipo da interface, e.g., ATAPI network card: placa de interface de rede, se possuir pcmcia: detalhes sobre qualquer dispositivo PCMCIA
Dependendo da natureza da falha, também seria útil descrever se você esta instalando o sistema em um disco IDE ou SCSI, outros periféricos como audio, capacidade do disco, e modelo da placa de vídeo.
No registro de falha, descreva qual é o problema, incluindo a última mensagem que o kernel mostrou antes de travar. Descreva os passos feitos por você até o sistema encontrar este problema.