5.3. Parâmetros de Arranque

Parâmetros de arranque são parâmetros do kernel Linux que são geralmente utilizados para assegurar que os periféricos são tratados devidamente. Para a maioria, o kernel pode auto detetar informação sobre os seus periféricos. Contudo, em alguns casos terá de ajudar um pouco o kernel.

Se esta é a primeira vez que está a iniciar o sistema, tente os parâmetros de arranque predefinidos (i.e., não tente alterar os parâmetros) e veja se funciona corretamente. Provavelmente sim. Se não, pode reiniciar mais tarde e procurar por parâmetros especiais que informem o sistema acerca do seu hardware.

Pode ser encontrada muita informação sobre muitos parâmetros de arranque em Linux BootPrompt HOWTO, incluindo dicas para hardware obscuro. Esta seção contém apenas um esboço dos parâmetros mais distintos. Abaixo estão incluídos alguns truques para identificar problemas na Secção 5.4, “Diagnosticar Problemas no Processo de Instalação”.

5.3.1. Consola de arranque série

Se estiver a arrancar com uma consola série, o kernel deverá detetar isto automaticamente. Se também tiver ligado uma placa gráfica (framebuffer) e um teclado ao computador no qual deseja arrancar através da consola série, poderá ter de passar o argumento console=dispositivo ao kernel, onde dispositivo é o seu dispositivo série do destino, normalmente é algo parecido com ttyS0.

Poderá ter de especificar os parâmetros para a porta série, tal como a velocidade e paridade, por exemplo console=ttyS0,9600n8; outras velocidades típicas podem ser 57600 e 115200. Assegure-se que especifica esta opção após ---, para que seja copiada para a configuração do sistema instalado (se for suportado pelo instalador para o gestor de arranque).

De modo a assegurar que o tipo de terminal utilizado pelo instalador coincide com o do seu emulador de terminal, pode ser acrescentado o parâmetro TERM=tipo. Note que o instalador apenas suporta os seguintes tipos de terminais: linux, bterm, ansi, vt102 e dumb. O predefinido para a consola série no debian-installer é vt102. Se utilizar uma consola IPMI ou uma ferramenta de virtualização que não disponibilize conversão para tais tipos de terminais, e.g. QEMU/KVM, pode iniciá-la dentro de uma sessão de screen. Isto irá realizar a conversão para o tipo de terminal do screen, que é muito próximo de vt102.

5.3.2. Parâmetros de instalação Debian

O sistema de instalação reconhece alguns parâmetros de arranque adicionais [3] que poderão ser úteis.

Um certo número de parâmetros têm um formato abreviado que ajuda a evitar as limitações das opções da linha de comandos do kernel e torna a introdução de parâmetros mais fácil. Se um parâmetro tem uma forma abreviada, esta será listada entre parêntesis atrás da forma (normal) mais longa. Os exemplos neste manual normalmente irão utilizar a forma abreviada.

debconf/priority (prioridade)

Este parâmetro ajusta a prioridade mínima das mensagens a serem mostradas.

Por predefinição a instalação utiliza priority=high. Isto significa que as mensagens de prioridade alta e crítica irão ser mostradas, mas as mensagens de prioridade média e baixa serão evitadas. Se forem encontrados problemas, o instalador ajusta a prioridade conforme necessário.

Se acrescentou priority=medium como parâmetro de arranque irá-lhe ser mostrado o menu de instalação e assim ganhar mais controlo sobre a instalação. Quando é utilizado priority=low serão mostradas todas as mensagens (Isto é equivalente ao método de arranque expert). Com priority=critical, o sistema de instalação irá mostrar somente as mensagens críticas e tentará optar pelas opções corretas sem grandes alaridos.

DEBIAN_FRONTEND

Este parâmetro de arranque controla o tipo de interface para o utilizador que é utilizado para o instalador. Os parâmetros possíveis atuais são:

  • DEBIAN_FRONTEND=noninteractive

  • DEBIAN_FRONTEND=newt

  • DEBIAN_FRONTEND=gtk

O frontend predefinido é DEBIAN_FRONTEND=newt. Pode ser preferível utilizar DEBIAN_FRONTEND=text para instalações por consolas série. Alguns tipos especializados de meios de instalação poderão oferecer apenas uma seleção limitada de frontends, mas os frontends newt e text estão disponíveis na maioria dos meios de instalação. Em arquiteturas que o suportem, o instalador gráfico utiliza o frontend gtk.

BOOT_DEBUG

Definir este parâmetro de arranque para 2 irá fazer com que o processo de arranque da instalação seja feito com um registo detalhado. Defini-lo para 3 faz com que estejam disponíveis shells de debug em pontos estratégicos do processo de arranque. (Sair das shells para continuar o processo de arranque.)

BOOT_DEBUG=0

Isto é a predefinição.

BOOT_DEBUG=1

Mais detalhes que o habitual

BOOT_DEBUG=2

Muita informação de análise.

BOOT_DEBUG=3

As shells são executadas em vários pontos do processo de arranque para permitir um debugging detalhado. Sair da shell para continuar o arranque.

log_host, log_port

Faz o instalador enviar mensagens de log para um syslog remoto na máquina e porto especificados assim como para um ficheiro local. Caso não seja especificado, o porto é o predefinido para o porto standard do syslog, 514.

lowmem

Pode ser utilizado para forçar o instalador a um nível de pouca memória superior ao que o instalador define baseado na memória disponível. Os valores possíveis são 1 e 2. Veja também a Secção 6.3.1.1, “Verificar a memória disponível / modo de baixa memória”.

noshell

Previne que o instalador ofereça shells interativas no tty2 e tty3. Útil para instalações à distância em que a segurança física é limitada.

debian-installer/framebuffer (fb)

Algumas arquiteturas utilizam o framebuffer do kernel para oferecer uma instalação em várias línguas. Se o framebuffer causar problemas no seu sistema pode desativar esta funcionalidade utilizando o parâmetro vga=normal fb=false. Os sintomas do problema são mensagens de erro de bterm ou bogl, um ecrã em branco, ou uma paragem nos primeiros minutos após o início da instalação.

debian-installer/theme (theme)

Um tema determina como vai parecer o interface com o utilizador (cores, ícones, etc.) Os temas disponíveis podem diferir por frontend. Atualmente ambos os frontends newt e gtk têm um tema dark (além do aspeto standard) que foi desenhado para os utilizadores com dificuldades de visão. Escolha este tema arrancando com theme=dark (existe também o atalho d de teclado para isto no menu de arranque).

netcfg/disable_autoconfig

Por predefinição o debian-installer deteta automaticamente a configuração da rede através da configuração automática IPv6 e DHCP. Se a deteção for bem sucedida, não terá a oportunidade de rever e alterar as definições obtidas. Apenas poderá fazer uma configuração da rede manualmente caso falhe a configuração automática.

Se tiver um router IPv6 ou um servidor de DHCP na sua rede local, mas se quiser evitar utilizá-lo porque e.g. devolve respostas erradas, pode utilizar o parâmetro netcfg/disable_autoconfig=true para prevenir qualquer configuração automática da rede e introduzir manualmente a informação.

hw-detect/start_pcmcia

Ponha como false para prevenir que sejam iniciados serviços PCMCIA, se isso causar problemas. Alguns portáteis são bem conhecidos por este mau comportamento.

preseed/url (url)

Especificar o url para o download de um ficheiro de pré-configuração a utilizar para automatizar a instalação. Veja a Secção 4.6, “Instalação Automática”.

preseed/file (file)

Especificar o caminho para carregar um ficheiro de pré-configuração para automatizar a instalação. Veja a Secção 4.6, “Instalação Automática”.

preseed/interactive

Defina como true para mostrar as questões mesmo que a estas tenha sido feito preseed. Pode ser útil para testar ou depurar um ficheiro de pré-configuração. Note que isto não terá qualquer efeito em parâmetros que são passados como parâmetros de arranque, mas pode ser utilizado para aqueles com uma sintaxe especial. Para detalhes veja a Secção B.5.2, “Utilizar o preseed para alterar valores predefinidos”.

auto-install/enable (auto)

Atrasar questões que são normalmente colocadas antes de ser possível o preseed até depois da rede estar configurada. Para detalhes acerca de como utilizar isto para automatizar instalações veja Secção B.2.3, “Modo Auto”.

finish-install/keep-consoles

Durante as instalações a partir da consola série ou de gestão, os consolas virtuais normais (VT1 a VT6) normalmente estão desativadas em /etc/inittab. Defina para true para prevenir isto.

cdrom-detect/eject

Por predefinição, antes de reiniciar, o debian-installer ejeta automaticamente o meio óptico utilizado durante a instalação. Isto poderá ser desnecessário se o sistema não iniciar automaticamente a partir de esse meio. Em alguns casos poderá até ser indesejável, por exemplo se o leitor óptico não conseguir reinserir novamente o media sozinho e o utilizador não estiver lá para o fazer manualmente. Muitos leitores de carregamento com slots, slim-line, e de caddy não conseguem recarregar o meio automaticamente.

Coloque false para desativar a ejeção automática, e fique atento pois pode necessitar de assegurar que o sistema não inicia automaticamente a partir da drive óptica após a instalação inicial.

base-installer/install-recommends (recommends)

Ao definir esta opção como false, o sistema de gestão de pacotes irá ser configurado para não instalar automaticamente os pacotes definidos como Recommends, quer durante a instalação quer para o sistema instalado. Veja também a Secção 6.3.5, “Instalar o Sistema Base”.

Note que esta opção permite ter um sistema mais leve, mas também pode resultar na falta de funcionalidades que normalmente espera que estejam disponíveis. Terá de instalar manualmente alguns dos pacotes recomendados para obter todas as funcionalidades se desejar. Por isso esta opção apenas deve ser utilizada apenas por utilizadores muito experientes.

debian-installer/allow_unauthenticated

Por predefinição o instalador necessita que os repositórios sejam autenticados utilizando uma chave gpg conhecida. Coloque como true para desabilitar essa autenticação. Aviso: inseguro, e não recomendado.

rescue/enable

Definir como true para entrar em modo de recuperação em vez de efetuar uma instalação normal. Veja a Secção 8.6, “Recuperar um Sistema Estragado”.

5.3.3. Utilizar parâmetros de arranque para responder a questões

Com algumas exceções, pode ser definido um valor na linha de comandos de arranque para qualquer questão colocada durante a instalação, apesar de isto ser apenas possível em casos específicos. Podem ser encontradas instruções gerais acerca de como fazer isto na Secção B.2.2, “Utilizar parâmetros de arranque para fazer preseed a questões”. Alguns exemplos específicos estão listados abaixo.

debian-installer/language (language), debian-installer/country (country), debian-installer/locale (locale)

Existem duas formas de especificar a linguagem, o país e locale a utilizar para a instalação e para o sistema instalado.

A primeira, e mais fácil, é passar apenas o parâmetro locale. A linguagem e o país serão derivados a partir do seu valor. Pode utilizar, por exemplo, locale=de_CH.UTF-8 para escolher Alemão como linguagem e Suíça como país (de_CH.UTF-8 será definido como locale predefinido para o sistema instalado). A limitação é que não podem ser feitas todas as combinações de linguagens, países e locales.

A segunda opção, e a mais flexível, é especificar separadamente language e country. Neste caso o locale pode ser acrescentado, opcionalmente, para especificar um locale especifico e predefinido para o sistema instalado. Exemplo: language=en country=DE locale=en_GB.UTF-8.

anna/choose_modules (modules)

Pode ser utilizado para carregar automaticamente componentes do instalador que não são carregados por predefinição. Exemplos de componentes opcionais que poderão ser úteis são o openssh-client-udeb (para que possa utilizar o scp durante a instalação) e o ppp-udeb (veja a Secção D.5, “Instalar Debian GNU/Linux utilizando PPP over Ethernet (PPPoE)”).

netcfg/disable_autoconfig

Defina como true se desejar desligar a configuração automática através de IPv6 e de DHCP e em vez disso forçar a configuração estática de rede.

mirror/protocol (protocol)

Por omissão o instalador irá utilizar o protocolo http para fazer download aos ficheiros nos mirrors Debian e mudar isso para ftp não é possível durante as instalações com prioridade normal. Ao definir este parâmetro para ftp, pode forçar o instalador a utilizar este protocolo. Note que não pode escolher um mirror ftp a partir de uma lista, tem de introduzir manualmente o nome da máquina.

tasksel:tasksel/first (tasks)

Pode ser utilizado para escolher tarefas que não estão disponíveis a partir da lista interativa de tarefas, tal como a tarefa kde-desktop. Veja a Secção 6.3.6.2, “Escolher e Instalar Software” para informações adicionais.

5.3.4. Passagem de argumentos a módulos do kernel

Se os drivers estiverem compilados no kernel, pode passar-lhes parâmetros conforme é descrito na documentação do kernel. No entanto, se os drivers forem compilados como módulos e porque os módulos de kernel são carregados de forma um pouco diferente durante a instalação do que quando arranca um sistema já instalado, não é possível passar parâmetros aos módulos como normalmente faria. Em vez disso, tem de utilizar uma sintaxe especial reconhecida pelo instalador que se assegura que os parâmetros são guardados nos devidos ficheiros de configuração e isso serão utilizados quando os módulos forem carregados. Os parâmetros também se irão propagar automaticamente na configuração para o sistema instalado.

Note que agora é extremamente raro ser necessário passar parâmetros a módulos. Na maioria dos casos o kernel conseguirá detetar o hardware presente num sistema e definir dessa forma bons valores por predefinição. No entanto, em algumas situações poderá ser necessário definir manualmente os parâmetros.

A sintaxe a utilizar para definir parâmetros para o módulo é:

nome_módulo.parameter_name=valor

Se necessitar passar vários parâmetros ao mesmo ou a diferentes módulos, basta repetir isto. Por exemplo, para fazer com que uma velha placa de rede 3Com utilize o conetor BNC (coaxial) e o IRQ 10, você deve passar:

3c509.xcvr=3 3c509.irq=10

5.3.5. Colocar módulos do kernel na lista negra

Por vezes pode ser necessário colocar um módulo na lista negra para prevenir que este seja carregado automaticamente pelo kernel e pelo udev. Uma razão pode ser que um módulo em particular cause problemas com o seu hardware. O kernel por vezes, também, lista dois controladores diferentes para o mesmo dispositivo. Isto pode fazer com que o dispositivo não funcione corretamente se os controladores estiverem em conflito ou se o controlador errado for carregado primeiro.

Pode colocar um módulo na lista negra utilizando a seguinte sintaxe: nome_do_módulo.blacklist=yes. Isto fará com que o módulo seja colocado na lista negra em /etc/modprobe.d/blacklist.local quer para a instalação, quer para o sistema instalado.

Note que um módulo pode ser carregado à mesma pelo próprio sistema de instalação. Pode prevenir que isto aconteça ao correr o instalador em modo Expert e desseleccionar o módulo a partir da lista de módulos mostrada durante as fases de deteção de hardware.



[3] Com os kernel atuais (2.6.9 ou posteriores) pode utilizar até 32 opções de linha de comandos e 32 opções de ambiente. Se este números forem excedidos ocorrerá um kernel panic (colapso). Existe também um limite de 255 caracteres para toda a linha de comandos do kernel, acima deste limite será tudo truncado.