Tags:
create new tag
,
view all tags
---+ Remote Boot and PXE Configuration Para instalação remota, que pode ser via NFS, FTP, HTTP, CDROM, é necessário um boot inicial no node que pode ser um disquete, um cd, um pendrive ou através do pxe. O kickstart facilita a instalação pois automatiza o processo sem a necessidade de intervenção do administrador. Utilizando o kernel padrão da distribuição podemos configurar o boot do mesmo com a opção: ==linux ks=floppy== o instalador anaconda procura o arquivo no disquete ou ==linux ks=file:\ks.cfg== o instalador procura no mesmo diretorio de instalação ou ==linux ks=nfs:192.168.1.200:/export/ks.cfg== onde o instalador procura pela rede e utiliza o sistema de arquivos nfs. Vamos ao passo a passo para configurar uma instalação com PXE e NFS: * Primeiramente, é necessário instalar um DHCP server. O arquivo de configuração ==/etc/dhcpd.conf==, baseado na versão 3.x, deve ser parecido com: ==# sample configuration file for DHCP ISC 3.0== %BR% ==ddns-update-style none;== %BR% ==option space PXE;== %BR% ==option PXE.mtftp-ip code 1 = ip-address;== %BR% ==option PXE.mtftp-cport code 2 = unsigned integer 16;== %BR% ==option PXE.mtftp-sport code 3 = unsigned integer 16;== %BR% ==option PXE.mtftp-tmout code 4 = unsigned integer 8;== %BR% ==option PXE.mtftp-delay code 5 = unsigned integer 8;== %BR% ==option PXE.discovery-control code 6 = unsigned integer 8;== %BR% ==option PXE.discovery-mcast-addr code 7 = ip-address;== %BR% ==# PXE specific options== %BR% ==class "pxeclients" {== %BR% ==match if substring (option vendor-class-identifier, 0, 9) = == %BR% =="PXEClient";== %BR% ==option vendor-class-identifier "PXEClient";== %BR% ==vendor-option-space PXE;== %BR% ==# At least one of the vendor-specific options must be set in order == %BR% ==# for the boot ROM on the client to recognize us as a PXE== %BR% ==# compliant server. We set the MCAST IP address to 0.0.0.0 to tell== %BR% ==# the boot ROM we can't provide multicast TFTP, so it will have to== %BR% ==# use just plain ol' TFTP instead (address 0.0.0.0 is considered== %BR% ==# as "no address").== %BR% ==option PXE.mtftp-ip 0.0.0.0;== %BR% ==}== %BR% ==subnet 200.136.80.0 netmask 255.255.255.0== %BR% =={== %BR% ==}== %BR% ==subnet 192.168.1.0 netmask 255.255.255.0 {== %BR% ==deny unknown-clients;== %BR% ==min-lease-time 300;== %BR% ==default-lease-time 1800;== %BR% ==max-lease-time 1800;== %BR% ==use-host-decl-names on;== %BR% ==option subnet-mask 255.255.255.0;== %BR% ==option routers 192.168.1.200;== %BR% ==host node01== %BR% =={== %BR% ==hardware ethernet 00:30:48:71:24:23;== %BR% ==fixed-address node01;== %BR% ==filename "/tftpboot/pxelinux.0";== %BR% ==}== %BR% ==host node02== %BR% =={== %BR% ==hardware ethernet 00:30:48:71:23:A3;== %BR% ==fixed-address node02;== %BR% ==filename "/tftpboot/pxelinux.0";== %BR% ==}}== %BR% * Lembrar de configurar todas as interfaces de rede, mesmo que ela não ofereça o serviço, deixando a em branco. * A seguir, basta instalar o tftp server, normalmente é utilizado o tftp-hpa. * Carregar o serviço com o daemon xinetd. * Verifique se o serviço está ok em ==/etc/xinetd.d/tftp== * Com os serviços configurados, agora precisamos configurar o diretório ==/tftpboot== onde o pxe e o sistema carregarão as configurações e o boot para a instalação. Note que em ==dhcpd.conf== (==filename "/tftpboot/pxelinux.0";==) é definido o arquivo binário de boot. Esse arquivo pode ser copiado do próprio cd de instalação ou http://syslinux.zytor.com/pxe.php No Redhat esse arquivo pode ser encontrado em ==/usr/lib/syslinux/pxelinux.0== * A seguir criamos um arquivo de configuração baseado no lilo.conf em ==/tftpboot/pxelinux.cfg/default== e como exemplo: ==# Mensagem a ser apresentada== %BR% ==DISPLAY pxelinux.cfg/message.txt== %BR% ==# timeout de espera== %BR% ==TIMEOUT 100== %BR% ==# Sempre mostrar o prompt== %BR% ==PROMPT 1== %BR% ==# Default e' realizar o boot normal== %BR% ==DEFAULT boot== %BR% ==LABEL boot== %BR% ==LOCALBOOT 0== %BR% ==LABEL linux== %BR% ==kernel vmlinuz== %BR% ==append ks=nfs:192.168.1.200:/export/kickstart/linux.ks initrd=initrd.img devfs=nomount== %BR% ==#console=ttyS1,19200== %BR% * Note que configuramos o boot, parecido com ==lilo.conf==, porém ele será utilizado pelo node remotamente através do pxe. * Também podemos configurar a mensagem que aparece no boot remoto. Em ==/tftpboot/pxelinux.cfg/message.txt== conforme o arquivo anterior: ==DISPLAY pxelinux.cfg/message.txt== * Por exemplo, digite: =="boot"== para boot via hd ==“linux”== para instalar o node * Lembre-se que os termos em “” depende da definição do arquivo anterior: ==LABEL linux==. * Explicando sobre o kickstart: ==# Kickstart file automatically generated by anaconda.== %BR% * Essa primeira parte define o teclado e o suporte de linguas ==lang en_US.UTF-8== %BR% ==langsupport --default en_US.UTF-8 en_US.UTF-8 pt_BR.UTF-8== %BR% ==keyboard us-acentos== %BR% * Define se será configurado um mouse no sistema ==mouse genericwheelps/2 --device psaux== %BR% * Reboot apos instalacao ==reboot== %BR% * Metodo de instalacao pode ser upgrade ou install ==install== * Modo de instalaçao se será grafico ou texto ==text== * De onde posso pegar os arquivos para instalação, nesse caso, são os arquivos contidos no cd ou ftp da distribuição * NFS ou CD ou FTP ou HTTP ==nfs --server 192.168.1.100 --dir /raid1/SL_308_i386== %BR% ==#Configurando o X== %BR% * A primeira linha eh especifica para o node novo, a segunda eh generica, onde é detectada a placa de video ==#xconfig --card "ATI Radeon (generic)" --videoram 16384 --hsync 30-70 --vsync 50-160 --resolution 1024x768 --depth 24 --defaultdesktop gnome== %BR% ==xconfig --resolution 1024x768 --depth 24 --defaultdesktop gnome== %BR% * Definindo a placa de rede. Você pode definir como sera a placa de rede e quais interfaces ==#network --device eth0 --bootproto dhcp== %BR% ==network --device eth1 --bootproto dhcp== %BR% * Senha criptografada: itautec ==rootpw --iscrypted $1$96lpAZKJ$RpfvtqR8nP9AHrScGgjQM.== %BR% * Habilita ou desabilita o firewall ==firewall –disabled== %BR% * Define autenticacao e timezone ==authconfig --enableshadow --enablemd5== %BR% ==timezone America/Sao_Paulo== %BR% ==#System bootloader, utiliza o grub como padrão e instala na mbr== %BR% ==bootloader --location=mbr== %BR% ==#Partition, particionamento automático== %BR% ==zerombr yes== %BR% ==clearpart --all== %BR% ==part /boot --fstype ext3 --size 100 --asprimary== %BR% ==part / --fstype ext3 --size 12288 --asprimary== %BR% ==part swap --size 4096 --asprimary== %BR% ==part /var --fstype ext3 --size 4096== %BR% ==part /tmp --fstype ext3 --size 2048== %BR% ==part /scratch --fstype ext3 --size 1 --grow== %BR% * Definicao dos pacotes a serem instalados. @ quer dizer que são grupos, os pacotes listados a seguir são opcionais aos grupos e os pacotes que possuem – no inicio, são para não serem instaladas mesmo sendo dos grupos. ==%packages== %BR% ==@ engineering-and-scientific== %BR% ==@ brazilian-support== %BR% ==@ admin-tools== %BR% ==@ portuguese-support== %BR% ==@ editors== %BR% ==@ system-tools== %BR% ==@ base-x== %BR% ==@ graphics== %BR% ==@ development-tools== %BR% ==@ misc-sl== %BR% ==@ gnome-desktop== %BR% ==@ dialup== %BR% ==@ apt-rpm== %BR% ==@ yum== %BR% ==@ openafs-client== %BR% ==@ server-cfg== %BR% ==pine== %BR% ==-octave== %BR% ==net-snmp-utils== %BR% ==SL_enable_serialconsole== %BR% ==anacron== %BR% ==firefox== %BR% ==-pvm== %BR% ==-units== %BR% ==kernel== %BR% ==grub== %BR% ==pcp== %BR% ==-samba-client== %BR% ==-blas== %BR% ==kernel-module-openafs-2.4.21-47.0.1.ELsmp== %BR% ==-lam== %BR% ==kernel-smp-unsupported== %BR% ==-lapack== %BR% ==kernel-smp== %BR% * Aqui voce pode personalizar a instalacao, rodando scripts bash padrao após a instalacao basica. Um detalhe, eh que na instalacao o source (onde estao os arquivos) esta montado em /mnt/source e o seu hd (o sistema que foi instalado) em ==/mnt/sysimage== ==%post --nochroot== %BR% * Aqui por exemplo, configura os serviços que serão ou não utilizados ==echo "Configurando chkconfig"== %BR% ==for f in sshd== %BR% =={chroot /== %BR% ==mnt/sysimage chkconfig ${f} on== %BR% ==}== %BR% ==for f in cups hpoj pcmcia rhnsd sendmail yum== %BR% =={chroot /== %BR% ==mnt/sysimage chkconfig --level 23456 ${f} off== %BR% ==}== %BR%
E
dit
|
A
ttach
|
P
rint version
|
H
istory
: r2
<
r1
|
B
acklinks
|
V
iew topic
|
Ra
w
edit
|
M
ore topic actions
Topic revision: r2 - 2006-11-09
-
SergioNovaes
Home
Site map
Main web
Sandbox web
TWiki web
Main Web
Users
Groups
Index
Search
Changes
Notifications
RSS Feed
Statistics
Preferences
View
Raw View
Print version
Find backlinks
History
More topic actions
Edit
Raw edit
Attach file or image
Edit topic preference settings
Set new parent
More topic actions
Account
Log In
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback