LVM em Red Hat Kickstart

Normalmente ao preparar um esquema de particionamento para um kickstart utilizamos diretamente partições primárias e/ou extendidas no disco, porém é possível fazer todo o preparo diretamente com a utilização de LVM de uma forma bem simples e prática.

Considere o esquema de particionamento abaixo:

Não LVM:
/boot – 128MB

LVM:
/ – 10GB
/home – 20GB
/var – 35GB
swap – 8GB

As entradas no kickstart para limpar a tabela de partições e aplicar o esquema acima serão as seguintes:

clearpart –all
part /boot –fstype ext3 –size=128
part pv.4 –size=0 –grow
volgroup VolGroup00 pv.4
logvol / –fstype ext3 –name=root –vgname=VolGroup00 –size=10240
logvol /home –fstype ext3 –name=usr –vgname=VolGroup00 –size=20480
logvol /var –fstype ext3 –name=var –vgname=VolGroup00 –size=35840
logvol swap –fstype swap –name=swap –vgname=VolGroup00 –size=8192

Caso você queira fixar a partição /boot em um determinado disco (por exemplo /dev/sda) é possível adicionando a opção “–ondisk=sda” na linha referente ao /boot. A opção –grow especificada ao criar o pv (phisical volume) informa que todo o restante do disco será utilizado para o LVM.

Mais informações sobre opções disponíveis para kickstart podem ser encontradas na documentação oficial Red Hat.

Red Hat Boot Media + Kickstart

Recentemente precisei realizar testes com arquivos de kickstart em Red Hat Linux antes de colocá-los no servidor de provisioning para distribuição e o metodo mais simples sem dúvida é o boot através de CD/USB.

É um processo bem simples e super eficiente para instalação de novos servidores, porém pouco difundido (em breve teremos um artigo dedicado a este tipo de instalação!). O artigo tem como referência Red Hat Enterprise Linux porém funciona perfeitamente em sistemas CentOS.

Nas midias de instalação do sistema (isos) é disponibilizada uma pasta chamada isolinux que contém todos os arquivos necessários para o bootdisk (esta pasta não é disponível na mídia da plataforma Itanium). Copie esta pasta em um diretório temporário:

$ cp -r /isolinux /tmp
$ cd /tmp

Obs. Se a sua intenção é utilizar um arquivo de kickstart para a instalação (e não apenas um bootdisk), copie o arquivo ks.cfg para a pasta isolinux antes de prosseguir.

Certifique-se que as permissoes estão corretas com:

$ chmod u+w isolinux/*

E crie a imagem diretamente com o mkisofs:

$ mkisofs -o RedHatBootdisk.iso -b isolinux.bin -c boot.cat -no-emul-boot \
  -boot-load-size 4 -boot-info-table -R -J -v -T isolinux/

Agora é só gravar a iso e utilizar o CD no boot do server, ou em caso de virtual machine utilize a iso diretamente.

A mesma imagem (.iso) gerada acima pode ser utilizada para realizar a instalação através de um disco USB (pendrive/flashdisk) sendo necessário apenas transferir a imagem diretamente para o pen drive da seguinte forma:

$ dd if=RedHatBootdisk.iso of=/dev/sda bs=1M

Para aqueles que vão utilizar este disco para iniciar a instalação utilizando um ks entre com a seguinte linha no prompt inicial:

linux ks=cdrom:/ks.cfg