quinta-feira, 25 de março de 2010

System Rescue CD via PXE (arranque pela rede)

É sempre bom ter por perto um CD de 'socorro' para resolver problemas nas máquinas.
Melhor ainda, é nem usar CD e arrancar directamente pela rede com PXE.

Um dos meus rescue CDs preferido é o System Rescue CD.
Como já tenho um servidor TFTP para servir vários kernels pela rede (o IP deste servidor tem de ser anunciado por DHCP), é simples incorporar esta distribuição.

Depois de descarregar o ficheiro .iso (p.ex. systemrescuecd-x86-1.5.0.iso), este pode ser montado para acedermos ao conteúdo:

# mkdir /mnt/iso && mount -o loop systemrescuecd-x86-1.5.0.iso /mnt/iso

O meu directório de TFTP é /tftpboot e crio /tftpboot/srcd150, onde coloco o conteúdo do directório /mnt/iso/isolinux:

# mkdir /tftpboot/srcd150 && cp -a /mnt/iso/isolinux/* /tftpboot/srcd150/

O ficheiro /mnt/iso/sysrcd.dat vai para uma partilha NFS (nfs_server:/nfs/srcd150), que será acedida pela máquina-cliente no momento de carregar o root filesystem.

Basta alterar agora o display de arranque, mostrando a nova opção de boot (p.ex., srcd150) e a configuração pxelinux (/tftpboot/pxelinux.cfg/default), inserindo as linhas com as opções básicas (setkmap=29 coloca o teclado em português):

label srcd150
kernel srcd150/rescuecd
append initrd=srcd150/initram.igz nfsboot=nfs_server:/nfs/srcd150 setkmap=29

Prontos para boot? :)

1 comentário: