Capítulo 21. Preparando para uma instalação de Rede.

A instalação de rede que utiliza um servidor de instalação permite que você instale Red Hat Enterprise Linux em vários sistemas usando um servidor Preboot Execution Environment. Desta forma, todos os sistemas configurados para fazer isso irão inicializar usando uma imagem fornecida por este servidor e iniciarão o programa de instalação automaticamente.
Diferentemente da maioria dos outros meios de instalação, nenhuma mídia de inicialização física é necessária para ser conectada no cliente (ou seja, o sistema no qual você está instalando), a fim de iniciar a instalação. Este capítulo descreve os passos que você deve tomar para se preparar para as instalações PXE.
Os passos seguintes devem ser executados para preparar uma instalação de rede:
  1. Configure a rede (NFS, HTTPS, HTTP, ou o servidor FTP) para exportar a árvore de instalação ou a imagem ISO de instalação. Para procedimentos que descrevem a configuração, veja Seção 2.3.3, “Fonte de Instalação em uma Rede”..
  2. Configure os arquivos no servidor tftp necessários para a inicialização de rede, configure o DHCP, e inicie o serviço tftp no servidor PXE. Veja Seção 21.1, “Configurando a Inicialização do PXE” para obter mais detalhes.
  3. Inicialize o cliente (o sistema onde você deseja instalar o Red Hat Enterprise Linux) e inicie a instalação. Veja Seção 21.2, “Inicializando a Instalação de Rede” para obter mais informações.

Nota

Os procedimentos neste capítulo descreve como configurar um servidor PXE em um sistema Red Hat Enterprise Linux 7 . Para obter mais detalhes sobre como configurar PXE em lançamentos anteriores do Red Hat Enterprise Linux, veja o Installation Guide apropriado para este lançamento.

21.1. Configurando a Inicialização do PXE

Depois de configurar um servidor de rede que contém os repositórios de pacotes a serem utilizados na instalação, o próximo passo é configurar o próprio servidor PXE. Este servidor irá conter os arquivos necessários para inicializar o Red Hat Enterprise Linux e iniciar a instalação. Além disso, um servidor DHCP deve ser configurado, e todos os serviços necessários devem ser habilitados e iniciados.

Nota

O procedimento da configuração da inicialização do PXE difere se o sistema AMD64/Intel 64 onde você deseja instalar o Red Hat Enterprise Linux usa o BIOS ou UEFI. Consulte sua documentação de hardware para ver quais sistemas são utilizados em seu hardware, e depois siga o procedimento adequado neste capítulo.
Um procedimento separado é fornecido para quando você utilizar os servidores da IBM power Systems como um sistema de instalação. Veja Seção 21.1.3, “Configurando um Servidor PXE para Clientes IBM Power Systems” para obter mais detalhes.
IBM System z não suporta a inicialização do PXE
Para mais informações sobre como configurar um servidor PXE para uso com sistemas sem cabeçote (sistemas sem display diretamente ligado, teclado e mouse), veja Seção 22.4, “Considerações para Sistemas Headless”.

21.1.1. Configurar o Servidor PXE para os Clientes baseados em BIOS

O procedimento a seguir irá preparar o servidor do PXE para a inicialização dos sistemas AMD64 e Intel . Para obter mais informações sobre os sistemsa baseados em UEFI, veja Seção 21.1.2, “Configurando um Servidor PXE para os Clientes baseados em UEFI”.

Procedimento 21.1. Configurando a Inicialização do PXE para Sistemas baseados em BIOS

  1. Instale o pacote tftp. Para fazer isto, execute o seguinte comando como usuário root:
    # yum install tftp-server
  2. No arquivo de configuração /etc/xinetd.d/tftp mude o parâmetro disabled de yes para no.
  3. Configure seu servidor DHCP para usar as imagens de inicialização empacotadas com o SYSLINUX. Caso você não tenha um servidor DHCP instalado, veja Red Hat Enterprise Linux 7 Networking Guide para obter instruções.
    Uma configuração de amostra no arquivo /etc/dhcp/dhcpd.conf deve se parecer com esta:
      option space pxelinux;
      option pxelinux.magic code 208 = string;
      option pxelinux.configfile code 209 = text;
      option pxelinux.pathprefix code 210 = text;
      option pxelinux.reboottime code 211 = unsigned integer 32;
    
      subnet 10.0.0.0 netmask 255.255.255.0 {
        option routers 10.0.0.254;
        range 10.0.0.2 10.0.0.253;
    
        class "pxeclients" {
          match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
          next-server 10.0.0.1;
    			
          if option arch = 00:07 {
            filename "uefi/shim.efi";
          } else {
            filename "pxelinux/pxelinux.0";
          }
        }
    
        host example-ia32 {
          hardware ethernet XX:YY:ZZ:11:22:33;
          fixed-address 10.0.0.2;
        }
      }
    
  4. Você agora precisa do arquivo pxelinux.0 do pacote SYSLINUX no arquivo de imagem ISO. Para acessá-lo, execute os seguintes comandos como root:
    # mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
    # cp -pr /mount_point/Packages/syslinux-version-architecture.rpm /publicly_available_directory
    # umount /mount_point
    Extrair o pacote:
    # rpm2cpio syslinux-version-architecture.rpm | cpio -dimv
  5. Crie um diretório pxelinux/ dentro do tftpboot/ e copie o arquivo pxelinux.0 nele:
    # mkdir /var/lib/tftpboot/pxelinux
    # cp publicly_available_directory/usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/pxelinux
  6. Adicione um arquivo de configuração ao diretório pxelinux/. O nome do arquivo deve ser tanto um default, como baseado em endereço de IP de sistema. Por exemplo, se o endereço de IP da sua máquina for 10.0.0.1, o nome do arquivo será 0A000001.
    Um arquivo de configuração em /var/lib/tftpboot/pxelinux/default deve se parecer com este:
    default vesamenu.c32
    prompt 1
    timeout 600
    
    display boot.msg
    
    label linux
      menu label ^Install system
      menu default
      kernel vmlinuz
      append initrd=initrd.img ip=dhcp inst.repo=http://10.32.5.1/mnt/archive/RHEL-7/7.x/Server/x86_64/os/
    label vesa
      menu label Install system with ^basic video driver
      kernel vmlinuz
      append initrd=initrd.img ip=dhcp inst.xdriver=vesa nomodeset inst.repo=http://10.32.5.1/mnt/archive/RHEL-7/7.x/Server/x86_64/os/
    label rescue
      menu label ^Rescue installed system
      kernel vmlinuz
      append initrd=initrd.img rescue
    label local
      menu label Boot from ^local drive
      localboot 0xffff
    

    Nota

    Duas opções separadas podem ser usadas para carregar o programa de instalação:
    • A opção inst.repo= Anaconda, como demonstrado no exemplo acima. Esta opção permitirá que você carregue o instalador e especifique a fonte de instalação ao mesmo tempo. Para mais informações sobre opções de inicialização para o Anaconda, veja Seção 20.1, “Configurando o Sistema de Instalação no Menu de Inicialização”.
    • A opção root= dracut . Se você usar esta opção, você deve especificar o local do initrd.img extraído da mídia de inicialização do Red Hat Enterprise Linux 7. O uso desta opção irá permitir que você inicie o instalador, mas você terá de especificar uma fonte de instalação de uma outra forma (usando um arquivo de Kickstart ou manualmente na interface do instalador gráfico). Para mais informações sobre opções de linha de comando Dracut , consulte a página man dracut.cmdline(7).
    Uma destas duas opções devem sempre ser utilizadas.
  7. Copie as imagens de inicialização em seu diretório root do seu tftp/:
    # cp /path/to/x86_64/os/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/pxelinux/
  8. Ative e inicie os serviços tftp and xinetd usando o comando systemctl.
    # systemctl enable xinetd.service tftp.service
    # systemctl start xinetd.service tftp.service
Após terminar este procedimento, o servidor PXE estará pronto para iniciar a instalação da rede. Agora você pode iniciar o sistema onde você deseja instalar Red Hat Enterprise Linux, selecione Boot PXE quando solicitado para especificar uma fonte de inicialização, e iniciar a instalação da rede.

21.1.2. Configurando um Servidor PXE para os Clientes baseados em UEFI

O procedimento a seguir irá preparar o servidor do PXE para inicializar os sistemas AMD64 e Intel 64 baseados em UEFI. Para informações sobre os sistemas baseados em BIOS, veja Seção 21.1.1, “Configurar o Servidor PXE para os Clientes baseados em BIOS”.

Procedimento 21.2. Configurando a Inicialização do PXE para Sistemas baseados em UEFI

  1. Instale o pacote tftp. Para fazer isto, execute o seguinte comando como usuário root:
    # yum install tftp-server
  2. No arquivo de configuração /etc/xinetd.d/tftp mude o parâmetro disabled de yes para no.
  3. Configure seu servidor DHCP para usar as imagens de inicialização EFI empacotadas com o shim. Caso você não tenha um servidor DHCP instalado, veja Red Hat Enterprise Linux 7 Networking Guide para obter instruções.
    Uma configuração de amostra no arquivo /etc/dhcp/dhcpd.conf deve se parecer com esta:
      option space PXE;
      option PXE.mtftp-ip    code 1 = ip-address;
      option PXE.mtftp-cport code 2 = unsigned integer 16;
      option PXE.mtftp-sport code 3 = unsigned integer 16;
      option PXE.mtftp-tmout code 4 = unsigned integer 8;
      option PXE.mtftp-delay code 5 = unsigned integer 8;
      option arch code 93 = unsigned integer 16; # RFC4578
    
      subnet 10.0.0.0 netmask 255.255.255.0 {
        option routers 10.0.0.254;
        range 10.0.0.2 10.0.0.253;
    
        class "pxeclients" {
          match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
          next-server 10.0.0.1;
    
          if option arch = 00:07 {
            filename "uefi/shim.efi";
            } else {
            filename "pxelinux/pxelinux.0";
          }
        }
    
        host example-ia32 {
          hardware ethernet XX:YY:ZZ:11:22:33;
          fixed-address 10.0.0.2;
        }
      }
    
  4. Você precisa do arquivo shim.efi a partir do pacote shim e o arquivo grubx64.efi a partir do pacote grub2-efi no aruqivo de imagem ISO. Para acessá-los, execute os seguintes comandos como usuário root:
    # mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
    # cp -pr /mount_point/Packages/shim-version-architecture.rpm /publicly_available_directory
    # cp -pr /mount_point/Packages/grub2-efi-version-architecture.rpm /publicly_available_directory
    # umount /mount_point
    Extrair pacotes
    # rpm2cpio shim-version-architecture.rpm | cpio -dimv
    # rpm2cpio grub2-efi-version-architecture.rpm | cpio -dimv
  5. Crie um diretório dentro de um diretório tftpboot/ chamado uefi/ para as imagens de inicialização EFI, e copie-as a partir de seu diretório de inicialização:
    # mkdir /var/lib/tftpboot/uefi
    # cp publicly_available_directory/boot/efi/EFI/redhat/shim.efi /var/lib/tftpboot/uefi/
    # cp publicly_available_directory/boot/efi/EFI/redhat/grubx64.efi /var/lib/tftpboot/uefi/
  6. Adicione um arquivo de configuração chamado grub.cfg para o diretório uefi/. Um arquivo de configuração de amostra em /var/lib/tftpboot/uefi/grub.cfg deve se parecer com este:
    set timeout=1
      menuentry 'RHEL' {
      linuxefi uefi/vmlinuz ip=dhcp inst.repo=http://10.32.5.1/mnt/archive/RHEL-7/7.x/Server/x86_64/os/
      initrdefi uefi/initrd.img
    }
    

    Nota

    Duas opções separadas podem ser usadas para carregar o programa de instalação:
    • A opção inst.repo= Anaconda, como demonstrado no exemplo acima. Esta opção permitirá que você carregue o instalador e especifique a fonte de instalação ao mesmo tempo. Para mais informações sobre opções de inicialização para o Anaconda, veja Seção 20.1, “Configurando o Sistema de Instalação no Menu de Inicialização”.
    • A opção root= dracut . Se você usar esta opção, você deve especificar o local do initrd.img extraído da mídia de inicialização do Red Hat Enterprise Linux 7. O uso desta opção irá permitir que você inicie o instalador, mas você terá de especificar uma fonte de instalação de uma outra forma (usando um arquivo de Kickstart ou manualmente na interface do instalador gráfico). Para mais informações sobre opções de linha de comando Dracut , consulte a página man dracut.cmdline(7).
    Uma destas duas opções devem sempre ser utilizadas.
  7. Copie as imagens de inicialização para seu diretório uefi/:
    # cp /path/to/x86_64/os/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/uefi/
  8. Ative e inicie os serviços tftp and xinetd usando o comando systemctl.
    # systemctl enable xinetd.service tftp.service
    # systemctl start xinetd.service tftp.service
Após terminar este procedimento, o servidor PXE estará pronto para iniciar a instalação da rede. Agora você pode iniciar o sistema onde você deseja instalar Red Hat Enterprise Linux, selecione Boot PXE quando solicitado para especificar uma fonte de inicialização, e iniciar a instalação da rede.

21.1.3. Configurando um Servidor PXE para Clientes IBM Power Systems

O procedimento a seguir irá preparar o servidor do PXE para inicializar os servidores IBM Power Systems.

Procedimento 21.3. Configurando a Inicialização de PXE para IBM Power Systems

  1. Instale o pacote tftp. Para fazer isto, execute o seguinte comando como usuário root:
    # yum install tftp-server
  2. No arquivo de configuração /etc/xinetd.d/tftp mude o parâmetro disabled de yes para no.
  3. Configure seu servidor DHCP para usar as imagens de inicialização empacotadas com o recurso yaboot. Caso você não tenha um servidor DHCP instalado, veja Red Hat Enterprise Linux 7 Networking Guide para obter instruções.
    Uma configuraçao de amostra em /etc/dhcp/dhcpd.conf se parece com esta abaixo:
      host bonn { 
        filename "yaboot";
        next-server             10.32.5.1;
        hardware ethernet 00:0e:91:51:6a:26;
        fixed-address 10.32.5.144;
      }
    
  4. Você agora precisa do arquivo binário yaboot do pacote no pacote yaboot no arquivo de imagem ISO . Para acessá-lo, execute os seguintes comandos como root:
    # mkdir /publicly_available_directory/yaboot-unpack
    # mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
    # cp -pr /mount_point/Packages/yaboot-version.ppc.rpm /publicly_available_directory/yaboot-unpack
    Extrair o pacote:
    # cd /publicly_available_directory/yaboot-unpack
    # rpm2cpio yaboot-version.ppc.rpm | cpio -dimv
  5. Create a yaboot directory within the tftpboot/ directory and copy the yaboot binary file into it:
    # mkdir /var/lib/tftpboot/yaboot
    # cp publicly_available_directory/yaboot-unpack/usr/lib/yaboot/yaboot /var/lib/tftpboot/yaboot
  6. Adicione um arquivo de configuração com nome de yaboot.conf a este diretório. Um arquivo de configuração de exemplo deve se parecer com esta:
    init-message = "\nWelcome to the Red Hat Enterprise Linux 7 installer!\n\n"
    timeout=60
    default=rhel7
    image=/rhel7/vmlinuz-RHEL7
      label=linux
      alias=rhel7
      initrd=/rhel7/initrd-RHEL7.img
      append="ip=dhcp inst.repo=http://10.32.5.1/mnt/archive/RHEL-7/7.0/ppc64/os/"
      read-only
    

    Nota

    Duas opções separadas podem ser usadas para carregar o programa de instalação:
    • A opção inst.repo= Anaconda, como demonstrado no exemplo acima. Esta opção permitirá que você carregue o instalador e especifique a fonte de instalação ao mesmo tempo. Para mais informações sobre opções de inicialização para o Anaconda, veja Seção 20.1, “Configurando o Sistema de Instalação no Menu de Inicialização”.
    • A opção root= dracut . Se você usar esta opção, você deve especificar o local do initrd.img extraído da mídia de inicialização do Red Hat Enterprise Linux 7. O uso desta opção irá permitir que você inicie o instalador, mas você terá de especificar uma fonte de instalação de uma outra forma (usando um arquivo de Kickstart ou manualmente na interface do instalador gráfico). Para mais informações sobre opções de linha de comando Dracut , consulte a página man dracut.cmdline(7).
    Uma destas duas opções devem sempre ser utilizadas.
  7. Copiar as imagens de inicialização do ISO extratído em seu diretório root tftp/:
    # cp /mount_point/images/ppc/ppc64/vmlinuz /var/lib/tftpboot/yaboot/rhel7/vmlinuz-RHEL7
    # cp /mount_point/images/ppc/ppc64/initrd.img /var/lib/tftpboot/yaboot/rhel7/initrd-RHEL7.img
  8. Limpe removendo o diretório yaboot-unpack/ e desmontando o ISO:
    # rm -rf /publicly_available_directory/yaboot-unpack
    # umount /mount_point
  9. Ative e inicie os serviços tftp and xinetd usando o comando systemctl.
    # systemctl enable xinetd.service tftp.service
    # systemctl start xinetd.service tftp.service
Após terminar este procedimento, o servidor PXE estará pronto para iniciar a instalação da rede. Agora você pode iniciar o sistema onde você deseja instalar Red Hat Enterprise Linux, selecione Boot PXE quando solicitado para especificar uma fonte de inicialização, e iniciar a instalação da rede.