- Add translation of the pxe article

Reviewed by:	Pablo Mora <bidjan@gmail.com>,
		Guillermo Hernandez <guillermo@QuerySoft.es>.
		David Barbero <sico@loquefaltaba.com>
This commit is contained in:
Gabor Kovesdan 2009-09-27 13:06:32 +00:00
parent c02572e942
commit 7e2003f169
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=34734
9 changed files with 642 additions and 0 deletions

View file

@ -17,6 +17,7 @@ SUBDIR+= mailing-list-faq
SUBDIR+= nanobsd
SUBDIR+= p4-primer
SUBDIR+= problem-reports
SUBDIR+= pxe
SUBDIR+= releng
SUBDIR+= version-guide
SUBDIR+= zip-drive

View file

@ -0,0 +1,28 @@
#
# $FreeBSD$
#
# Article: FreeBSD PXE Jumpstart Guide
DOC?= article
FORMATS?= html
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
EXTRAS= dhcpd.conf
EXTRAS+= install.cfg
EXTRAS+= loader.rc
EXTRAS+= pkgmaker.sh
EXTRAS+= post
EXTRAS+= pre
SRCS= article.sgml
afterinstall:
.for entry in ${EXTRAS}
${INSTALL_DOCS} ${.CURDIR}/${entry} ${DESTDIR}
.endfor
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -0,0 +1,318 @@
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
<!ENTITY % articles.ent PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Articles Entity Set//ES">
%articles.ent;
]>
<!--
The FreeBSD Documentation Project
The FreeBSD Spanish Documentation Project
%SOURCE% en_US.ISO8859-1/articles/pxe/article.sgml
%SRCID% 1.186
$FreeBSD$
-->
<article lang="es">
<articleinfo>
<title>Gu&iacute;a de &os; Jumpstart</title>
<authorgroup>
<author>
<firstname>Alfred</firstname>
<surname>Perlstein</surname>
<affiliation>
<address><email>alfred@FreeBSD.org</email></address>
</affiliation>
</author>
</authorgroup>
<pubdate>$FreeBSD$</pubdate>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.intel;
&tm-attrib.general;
</legalnotice>
<abstract>
<para>Este art&iacute;culo explica el modo de instalar
&os; en ordenadores usando el m&eacute;todo PXE de &intel;
que arranca un ordenador a trav&eacute;s de la red.</para>
&trans.es.gabor;
</abstract>
</articleinfo>
<sect1 id="introduction">
<title>Introducci&oacute;n</title>
<warning>
<para>Este m&eacute;todo situar&aacute; al <quote>servidor</quote>
en un estado inseguro y peligroso as&iacute; que se recomienda
dejarlo conectado a un hub propio y no permitir
acceso desde ordenadores que no sean los
<quote>clientes</quote>.</para>
</warning>
<para>Terminolog&iacute;a:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
<tbody>
<row>
<entry>Servidor</entry>
<entry>El ordenador que dispone de servicio netboot y de
instalaci&oacute;n para otros.</entry>
</row>
<row>
<entry>Cliente</entry>
<entry>El ordenador que acabar&aacute; con &os;
instalado.</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Requerimientos:
Clientes con soporte de &intel; PXE netboot y una conexi&oacute;n de
Ethernet.
</para>
<para>Por favor, av&iacute;seme si encuentra cualquier problema
o tiene alguna sugerencia para mejorar este documento.</para>
<para>Si quiere que alguien le ajuste o ense&ntilde;e a ajustar
un sistema particular de netinstall, por favor env&iacute;e un correo
electr&oacute;nico para tratar los detalles.</para>
<para>Me gustar&iacute;a dar las gracias a &a.ps; y a &a.jhb;
por hacer casi toda la programaci&oacute;n de pxeboot, la interfaz del
sistema &intel; PXE (netboot).</para>
</sect1>
<sect1 id="server-config">
<title>Configuraci&oacute;n del servidor</title>
<procedure>
<step>
<para>Instalar DHCP: Instale <filename
role="package">net/isc-dhcp3-server</filename>. Puede
utilizar este fichero de configuraci&oacute;n
<ulink url="dhcpd.conf">
<filename>dhcpd.conf</filename></ulink>, c&oacute;pielo en
<filename>/usr/local/etc/</filename>.</para>
</step>
<step>
<para>Ajuste tftp:</para>
<procedure>
<step>
<para>Cr&eacute;e un directorio
<filename>/usr/tftpboot</filename>.</para>
</step>
<step>
<para>A&ntilde;ada esta l&iacute;nea a
<filename>/etc/inetd.conf</filename>:</para>
<programlisting>tftp dgram udp wait nobody /usr/libexec/tftpd tftpd /usr/tftpboot</programlisting>
</step>
</procedure>
</step>
<step>
<para>Ajuste NFS:</para>
<procedure>
<step>
<para>A&ntilde;ada a <filename>/etc/rc.conf</filename>:</para>
<programlisting>nfs_server_enable="YES"</programlisting>
</step>
<step>
<para>A&ntilde;ada a <filename>/etc/exports</filename>:</para>
<programlisting>/usr -alldirs -ro</programlisting>
</step>
</procedure>
</step>
<step>
<para>Reinicie el sistema o arranque los servicios nuevos
a mano.</para>
</step>
</procedure>
</sect1>
<sect1 id="bootstrap-config">
<title>Los ajustes del inicio</title>
<procedure>
<step>
<para>Descargue los ficheros de inicio: Descargue
las im&aacute;genes de disquete <ulink
url="&snapshots.stable;/floppies/kern.flp">
kern.flp</ulink> y
<ulink
url="&snapshots.stable;/floppies/mfsroot.flp">
mfsroot.flp</ulink>.</para>
</step>
<step>
<para>Ajuste el directorio tftp/pxe-boot:</para>
<procedure>
<step>
<para>Copie pxeboot en el directorio boot:</para>
<screen>&prompt.root; <userinput>rm -rf /usr/obj/*</userinput>
&prompt.root; <userinput>cd /usr/src/sys/boot</userinput>
&prompt.root; <userinput>make</userinput>
&prompt.root; <userinput>cp /usr/src/sys/boot/i386/pxeldr/pxeboot /usr/tftpboot</userinput></screen>
</step>
<step>
<para>Usando vndevice monte la im&aacute;gen
<filename>kern.flp</filename> y copie todo su
contenido a
<filename>/usr/tftpboot</filename>:</para>
<screen>&prompt.root; <userinput>mdconfig -a -t vnode -f kern.flp -u 0</userinput> # (vnconfig vn0 kern.flp) asociar vndevice al fichero
&prompt.root; <userinput>mount /dev/md0 /mnt</userinput> # (mount /dev/vn0 /mnt) mount it
&prompt.root; <userinput>cp -R /mnt /usr/tftpboot</userinput> # copie los contenidos a /usr/tftpboot
&prompt.root; <userinput>umount /mnt</userinput> # desmontar la imagen
&prompt.root; <userinput>vnconfig -u vn0</userinput> # desasociar vndevice del fichero</screen>
</step>
</procedure>
</step>
<step>
<para>Compile un kernel personalizado para los clientes
(para evitar, de manera particular, la pantalla de
ajustes de los componentes durante el inicio)
y c&oacute;pielo a
<filename>/usr/tftpboot</filename>.</para>
</step>
<step>
<para>Cree un fichero <filename>loader.rc</filename> e
inst&aacute;lelo en
<filename>/usr/tftpboot/boot/loader.rc</filename> para que no
pida un segundo disquete, aqu&iacute; est&aacute;
<ulink url="loader.rc">mi fichero</ulink>.</para>
</step>
<step>
<para>Extraiga el instalador y las herramientas de ayuda de la
disquete mfsroot, descompr&iacute;malos y c&oacute;pielos
tambi&eacute;n a <filename>/usr/tftpboot</filename>.</para>
<screen>&prompt.root; <userinput>vnconfig vn0 mfsroot.flp</userinput> # asociar un vndevice con el fichero
&prompt.root; <userinput>mount /dev/vn0 /mnt</userinput> # montarlo
&prompt.root; <userinput>cp /mnt/mfsroot.gz /usr/tftpboot</userinput> # copiar los contenidos a /usr/tftpboot
&prompt.root; <userinput>umount /mnt</userinput> # desmontarlo
&prompt.root; <userinput>vnconfig -u vn0</userinput> # desasociar vndevice del fichero
&prompt.root; <userinput>cd /usr/tftpboot</userinput> # entrar en el directorio pxeboot
&prompt.root; <userinput>gunzip mfsroot.gz</userinput> # descomprimir mfsroot</screen>
</step>
<step>
<para>Cree su script sysinstall <filename>install.cfg</filename>.
Puede usar
<ulink url="install.cfg">el m&iacute;o</ulink>
como plantilla pero tiene que modificarlo.</para>
</step>
<step>
<para>Copie el script sysinstall en la imagen mfsroot extra&iacute;da
y descomprimida:</para>
<screen>&prompt.root; <userinput>cd /usr/tftpboot</userinput>
&prompt.root; <userinput>vnconfig vn0 mfsroot</userinput>
&prompt.root; <userinput>mount /dev/vn0 /mnt</userinput>
&prompt.root; <userinput>cp install.cfg /mnt</userinput>
&prompt.root; <userinput>umount /mnt</userinput>
&prompt.root; <userinput>vnconfig -u vn0</userinput></screen>
</step>
</procedure>
</sect1>
<sect1 id="install-setup">
<title>Ajuste de la instalaci&oacute;n</title>
<procedure>
<step>
<para>Copie los ficheros de la instalaci&oacute;n en un
sitio accesible por NFS del servidor. Cree un directorio
seg&uacute;n la directiva <quote>nfs</quote> en
<filename>install.cfg</filename> y haga una copia espejo de
los ficheros de instalaci&oacute;n de &os; en este sitio.
Tiene que quedar m&aacute;s o menos as&iacute;:</para>
<screen>ABOUT.TXT TROUBLE.TXT compat20 floppies ports
ERRATA.TXT UPGRADE.TXT compat21 games proflibs
HARDWARE.TXT XF86336 compat22 info src
INSTALL.TXT bin compat3x kern.flp
LAYOUT.TXT catpages crypto manpages
README.TXT cdrom.inf dict mfsroot.flp
RELNOTES.TXT compat1x doc packages</screen>
</step>
<step>
<para>Copie los paquetes comprimidos en el directorio
packages/All en <filename>nfs</filename>.</para>
</step>
<step>
<para>Aseg&uacute;rese de tener un fichero
<filename>INDEX</filename> preparado
en el directorio de los paquetes. Puede hacer sus propias
entradas en <filename>INDEX</filename> de la siguiente
manera:</para>
<programlisting>alfred-1.0||/|Alfred install bootstrap||alfred@FreeBSD.org||||</programlisting>
<para>Luego podr&aacute; instalar paquetes propios, particularmente
sus paquetes para terminar la instalaci&oacute;n (<quote>post-install
paquetes</quote>).</para>
</step>
</procedure>
</sect1>
<sect1 id="custom-postinst-package">
<title>Propios paquetes para ajustes posteriores a la
instalaci&oacute;n</title>
<para>Puede usar el script <ulink url="pkgmaker.sh"><filename>pkgmaker.sh
</filename></ulink> para crear un paquete propio para despu&eacute;s
de la instalaci&oacute;n. La idea de tener uno es instalar o
configurar algo especial que necesite. El script
<filename>pkgmaker</filename> se ejecuta en el directorio del paquete
que quiera crear con el solo argumento del paquete (p.ej. mypkg)
que luego le crear&aacute; un fichero mypkg.tgz para incluir en su
paquete sysinstall.</para>
<para>En el directorio de su paquete propio tendr&aacute; que tener un
fichero llamado <filename>PLIST</filename> que enumere todos los
ficheros que quiera incorporar en su paquete.</para>
<para>Tambi&eacute;n podr&aacute; tener ficheros llamados
<ulink url="pre"><filename>pre</filename></ulink> y
<ulink url="post"><filename>post</filename></ulink>
en ese directorio. Estos son shell script que se ejecutar&aacute;n
antes o despu&eacute;s de la instalaci&oacute;n del paquete.</para>
<para>Puesto que el paquete est&aacute; en su fichero
<filename>install.cfg</filename> se ejecutar&aacute; para
proceder los &uacute;ltimos retoques de la configuraci&oacute;n.</para>
</sect1>
</article>

View file

@ -0,0 +1,23 @@
# $Wintelcom: src/freebsd/pxe/doc/dhcpd.conf,v 1.2 2000/09/24 09:18:14 bright Exp $
# $FreeBSD$
option subnet-mask 255.255.255.0;
option routers 10.8.253.254;
filename "pxeboot";
ddns-update-style none;
option domain-name "google.com";
option broadcast-address 10.8.253.255;
option domain-name-servers 10.8.0.7;
server-name "DHCPserver";
server-identifier 10.8.253.201;
default-lease-time 7200;
max-lease-time 7200;
subnet 10.8.253.0 netmask 255.255.255.0 {
next-server 10.8.253.201;
range 10.8.253.29 10.8.253.200;
}

View file

@ -0,0 +1,209 @@
# $Wintelcom: src/freebsd/pxe/doc/install.cfg,v 1.1 2000/07/14 12:42:05 bright Exp $
# $FreeBSD$
# This is the installation configuration file for our rackmounted FreeBSD
# cluster machines
# Turn on extra debugging.
debug=YES
# Ok, this ought to turn off ALL prompting, don't complain to me that you
# lost a machine because you netbooted it on the same subnet as this
# box
nonInteractive=YES
noWarn=YES
tryDHCP=YES
################################
# My host specific data
hostname=booter
domainname=mydomain.com
# DHCP does this for us
#nameserver=10.0.0.1
#defaultrouter=10.0.0.1
#ipaddr=DHCP
#netmask=255.255.255.0
################################
################################
# Which installation device to use
nfs=x.x.x.x:/usr/releng4
netDev=fxp0
tryDHCP=YES
mediaSetNFS
################################
################################
# Select which distributions we want.
dists= bin doc games manpages catpages proflibs dict info des compat1x compat20 compat21 compat22 compat3x crypto
distSetCustom
################################
################################
# Now set the parameters for the partition editor on sd0.
disk=ad0
partition=all
bootManager=standard
diskPartitionEditor
#diskPartitionWrite
################################
################################
# All sizes are expressed in 512 byte blocks!
#
# A 96MB root partition, followed by a 0.5G swap partition, followed by
# a 1G /var, and a /usr using all the remaining space on the disk
#
ad0s1-1=ufs 1999999 /
ad0s1-2=swap 6485760 none
ad0s1-3=ufs 2097152 /var
ad0s1-4=ufs 0 /usr
# Let's do it!
diskLabelEditor
#diskLabelCommit
# OK, everything is set. Do it!
installCommit
package=XFree86-3.3.6
packageAdd
#package=XFree86-aoutlibs-3.3.3
#packageAdd
package=XFree86-contrib-3.3.6
packageAdd
package=arpwatch-2.1.a4
packageAdd
package=bash-2.04
packageAdd
package=bison-1.28
packageAdd
package=bzip2-1.0.0
packageAdd
package=ctags-3.5.2
packageAdd
package=dvips2ascii-1.3
packageAdd
package=electricfence-2.0.5
packageAdd
package=emacs-20.6
packageAdd
package=enscript-letter-1.6.1
packageAdd
package=fping-1.20
packageAdd
package=gawk-3.0.4
packageAdd
package=gdbm-1.8.0
packageAdd
package=gettext-0.10.35
packageAdd
package=gmake-3.79
packageAdd
package=ispell-3.1.20c
packageAdd
package=less-352
packageAdd
package=libgnugetopt-1.1
packageAdd
package=libtool-1.3.4
packageAdd
package=linux_base-6.1
packageAdd
package=linux_devtools-6.1
packageAdd
package=lmbench-1.1
packageAdd
package=m4-1.4
packageAdd
package=mprof-3.0
packageAdd
package=mtr-0.42
packageAdd
package=nmap-2.53
packageAdd
package=pine-4.21
packageAdd
package=portscanner-1.0
packageAdd
package=portsentry-1.0
packageAdd
package=python-1.5.2
packageAdd
package=rpm-2.5.6
packageAdd
package=rsaref-2.0
packageAdd
package=rsync-2.4.3
packageAdd
package=screen-3.9.5
packageAdd
package=stlport-3.01
packageAdd
package=tcsh-6.09.00
packageAdd
package=tk-8.0.5
packageAdd
package=vim-lite-5.6.70
packageAdd
package=wget-1.5.3
packageAdd
package=word2x-0.005
packageAdd
package=zip-2.3
packageAdd
package=zsh-3.0.7
packageAdd
#
# this last package is special. It is used to configure the machine.
# it installs several files (like /root/.rhosts) and its installation
# script tweaks several options in /etc/rc.conf
#
package=mypkg-1.0
packageAdd
shutdown

View file

@ -0,0 +1,11 @@
\ $Wintelcom: src/freebsd/pxe/doc/loader.rc,v 1.1 2000/07/15 07:20:37 bright Exp $
\ $FreeBSD$
echo Loading Kernel...
load /kernel
echo Loading mfsroot...
load -t mfs_root /mfsroot
echo booting...
echo \007\007
echo initializing h0h0magic...
set vfs.root.mountfrom="ufs:/dev/md0c"
boot

View file

@ -0,0 +1,9 @@
#!/bin/sh
# $Wintelcom: src/freebsd/pxe/doc/pkgmaker.sh,v 1.1 2000/07/14 12:42:05 bright Exp $
# $FreeBSD$
PKGNAME=${1}
PKGDIR=`pwd`/${PKGNAME}/
pkg_create -i ${PKGDIR}pre -I ${PKGDIR}post -f ${PKGDIR}PLIST -s ${PKGDIR} -p / -d ${PKGDIR}DESCR -c ${PKGDIR}COMMENT ${PKGNAME}.tgz

View file

@ -0,0 +1,36 @@
#!/bin/sh
# $Wintelcom: src/freebsd/pxe/doc/post,v 1.1 2000/07/14 12:42:05 bright Exp $
# $FreeBSD$
echo post-install
set PATH=/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/bin:/usr/bin/X11
export PATH
# do timezone
cp /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
conf="/etc/rc.conf.local"
rm $conf
echo 'sendmail_enable="NO"' >> $conf
echo 'dumpdev="/dev/ad0s1b"' >> $conf
echo 'sshd_enable="YES"' >> $conf
echo 'linux_enable="YES"' >> $conf
# set up IP address and hostname
if=`ifconfig fxp1 inet | grep '[ ]*inet' | sed 's/[ ]*//'`
echo "ifconfig_fxp1=\"${if}\"" >> $conf
name=`echo $if | sed 's/[ ][ ]*/ /g' | cut -f2 -d" " | cut -f4 -d.`
echo "hostname=\"suyy${name}\"" >> $conf
echo "network_interfaces=\"fxp0 fxp1 lo0\"" >> $conf
# set up gateway, parse netstat output
gw=`netstat -rn | grep '^default' | sed 's/[ ][ ]*/ /g' | cut -f2 -d" "`
echo "defaultrouter=\"${gw}\"" >> $conf
pwd_mkdb -p /etc/master.passwd
exit 0

View file

@ -0,0 +1,7 @@
#!/bin/sh
# $Wintelcom: src/freebsd/pxe/doc/pre,v 1.1 2000/07/14 12:42:05 bright Exp $
# $FreeBSD$
echo pre-install
exit 0