Ir para o conteúdoIr para navegação de página: página anterior [tecla de acesso p]/próxima página [tecla de acesso n]
documentation.suse.com / Documentação do SUSE Linux Enterprise Server / Deployment Guide / Setting Up an Installation Server / Preparando a inicialização do sistema de destino
Aplica-se a SUSE Linux Enterprise Server 12 SP5

9 Preparando a inicialização do sistema de destino

O SUSE® Linux Enterprise Server pode ser instalado de várias maneiras. Além da instalação comum de mídia descrita no Capítulo 6, Instalação com o YaST, você pode escolher uma das várias abordagens baseadas em rede ou até optar por uma abordagem totalmente sem intervenção para a instalação do SUSE Linux Enterprise Server.

Os exemplos usam NFS para suprir os dados de instalação. Para usar FTP, SMB ou HTTP, consulte o Capítulo 8, Configurando o servidor que mantém as fontes de instalação.

Nota
Nota: Terminologia

Nas seções a seguir, o sistema que armazenará a instalação do novo SUSE Linux Enterprise Server é chamado de sistema de destino ou destino de instalação. O termo repositório (antes chamado de fonte de instalação) é usado para todas as fontes de dados de instalação. Isso inclui mídia física, como CD e DVD e servidores de rede que distribuem os dados de instalação na sua rede.

Esta seção aborda as tarefas de configuração necessárias em cenários complexos de inicialização. Contém exemplos de configurações prontas para aplicar referentes a DHCP, inicialização PXE, TFTP e Wake on LAN.

Nos exemplos, assumimos que os servidores DHCP, TFTP e NFS residem na mesma máquina com o IP 192.168.1.1. Todos os serviços podem residir em máquinas diferentes sem problemas. Mude os endereços IP conforme necessário.

9.1 Configurando um servidor DHCP

Além de oferecer alocação automática de endereços aos seus clientes de rede, o servidor DHCP anuncia o endereço IP do servidor TFTP e o arquivo que precisa ser extraído por meio das rotinas de instalação na máquina de destino. O arquivo que precisa ser carregado depende da arquitetura da máquina de destino e se foi utilizado BIOS legado ou boot UEFI.

  1. Efetue login como root na máquina que hospeda o servidor DHCP.

  2. Habilite o servidor DHCP executando systemctl enable dhcpd.

  3. Anexe as linhas seguintes a uma configuração de sub-rede do arquivo de configuração de seu servidor DHCP localizado em /etc/dhcpd.conf:

    # The following lines are optional
    option domain-name "my.lab";
    option domain-name-servers 192.168.1.1;
    option routers 192.168.1.1;
    option ntp-servers 192.168.1.1;
    ddns-update-style none;
    default-lease-time 3600;
    
    # The following lines are required
    option arch code 93 = unsigned integer 16; # RFC4578
    subnet 192.168.1.0 netmask 255.255.255.0 {
     next-server 192.168.1.1;
     range 192.168.1.100 192.168.1.199;
     default-lease-time 3600;
     max-lease-time 3600;
     if option arch = 00:07 or option arch = 00:09 {
       filename "/EFI/x86/grub.efi";
     }
     else if option arch = 00:0b {
       filename "/EFI/aarch64/bootaa64.efi";
     }
     else  {
       filename "/BIOS/x86/pxelinux.0";
     }
    }

    Este exemplo de configuração usa a sub-rede 192.168.1.0/24 com o DHCP, o DNS e o gateway no servidor com o IP 192.168.1.1. Verifique se todos os endereços IP usados mudam de acordo com o layout da rede. Para obter mais informações sobre as opções disponíveis em dhcpd.conf, consulte a página de manual sobre dhcpd.conf.

  4. Reinicie o servidor DHCP executando systemctl restart dhcpd.

Se você planeja usar SSH para controle remoto de uma instalação PXE e Wake on LAN, especifique o endereço IP que o DHCP deve fornecer ao destino de instalação. Para isso, modifique a configuração DHCP mencionada acima de acordo com o exemplo a seguir:

group {
 host test {
   hardware ethernet MAC_ADDRESS;
   fixed-address IP_ADDRESS;
   }
}

A declaração de host apresenta o nome de host do destino de instalação. Para vincular o nome de host e o endereço IP a um host específico, você deve saber e especificar o endereço de hardware (MAC) do sistema. Substitua todas as variáveis usadas neste exemplo pelos valores reais que correspondem ao seu ambiente.

Após a reinicialização do servidor DHCP, ele fornece um IP estático para o host especificado, habilitando-o a conectar-se ao sistema por SSH.

9.2 Configurando um servidor TFTP

Se for usada a instalação baseada no SUSE, será possível usar o YaST para configurar um Servidor TFTP. Se preferir, configure-o manualmente. O servidor TFTP entrega a imagem de boot ao sistema de destino após a inicialização e envia uma solicitação para ele.

9.2.1 Configurando um servidor TFTP usando YaST

  1. Efetue login como root.

  2. Inicie YaST › Serviços de Rede › Servidor TFTP e instale o pacote solicitado.

  3. Clique em Habilitar para verificar se o servidor foi iniciado e incluído nas rotinas de inicialização. Você não precisa executar nenhuma outra ação para garantir isso. O xinetd inicia o tftpd no momento da inicialização.

  4. Clique em Abrir Porta no Firewall para abrir a porta adequada no firewall em execução na sua máquina. Se nenhum firewall estiver em execução no seu servidor, esta opção não está disponível.

  5. Clique em Pesquisar para pesquisar o diretório de imagem de inicialização. O diretório padrão /srv/tftpboot é criado e selecionado automaticamente.

  6. Clique em Concluir para aplicar as suas configurações e iniciar o servidor.

9.2.2 Configurando um servidor TFTP manualmente

  1. Efetue login como root e instale os pacotes tftp e xinetd.

  2. Modifique a configuração do xinetd localizado em /etc/xinetd.d para certificar-se de que o servidor TFTP seja iniciado no boot:

    1. Se não existir, crie um arquivo chamado tftp neste diretório com touch tftp. Em seguida, execute chmod 755 tftp.

    2. Abra o arquivo tftp e adicione as seguintes linhas:

      service tftp
      {
              socket_type            = dgram
              protocol               = udp
              wait                   = yes
              user                   = root
              server                 = /usr/sbin/in.tftpd
              server_args            = -s /srv/tftpboot
              disable                = no
      }
    3. Grave o arquivo e reinicie xinetd com o comando rcxinetd restart.

9.3 Instalando arquivos no servidor TFTP

Os procedimentos a seguir descrevem como preparar o servidor para máquinas de destino com UEFI e BIOS em arquiteturas x86 de 32 e 64 bits. A estrutura preparada já dispõe também de um local para os sistemas AArch64.

9.3.1 Preparando a estrutura

Neste procedimento, substitua VERSÃO_OS e VERSÃO_SP pelo sistema operacional e pela versão do pacote de serviço usados. Por exemplo, use sles12 e sp5.

  1. Crie uma estrutura em /srv/tftpboot para suportar as diversas opções.

    root # mkdir -p /srv/tftpboot/BIOS/x86
    root # mkdir -p /srv/tftpboot/EFI/x86/boot
    root # mkdir -p /srv/tftpboot/EFI/aarch64/boot
    root # mkdir -p /srv/install/x86/OS_VERSION/SP_VERSION/cd1
    root # mkdir -p /srv/install/aarch64/OS_VERSION/SP_VERSION/cd1
  2. Faça download das imagens ISO de DVD do SUSE Linux Enterprise Server 12 SP5 do site da SUSE na Web para todas as arquiteturas necessárias.

  3. Monte os arquivos ISO conforme descrito na Seção 8.6, “Usando imagens ISO da mídia de instalação no servidor”. Para que os arquivos fiquem disponíveis após a reinicialização, crie uma entrada em /etc/fstab. Para a instalação padrão, apenas o DVD 1 é necessário.

    root # mount -o loop PATH_TO_ISO /srv/install/ARCH/OS_VERSION/SP_VERSION/cd1/

    Repita essa etapa para todas as arquiteturas necessárias e substitua ARCH por x86 ou aarch64, e CAMINHO_PARA_ISO pelo caminho para o arquivo ISO correspondente.

  4. Copie os arquivos kernel, initrd e message necessários para o BIOS x86 e boot UEFI no local apropriado.

    root # cd /srv/install/x86/OS_version/SP_version/cd1/boot/x86_64/loader/
    root # cp -a linux initrd message /srv/tftpboot/BIOS/x86/
  5. Verifique se o caminho /srv/install está disponível por meio do NFS. Para obter os detalhes, consulte a Seção 8.2, “Configurando um repositório NFS manualmente”.

9.3.2 Arquivos BIOS para x86

  1. Copie pxelinux.0 para a pasta TFTP e prepare uma subpasta para o arquivo de configuração.

    root # cp /usr/share/syslinux/pxelinux.0 /srv/tftpboot/BIOS/x86/
    root # mkdir /srv/tftpboot/BIOS/x86/pxelinux.cfg
  2. Crie /srv/tftpboot/BIOS/x86/pxelinux.cfg/default e adicione as seguintes linhas:

    default install
    
    # hard disk
    label harddisk
     localboot -2
    # install
    label install
     kernel linux
     append initrd=initrd install=nfs://192.168.1.1:/srv/install/x86/OS_version/SP_version/cd1
    
    display message
    implicit 0
    prompt 1
    timeout 5
  3. Edite o arquivo /srv/tftpboot/BIOS/x86/message para refletir o arquivo default que você acabou de editar.

    Welcome to the Installer Environment!
    
    To start the installation enter 'install' and press <return>.
    
    Available boot options:
     harddisk   - Boot from Hard Disk (this is default)
     install    - Installation

9.3.3 Arquivos UEFI para x86

Neste procedimento, substitua versão_OS e versão_SP pelo sistema operacional e pela versão de pacote de serviço usados. Por exemplo, use sles12 e sp5.

  1. Copie todos os arquivos grub2 necessários para inicialização UEFI.

    root # cd /srv/install/x86/OS_version/SP_version/cd1/EFI/BOOT
    root # cp -a bootx64.efi grub.efi MokManager.efi /srv/tftpboot/EFI/x86/
  2. Copie os arquivos kernel e initrd para a estrutura de diretórios.

    root # cd /srv/install/x86/OS_version/SP_version/cd1/boot/x86_64/loader/
    root # cp -a linux initrd /srv/tftpboot/EFI/x86/boot
  3. Crie o arquivo /srv/tftpboot/EFI/x86/grub.cfg com, no mínimo, este conteúdo:

    set timeout=5
    menuentry 'Install OS_version SP_version for x86_64' {
      linuxefi /EFI/x86/boot/linux \
       install=nfs://192.168.1.1/srv/install/x86/OS_version/SP_version/cd1
      initrdefi /EFI/x86/boot/initrd
    }

9.3.4 Arquivos UEFI para AArch64

Neste procedimento, substitua versão_OS e versão_SP pelo sistema operacional e pela versão de pacote de serviço usados. Por exemplo, use sles12 e sp5.

  1. Isso é feito de modo muito semelhante ao do ambiente EFI x86_64. Comece copiando os arquivos necessários para inicialização UEFI de um ambiente grub2-efi.

    root # cd /srv/install/aarch64/OS_version/SP_version/cd1/EFI/BOOT
    root # cp -a bootaa64.efi /srv/tftpboot/EFI/aarch64/
  2. Copie o kernel e o initrd para a estrutura de diretórios.

    root # cd /srv/install/aarch64/OS_version/SP_version/cd1/boot/aarch64
    root # cp -a linux initrd /srv/tftpboot/EFI/aarch64/boot
  3. Agora, crie o arquivo /srv/tftpboot/EFI/grub.cfg e adicione o seguinte conteúdo:

    menuentry 'Install OS_version SP_version' {
      linux /EFI/aarch64/boot/linux network=1 usessh=1 sshpassword="suse" \
       install=nfs://192.168.1.1:/srv/install/aarch64/OS_version/SP_version/cd1 \
       console=ttyAMA0,115200n8
      initrd /EFI/aarch64/boot/initrd
    }

    Essa adição ao arquivo de configuração tem algumas outras opções para habilitar o console serial e permitir a instalação por SSH, que é útil para sistemas que não têm uma interface de console KVM padrão. Você perceberá que isso é configurado para uma plataforma ARM específica.

9.4 Opções de configuração PXELINUX

As opções relacionadas aqui são um subconjunto de todas as opções disponíveis para o arquivo de configuração PXELINUX.

APPEND OPTIONS

Adicione uma ou mais opções à linha de comando do kernel. São adicionadas para inicializações manuais e automáticas. As opções são adicionadas no início da linha de comando do kernel, normalmente permitindo que as opções de kernel digitadas explicitamente as substituam.

APPEND -

Não anexa nada. APPEND com um único hífen como argumento em uma seção LABEL pode ser usado para anular um APPEND global.

DEFAULT KERNEL_OPTIONS...

Configura a linha de comando padrão do kernel. Se PXELINUX é inicializado automaticamente, atua como se as entradas após DEFAULT tivessem sido digitadas no prompt de boot, exceto a opção auto, que é adicionada automaticamente, indicando uma inicialização automática.

Se não houver nenhum arquivo de configuração ou nenhuma entrada DEFAULT definida no arquivo de configuração, o padrão será o nome do kernel linux sem opções.

IFAPPEND FLAG

Adiciona uma opção específica à linha de comando do kernel de acordo com o valor FLAG. A opção IFAPPEND está disponível apenas no PXELINUX. FLAG espera um valor, descrito em Tabela 9.1, “Opções de linha de comando do kernel geradas e adicionadas do IFAPPEND:

Tabela 9.1: Opções de linha de comando do kernel geradas e adicionadas do IFAPPEND

Argumento

Linha de Comando do Kernel Gerada/Descrição

1

ip=CLIENT_IP:BOOT_SERVER_IP:GW_IP:NETMASK

Os marcadores são substituídos de acordo com a entrada do servidor DHCP/BOOTP ou boot PXE.

Observe que essa opção não substitui a execução de um cliente DHCP no sistema inicializado. Sem as renovações regulares, o aluguel adquirido pelo BIOS PXE vai expirar, disponibilizando o endereço IP para reutilização do servidor DHCP.

2

BOOTIF=MAC_ADDRESS_OF_BOOT_INTERFACE

Essa opção é útil para evitar tempos de espera quando o servidor de instalação investiga uma interface LAN em seguida da outra, até obter a resposta de um servidor DHCP. Essa opção permite que um programa initrd determine de qual interface o sistema foi inicializado. O linuxrc lê essa opção e utiliza essa interface de rede.

4

SYSUUID=SYSTEM_UUID

Adiciona UUIDs como hexadecimais em minúsculas, consulte /usr/share/doc/packages/syslinux/pxelinux.txt

LABEL LABEL KERNEL IMAGE APPEND OPTIONS...

Indica que, se for digitado LABEL como o Kernel a ser inicializado, o PXELINUX deverá inicializar IMAGE, e as opções APPEND especificadas deverão ser usadas em vez das que estão especificadas na seção global do arquivo (antes do primeiro comando LABEL). O padrão para IMAGE é o mesmo de LABEL e, se não for fornecido nenhum APPEND, o padrão será usar a entrada global (se houver). Até 128 entradas LABEL são permitidas.

E PXELINUX usa a seguinte sintaxe:

label MYLABEL
  kernel MYKERNEL
  append MYOPTIONS

Os rótulos são desmembrados como se fossem nomes de arquivo e deverão ser exclusivos após o desmembramento. Por exemplo, não seria possível distinguir os dois rótulos v2.6.30 e v2.6.31 em PXELINUX, pois ambos são desmembrados em um mesmo nome de arquivo do DOS.

O kernel não precisa ser do Linux. Ele também pode ser um setor de boot ou um arquivo COMBOOT.

LOCALBOOT TYPE

Em PXELINUX, especificar LOCALBOOT 0 em vez de uma opção KERNEL significa chamar este rótulo específico e causa uma inicialização de disco local em vez de uma inicialização de kernel.

Argumento

Descrição

0

Executa uma inicialização normal

4

Executa uma inicialização local com o driver UNDI (Universal Network Driver Interface) ainda residente na memória

5

Realiza uma inicialização local com toda a pilha PXE, incluindo o driver UNDI, ainda residente na memória

Todos os outros valores são indefinidos. Se você não sabe quais são as pilhas UNDI ou PXE, especifique 0.

TIMEOUT TIME-OUT

Indica quanto tempo esperar no prompt de boot até inicializar automaticamente, em unidades de 1/10 de segundo. O tempo de espera é cancelado quando o usuário digita algo no teclado, considerando que ele concluirá o comando que começou. O tempo de espera zero desabilita completamente o tempo de espera (que é também o padrão). O valor do tempo de espera máximo possível é 35996 (pouco menos de uma hora).

PROMPT val_flag

Se flag_val for 0, o prompt de boot apenas será exibido se a tecla Shift ou Alt for pressionada ou se Caps Lock ou Scroll Lock estiver ativado (padrão). Se val_flag for 1, exibirá sempre o prompt de boot.

F2  FILENAME
F1  FILENAME
..etc...
F9  FILENAME
F10 FILENAME

Exibe o arquivo indicado na tela quando uma tecla de função é pressionada no prompt de boot. Isso pode ser usado para implementar a ajuda online de pré-inicialização (supostamente para as opções de linha do comando do kernel). Para compatibilidade com versões anteriores, F10 também pode ser digitado como F0. Observe que ainda não há um meio de vincular nomes de arquivo a F11 e F12.

9.5 Preparando o sistema de destino para inicialização PXE

Prepare o BIOS do sistema para a inicialização PXE incluindo a opção PXE na ordem de inicialização do BIOS.

Atenção
Atenção: Ordem de inicialização do BIOS

Não coloque a opção PXE na frente da opção de inicialização do disco rígido no BIOS. Do contrário, o sistema tentaria se reinstalar sempre que fosse inicializado.

9.6 Preparando o sistema de destino para Wake on LAN

Wake on LAN (WOL) requer que a opção de BIOS adequada seja habilitada antes da instalação. Além disso, anote o endereço MAC do sistema de destino. Esses dados são necessários para iniciar o Wake on LAN.

9.7 Ativação na LAN

Wake on LAN permite que a máquina seja ativada por um pacote de rede especial contendo o endereço MAC da máquina. Como toda máquina no mundo tem um identificador MAC exclusivo, não se preocupe caso ligue acidentalmente a máquina errada.

Importante
Importante: Wake on LAN em diferentes segmentos de rede

Se a máquina controladora não estiver localizada no mesmo segmento de rede que o destino de instalação que deve ser acionado, configure as solicitações WOL para serem enviadas como multicasts ou controle remotamente uma máquina nesse segmento de rede para atuar como remetente das solicitações.

Os usuários do SUSE Linux Enterprise Server podem utilizar um módulo do YaST chamado WOL para configurar facilmente o Wake on LAN. Os usuários de outras versões de sistemas operacionais baseados no SUSE Linux podem usar uma ferramenta de linha de comando.

9.8 Wake on LAN com o YaST

  1. Efetue login como root.

  2. Inicie YaST › Serviços de Rede › WOL.

  3. Clique em Adicionar e digite o nome de host e o endereço MAC do sistema de destino.

  4. Para ativar essa máquina, selecione a entrada apropriada e clique em Wake up.

9.9 Inicializando da unidade de CD ou USB, em vez do PXE

Você também pode usar uma unidade de CD, DVD ou USB com uma pequena imagem do sistema em vez de inicializar por PXE. Os arquivos necessários serão carregados por NFS quando o kernel e o initrd forem carregados. É possível criar uma imagem inicializável com mksusecd. Isso poderá ser útil se a máquina de destino não suportar boot PXE.

Faça a instalação com o comando sudo zypper in mksusecd. Use o seguinte comando para criar uma imagem ISO inicializável:

tux > mksusecd --create image.iso \
--net=nfs://192.168.1.1:/srv/install/ARCH/OS_VERSION/SP_VERSION/cd1  \
/srv/tftpboot/EFI/ARCH/boot

Substitua ARCH pela pasta correspondente à arquitetura do sistema de destino. Substitua também versão_OS e versão_SP de acordo com os seus caminhos na Seção 9.3, “Instalando arquivos no servidor TFTP”.

Em vez de usar um servidor NFS para a opção --net, também é possível usar um repositório HTTP. Por exemplo, o repositório openSUSE:

tux > mksusecd --create image.iso \
--net=http://download.opensuse.org/tumbleweed/repo/oss/suse \
/srv/tftpboot/EFI/ARCH/boot

É possível gravar image.iso em um DVD ou CD ou usar o comando dd em um pendrive USB:

root # dd if=image.iso of=/dev/USB_DEVICE

Substitua DISPOSITIVO_USB pelo nome do pendrive USB. Verifique o nome completo do dispositivo para garantir que você não destrua acidentalmente os dados em outra unidade.