doc/es/FAQ/hackers.sgml
Nik Clayton ac5990a125 Upgraded version of the Spanish translation of the FAQ, with references
to 2.2.6 changed to 2.2.7.

Submitted by:	Jesus Rodriguez <jesusr@ncsa.es>
1998-07-30 11:55:31 +00:00

170 lines
6.5 KiB
Text

<!-- $Id: hackers.sgml,v 1.2 1998-07-30 11:55:30 nik Exp $ -->
<!-- The FreeBSD Documentation Spanish Project -->
<sect>
<heading>Solo para hackers serios de FreeBSD<label id="hackers"></heading>
<sect1>
<heading>
Que son SNAPs y RELEASEs?
</heading>
<p>Hay actualmente tres ramas activas/semi-activas en el desarrollo de
FreeBSD y en su
<url url="http://www.freebsd.org/cgi/cvsweb.cgi" name="CVS Repository">:
<itemize>
<item><bf/RELENG_2_1_0/ AKA <bf/2.1-stable/ AKA <bf/"2.1 branch"/
<item><bf/RELENG_2_2/ AKA <bf/2.2-stable/ AKA <bf/"2.2 branch"/
<item><bf/HEAD/ AKA <bf/-current/ AKA <bf/3.0-current/
</itemize>
<p><bf/HEAD/ no es una rama actual, como las otras dos, es
simplemente una constante simbolica para <em/la version de desarrollo
actual/ a la cual nos referimos simplemente como <bf/-current/.
<p>Actualmente, <bf/-current/ es el desarrollo de la version 3.0 y
la <bf/2.2-stable/.
<sect1>
<heading>
Como puedo hacerme mi propia release personalizada?<label id="custrel">
</heading>
<p>Para hacer una release necesitas hacer tres cosas: primero,
necesitas usar un kernel con el driver <htmlurl
url="http://www.freebsd.org/cgi/man.cgi?vn" name="vn"> configurado.
Anyade esto a tu fichero de configuracion del kernel y crea un
nuevo kernel:
<verb>
pseudo-device vn #Vnode driver (turns a file into a device)
</verb>
<p>Segundo, debes tener las herramientas del CVS a mano. Para hacer
esto, puedes usar <url url="../../handbook/cvsup.html" name="CVSUP">
pero en tu supfile pon el nombre de la release a cvs y borra cualquier
tag campo de fecha:
<verb>
*default prefix=/home/ncvs
*default base=/a
*default host=cvsup.FreeBSD.org
*default release=cvs
*default delete compress use-rel-suffix
## Main Source Tree
src-all
src-eBones
src-secure
# Other stuff
ports-all
www
doc-all
</verb>
<p>A continuacion ejecuta <tt/cvsup -g supfile/ para tener todos los
bits correctos en tu ordenador.
<p>Finalmente, necesitas una buena cantidad de espacio vacio para
crear en el la release. Digamos que esta en <tt>/algun/disco/grande</tt>
y en el ejemplo anterior has dejado los ficheros del CVS en
<tt>/home/ncvs</tt>:
<verb>
setenv CVSROOT /home/ncvs # or export CVSROOT=/home/ncvs
cd /usr/src/release
make release BUILDNAME=3.0-MY-SNAP CHROOTDIR=/algun/disco/grande/release
</verb>
<p>Una release completa sera creada en <tt>/algun/disco/grande/</tt> y
tendras una instalacion completa de tipo FTP en
<tt>/algun/disco/grande/R/ftp</tt> cuando acabes. Si quieres crear
tu SNAP usando otra rama de desarrollo diferente de -current, puedes
anyadir <tt/RELEASETAG=SOMETAG/ a la linea de comando anterior
de creacion de la release. Por ejemplo, <tt/RELEASETAG=RELENG_2_2/
crearia un snapshot 2.2 GAMMA.
<sect1>
<heading>Como creo discos de instalacion personalizados?</heading>
<p>El proceso completo de creacacion de discos de instalacion y
archivos fuentes y binarios esta automatizado por varios targets en
<tt>/usr/src/release/Makefile</tt>. La informacion alli contenida
deberia ser suficiente para que puedas empezar. Falta decir que
este proceso necesita la ejecucion del comando "make world" y quizas
te use mucho tiempo y espacio en disco.
<sect1>
<heading>``make world'' destruye mis binarios instalados.</heading>
<p>Si, esta es mi idea general; como su nombre sugiere, "make world"
rehace todos los binarios del sistema, de manera que puedas estar
seguro de tener un entorno limpio y consistente al final (que es
por lo que tarda tanto).
<p>Si la variable de entorno <tt/DESTDIR/ is definida mientras se
ejecuta <tt/make world/ o <tt/make install/, los binarios creados
nuevamente seran depositados en un arbol de directorios identico al
instalado, y a partir de <tt>&dollar;&lcub;DESTDIR&rcub;</tt>.
Algunas combinaciones aleatorias de modificaciones de librerias
compartidas y programas pueden causar que falle el <tt/make world/.
<sect1>
<heading>
Cuando mi sistema arraca, dice (bus speed defaulted).
</heading>
<p>Las controladoras SCSI Adaptec 1542 permiten al usuario configurar
su velocidad de acceso al bus en software. Versiones anteriores del
driver de la 1542 intentaban determinar la velocidad mas alta factible
y configurar la Adaptec a esta. Nos hemos encontrado con que esto
hace fallar el sistema de algunos usuarios, por lo que tienes que
definir la opcion de configuracion del kernel
<tt/TUNE&lowbar;1542/ para que esto ocurra. En algunos sistemas puede
que puede hacer que los discos vayan mas rapidos, pero en otros
puede que los datos queden corrompidos.
<sect1>
<heading>
Puedo seguir la rama current con acceso limitado a Internet?<label id="ctm">
</heading>
<p>Si, puedes hacerlo <tt/sin/ bajarte todo el codigo fuente usando la
utilidad <url url="../../handbook/ctm.html" name="CTM.">
<sect1>
<heading>Como partis la distribucion en ficheros de 240k?</heading>
<p>Los sistemas BSD mas modernos tienen una opcion <tt/-b/ para partir
que les permite partir los ficheros en tamanyos arbitrarios.
<p>Aqui hay un ejemplo de <tt>/usr/src/Makefile</tt>.
<verb>
bin-tarball:
(cd $&lcub;DISTDIR&rcub;; \
tar cf - . \
gzip --no-name -9 -c | \
split -b 240640 - \
$&lcub;RELEASEDIR&rcub;/tarballs/bindist/bin_tgz.)
</verb>
<sect1>
<heading>He escrito una extension del kernel, a quien la envio?</heading>
<p>Por favor, mira en <url url="../../handbook/contrib.html"
name="como enviar codigo.">
<p>Y gracias por pensar en nosotros!
<sect1>
<heading>Soportara FreeBSD otras arquitecturas?</heading>
<p>Diferentes grupos de trabajo nos han expresado su interes en
trabajar en el soporte multi-artquitectura para FreeNSD y algunas
personas estan actualmente trabajando en portar FreeBSD a ALPHA,
con la cooperacion de DEC. Para discusiones generales sobre
nuevas arquietecturas, usa la lista <tt>&lt;platforms@FreeBSD.ORG&gt;</tt>