aboutsummaryrefslogtreecommitdiff
path: root/es_ES.ISO8859-1/books
diff options
context:
space:
mode:
authorJ. Vicente Carrasco <carvay@FreeBSD.org>2008-11-07 01:50:34 +0000
committerJ. Vicente Carrasco <carvay@FreeBSD.org>2008-11-07 01:50:34 +0000
commit5ccdeffd7ccdb4ac37dcdb2d336c445b91a64ce3 (patch)
tree0543d0cc5b5fb366cbecd923746e8db8a4495c69 /es_ES.ISO8859-1/books
parent8523ece2d8c1cce61bcccc3c36fd98c14fec67d6 (diff)
downloaddoc-5ccdeffd7ccdb4ac37dcdb2d336c445b91a64ce3.tar.gz
doc-5ccdeffd7ccdb4ac37dcdb2d336c445b91a64ce3.zip
Update the 'Ports' chapter. The new content added
has a link to 'Updating', so being on that we have a new chapter translated. With contributions from: FreeBSD Spanish Documentation Project
Notes
Notes: svn path=/head/; revision=33181
Diffstat (limited to 'es_ES.ISO8859-1/books')
-rwxr-xr-xes_ES.ISO8859-1/books/handbook/Makefile1
-rwxr-xr-xes_ES.ISO8859-1/books/handbook/book.sgml5
-rwxr-xr-xes_ES.ISO8859-1/books/handbook/chapters.ent1
-rwxr-xr-xes_ES.ISO8859-1/books/handbook/ports/chapter.sgml1722
-rw-r--r--es_ES.ISO8859-1/books/handbook/updating/chapter.sgml676
5 files changed, 1644 insertions, 761 deletions
diff --git a/es_ES.ISO8859-1/books/handbook/Makefile b/es_ES.ISO8859-1/books/handbook/Makefile
index 25ddceb138..49d1a22c95 100755
--- a/es_ES.ISO8859-1/books/handbook/Makefile
+++ b/es_ES.ISO8859-1/books/handbook/Makefile
@@ -190,6 +190,7 @@ SRCS+= preface/preface.sgml
SRCS+= printing/chapter.sgml
SRCS+= security/chapter.sgml
SRCS+= serialcomms/chapter.sgml
+SRCS+= updating/chapter.sgml
SRCS+= users/chapter.sgml
SRCS+= vinum/chapter.sgml
SRCS+= virtualization/chapter.sgml
diff --git a/es_ES.ISO8859-1/books/handbook/book.sgml b/es_ES.ISO8859-1/books/handbook/book.sgml
index 8d26c054f5..b8b879571b 100755
--- a/es_ES.ISO8859-1/books/handbook/book.sgml
+++ b/es_ES.ISO8859-1/books/handbook/book.sgml
@@ -58,8 +58,9 @@
<!ENTITY % chap.freebsd-glossary "IGNORE">
<!ENTITY % chap.mac "IGNORE">
<!ENTITY % chap.audit "IGNORE">
-
<!ENTITY % pgpkeys SYSTEM "pgpkeys/pgpkeys.ent"> %pgpkeys;
+<!ENTITY % chap.updating "IGNORE">
+
]>
@@ -341,6 +342,8 @@
<![ %chap.eresources; [ &chap.eresources; ]]>
<![ %chap.pgpkeys; [ &chap.pgpkeys; ]]>
<![ %chap.index; [ &chap.index; ]]>
+ <![ %chap.updating; [ &chap.updating; ]]>
+
</part>
&chap.colophon;
</book>
diff --git a/es_ES.ISO8859-1/books/handbook/chapters.ent b/es_ES.ISO8859-1/books/handbook/chapters.ent
index 333f9195a3..d1969e7524 100755
--- a/es_ES.ISO8859-1/books/handbook/chapters.ent
+++ b/es_ES.ISO8859-1/books/handbook/chapters.ent
@@ -52,6 +52,7 @@
<!ENTITY chap.cutting-edge SYSTEM "cutting-edge/chapter.sgml">
<!-- Part four -->
+<!ENTITY chap.updating SYSTEM "updating/chapter.sgml">
<!ENTITY chap.serialcomms SYSTEM "serialcomms/chapter.sgml">
<!ENTITY chap.ppp-and-slip SYSTEM "ppp-and-slip/chapter.sgml">
<!ENTITY chap.mail SYSTEM "mail/chapter.sgml">
diff --git a/es_ES.ISO8859-1/books/handbook/ports/chapter.sgml b/es_ES.ISO8859-1/books/handbook/ports/chapter.sgml
index ad3bd4ee58..4a2cae6fdd 100755
--- a/es_ES.ISO8859-1/books/handbook/ports/chapter.sgml
+++ b/es_ES.ISO8859-1/books/handbook/ports/chapter.sgml
@@ -3,16 +3,15 @@
The FreeBSD Spanish Documentation Project
%SOURCE% en_US.ISO8859-1/books/handbook/ports/chapter.sgml
- %SRCID% 1.24
+ %SRCID% 1.284
$FreeBSD$
$FreeBSDes: doc/es_ES.ISO8859-1/books/handbook/ports/chapter.sgml,v 1.2 2004/10/08 21:26:03 jesusr Exp $
-->
-<!-- version del ingles traducida: 1.240 -->
<chapter id="ports">
- <title>Instalaci&oacute;n de aplicaciones: Paquetes y Ports</title>
+ <title>Instalaci&oacute;n de aplicaciones: &laquo;packages&raquo; y ports</title>
<sect1 id="ports-synopsis">
<title>Sinopsis</title>
@@ -27,58 +26,70 @@
terceros.
&os; ofrece dos tecnolog&iacute;as complementarias para instalar
software de terceros en nuestro sistema: la Colecci&oacute;n de Ports de
- &os; y Paquetes binarios. Cualquiera de los dos sistemas puede
- usarse para instalar las versiones m&aacute;s recientes, de forma local o
- directamente desde la red.</para>
+ &os; y &laquo;packages&raquo;(paquetes) binarios. Cualquiera de los dos
+ sistemas puede usarse para instalar las versiones m&aacute;s recientes,
+ de forma local o directamente desde la red.</para>
- <para>Despu&eacute;s de leer este cap&iacute;tulo, usted
+ <para>Despu&eacute;s de leer este cap&iacute;tulo usted
sabr&aacute;:</para>
<itemizedlist>
<listitem>
- <para>C&oacute;mo instalar paquetes binarios de software de terceros.</para>
+ <para>C&oacute;mo instalar packages binarios de software
+ de terceros.</para>
</listitem>
<listitem>
- <para>C&oacute;mo compilar software de terceros desde la
+ <para>C&oacute;mo compilar software de terceros desde la
Colecci&oacute;n de Ports.</para>
</listitem>
<listitem>
- <para>C&oacute;mo eliminar paquetes o ports instalados
+ <para>C&oacute;mo eliminar packages o ports instalados
previamente.</para>
</listitem>
+ <listitem>
+ <para>C&oacute;mo sobreescribir los valores por omisi&oacute;n
+ que utiliza la colecci&oacute;n de ports.</para>
+ </listitem>
+ <listitem>
+ <para>C&oacute;mo encontrar la aplicaci&oacute;n adecuada.</para>
+ </listitem>
+ <listitem>
+ <para>C&oacute;mo actualizar aplicaciones.</para>
+ </listitem>
+
</itemizedlist>
</sect1>
<sect1 id="ports-overview">
<title>Aproximaci&oacute;n a la instalaci&oacute;n de software</title>
- <para>Si ha usado un sistema &unix; con anterioridad sabr&aacute; que el
- procedimiento t&iacute;pico para instalar software de terceros es algo
+ <para>Si ha usado un sistema &unix; con anterioridad sabr&aacute; que el
+ procedimiento t&iacute;pico para instalar software de terceros es algo
similar a esto:</para>
<procedure>
<step>
- <para>Descargar el software, que puede distribuirse en formato de
- c&oacute;digo fuente, o binario.</para>
+ <para>Descargar el software, que puede distribuirse en formato de
+ c&oacute;digo fuente o binario.</para>
</step>
<step>
- <para>Desempaquetar el software de su formato de distribuci&oacute;n
- (normalmente en un tarball comprimido con &man.compress.1;,
+ <para>Desempaquetar el software de su formato de distribuci&oacute;n
+ (normalmente en un &laquo;tarball&raquo; comprimido con &man.compress.1;,
&man.gzip.1; o &man.bzip2.1;).</para>
</step>
<step>
- <para>Consultar la documentaci&oacute;n (quiz&aacute;s un fichero
- <filename>INSTALL</filename> o
- <filename>README</filename>, o los ficheros del subdirectorio
+ <para>Consultar la documentaci&oacute;n (quiz&aacute;s un fichero
+ <filename>INSTALL</filename> o
+ <filename>README</filename>, o los ficheros del subdirectorio
<filename>doc/</filename>) para ver como instalar el software.</para>
</step>
<step>
- <para>Si el software es distribuido como fuente, compilarlo. Esto
- puede requerir que editemos el fichero <filename>Makefile</filename>
- o que ejecutemos el <quote>script</quote>
+ <para>Si el software se distribuye como fuente, compilarlo. Esto
+ puede requerir que editemos el fichero <filename>Makefile</filename>
+ o que ejecutemos el <quote>script</quote>
<command>configure</command>, entre otras cosas.</para>
</step>
@@ -87,169 +98,170 @@
</step>
</procedure>
- <para>Y esto solamente si todo marcha bien. Si est&aacute; instalando un
- software que no ha sido portado espec&iacute;ficamente para &os;, puede
- que sea necesario editar el c&oacute;digo para que funcione
+ <para>Y esto solamente si todo marcha bien. Si est&aacute; instalando un
+ software que no ha sido portado espec&iacute;ficamente para &os;, puede
+ que sea necesario editar el c&oacute;digo para que funcione
correctamente.
</para>
- <para>Si lo desea puede continuar instalando software de la forma
- <quote>tradicional</quote> en &os;, aunque &os; dispone de
+ <para>Si lo desea puede continuar instalando software de la forma
+ <quote>tradicional</quote> en &os;, aunque &os; dispone de
dos tecnolog&iacute;s que le pueden ahorrar gran cantidad de tiempo y
- esfuerzo: los paquetes y los ports. En el momento de escribir esto
+ esfuerzo: los packages y los ports. En el momento de escribir esto
existen m&aacute;s de &os.numports; aplicaciones de terceros.</para>
- <para>En cualquier aplicaci&oacute;n el paquete de &os;
- es un solo fichero que tiene que descargar. Los paquetes contienen
- copia de los programas binarios pre-compilados de la aplicaci&oacute;n,
- as&iacute; como cualquier fichero de configuraci&oacute;n o
- documentaci&oacute;n. Los paquetes descargados se pueden
- manipular con las herramientas de gesti&oacute;n de paquetes de &os;:
- &man.pkg.add.1;, &man.pkg.delete.1;,
+ <para>En cualquier aplicaci&oacute;n el paquete de &os;
+ es un solo fichero que tiene que descargar. Los paquetes contienen
+ copia de los programas binarios precompilados de la aplicaci&oacute;n,
+ as&iacute; como cualquier fichero de configuraci&oacute;n o
+ documentaci&oacute;n. Los paquetes descargados se pueden
+ manipular con las herramientas de gesti&oacute;n de paquetes de &os;:
+ &man.pkg.add.1;, &man.pkg.delete.1;,
&man.pkg.info.1;, etc. Instalar una aplicaci&oacute;n nueva puede
realizarse con una sola orden.</para>
- <para>Un port de &os; es una colecci&oacute;n de ficheros
- dise&ntilde;ada para automatizar el proceso de
+ <para>Un port de &os; es una colecci&oacute;n de ficheros
+ dise&ntilde;ada para automatizar el proceso de
compilaci&oacute;n desde el c&oacute;digo fuente.</para>
- <para>Recuerde que existen ciertos pasos que deber&aacute; llevar a cabo
- para compilar un programa por usted mismo (descargar,
- desempaquetar, parchear, compilar e instalar). Los ficheros que
+ <para>Recuerde que existen ciertos pasos que deber&aacute; llevar a cabo
+ para compilar un programa por usted mismo (descargar,
+ desempaquetar, parchear, compilar e instalar). Los ficheros que
conforman un port permiten que el sistema se encargue de todo esto.
- Usted ejecuta un conjunto simple de &oacute;rdenes
- y el c&oacute;digo fuente se descarga, desempaqueta, parchea,
+ Usted ejecuta un conjunto simple de &oacute;rdenes
+ y el c&oacute;digo fuente se descarga, desempaqueta, parchea,
compila e instala.</para>
- <para>De hecho el sistema de ports tambi&eacute;n se puede usar para crear
- paquetes que posteriormente se pueden manipular con
- <command>pkg_add</command> y las
- dem&aacute;s utilidades de gesti&oacute;n de paquetes que veremos en
+ <para>De hecho el sistema de ports tambi&eacute;n se puede usar para crear
+ paquetes que posteriormente se pueden manipular con
+ <command>pkg_add</command> y las
+ dem&aacute;s utilidades de gesti&oacute;n de packages que veremos en
breve.</para>
- <para>Tanto el sistema de ports como el de paquetes entienden las
- <emphasis>dependencias</emphasis>. Suponga que desea instalar una
- aplicaci&oacute;n que depende de que una biblioteca
- espec&iacute;fica est&eacute; instalada. Tanto la biblioteca como la
- aplicaci&oacute;n existen en &os; como paquete o port. Si utiliza
- <command>pkg_add</command> o el sistema de ports para instalar
- la aplicaci&oacute;n ambos notar&aacute; que la biblioteca no
- est&aacute; instalada, y proceder&aacute;n a instalarla antes que
+ <para>Tanto el sistema de ports como el de paquetes entienden las
+ <emphasis>dependencias</emphasis>. Suponga que desea instalar una
+ aplicaci&oacute;n que depende de que una biblioteca
+ espec&iacute;fica est&eacute; instalada. Tanto la biblioteca como la
+ aplicaci&oacute;n existen en &os; como paquete o port. Si utiliza
+ <command>pkg_add</command> o el sistema de ports para instalar
+ la aplicaci&oacute;n ambos notar&aacute;n que la biblioteca no
+ est&aacute; instalada y proceder&aacute;n a instalarla antes que
nada.</para>
- <para>Dado que ambas tecnolog&iacute;s son similares, quiz&aacute;s se
- pregunte por qu&eacute; &os; se toma la molest&iacute;a de contar con
- ambas. Los Paquetes y los Ports tienen sus propias ventajas,
- as&iacute; que cu&aacute;l utilizar depender&aacute; de su
+ <para>Dado que ambas tecnolog&iacute;s son similares quiz&aacute;s se
+ pregunte por qu&eacute; &os; se toma la molest&iacute;a de contar con
+ ambas. Los Packages y los Ports tienen sus propias ventajas,
+ as&iacute; que cu&aacute;l utilizar depender&aacute; de su
elecci&oacute;n en cada momento.</para>
<itemizedlist>
- <title>Ventajas de los paquetes</title>
+ <title>Ventajas de los Paquetes</title>
<listitem>
- <para>El fichero tarball de un paquete es normalmente m&aacute;s
- peque&ntilde;o que el tarball con el c&oacute;digo fuente de
+ <para>El fichero tarball de un package es normalmente m&aacute;s
+ peque&ntilde;o que el tarball con el c&oacute;digo fuente de
la aplicaci&oacute;n.</para>
</listitem>
<listitem>
<para>Los paquetes no requieren compilaci&oacute;n.
- En el caso de aplicaciones grandes, como
+ En el caso de aplicaciones grandes, como
<application>Mozilla</application>,
<application>KDE</application>, o
- <application>GNOME</application> este detalle puede ser importante,
+ <application>GNOME</application> este detalle puede ser importante,
especialmente si usa un equipo lento.</para>
</listitem>
<listitem>
- <para>Los paquetes no requieren que comprenda el proceso que envuelve
+ <para>Los paquetes no requieren que comprenda el proceso que envuelve
el compilar software bajo &os;.</para>
</listitem>
</itemizedlist>
<itemizedlist>
- <title>Ventajas del sistema de Ports</title>
+ <title>Ventajas de los Ports</title>
<listitem>
- <para>Normalmente los paquetes se compilan con opciones conservadoras,
- en virtud del gran n&uacute;mero de equipos donde se
- instalar&aacute;n. Al desde el port puede usted editar las
- preferencias para (por ejemplo) generar c&oacute;digo
- espec&iacute;fico para un procesador
+ <para>Normalmente los paquetes se compilan con opciones conservadoras,
+ en virtud del gran n&uacute;mero de equipos donde se
+ instalar&aacute;n. Al instalar como port puede usted editar las
+ preferencias para (por ejemplo) generar c&oacute;digo
+ espec&iacute;fico para un procesador
Pentium IV o Athlon.</para>
</listitem>
<listitem>
- <para>Algunas aplicaciones tienen opciones sobre lo que pueden y lo
+ <para>Algunas aplicaciones tienen opciones sobre lo que pueden y lo
que no pueden hacer. Por ejemplo
- <application>Apache</application> se puede configurar con
- una gran variedad de opciones. Al compilarlo desde los
- ports usted no tiene por que aceptar las opciones
+ <application>Apache</application> se puede configurar con
+ una gran variedad de opciones. Al compilarlo desde los
+ ports usted no tiene por que aceptar las opciones
predefinidas, puede seleccionar que opciones desea.</para>
<para>En algunos casos existen varios paquetes para la misma
- aplicaci&oacute;n con diferentes opciones. Por ejemplo,
- <application>Ghostscript</application> est&aacute; disponible
+ aplicaci&oacute;n con diferentes opciones. Por ejemplo,
+ <application>Ghostscript</application> est&aacute; disponible
como paquete
- <filename>ghostscript</filename> y como paquete
- <filename>ghostscript-nox11</filename>, dependiendo de si usted
- cuenta o no con servidor X11. En este caso decidir puede ser
- sencillo, pero se puede volver un problema si hay m&aacute;s de
+ <filename>ghostscript</filename> y como paquete
+ <filename>ghostscript-nox11</filename>, dependiendo de si usted
+ cuenta o no con servidor X11. En este caso decidir puede ser
+ sencillo e incluso pueden facilitarse packages con ambas opciones,
+ pero elegir se puede volver un problema si hay m&aacute;s de
una o dos opciones de compilaci&oacute;n.</para>
</listitem>
<listitem>
- <para>Las condiciones de la licencia de algunas aplicaciones
- prohiben la distribuci&oacute;n de binarios. Solo permiten la
+ <para>Las condiciones de la licencia de algunas aplicaciones
+ prohiben la distribuci&oacute;n de binarios. Solo permiten la
distribuci&oacute;n del c&oacute;digo fuente.</para>
</listitem>
<listitem>
- <para>Existe gente que no conf&iacute;a en los binarios. Al
- menos puede usted (en teor&iacute;a) revisar el c&oacute;digo fuente
+ <para>Existe gente que no conf&iacute;a en los binarios. Al
+ menos puede usted (en teor&iacute;a) revisar el c&oacute;digo fuente
y localizar problemas potenciales.</para>
</listitem>
<listitem>
- <para>Si tiene parches locales necesitar&aacute; el c&oacute;digo
+ <para>Si tiene parches locales necesitar&aacute; el c&oacute;digo
fuente para poder aplicarlos.</para>
</listitem>
<listitem>
- <para>Hay gente a la que le gusta tener el c&oacute;digo fuente para
- poder leerlo en ratos de ocio, modificarlo, tomar partes prestadas
+ <para>Hay gente a la que le gusta tener el c&oacute;digo fuente para
+ poder leerlo en ratos de ocio, modificarlo, tomar partes prestadas
(cuando la licencia lo permite, claro est&aacute;), etc.</para>
</listitem>
</itemizedlist>
- <para>Para tener constancia de los ports actualizados, suscr&iacute;base a
- la &a.ports; y a la &a.ports-bugs;.</para>
+ <para>Para tener constancia de los ports actualizados, suscr&iacute;base
+ a la &a.ports; y a la &a.ports-bugs;.</para>
<warning>
- <para>Antes de instalar cualquier aplicaci&oacute;n
- consulte <ulink url="http://vuxml.freebsd.org"></ulink> para
- comprobar los posibles problemas de seguridad relacionados con
+ <para>&nbsp;Antes de instalar cualquier aplicaci&oacute;n
+ consulte <ulink url="http://vuxml.freebsd.org"></ulink> para
+ comprobar los posibles problemas de seguridad relacionados con
ella.</para>
- <para>Tambi&eacute;n puede instalar <filename
- role="package">security/portaudit</filename> que autom&aacute;ticamente
- comprobar&aacute; las vulnerabilidades conocidas de todas las
- aplicaciones instaladas; tambi&eacute;n lo comprobar&aacute; antes de
- compilar cualquier port. Mientras tanto, puede usar
- <command>portaudit -F -a</command> despu&eacute;s de instalar
- algunos paquetes.</para>
+ <para>Tambi&eacute;n puede instalar <filename
+ role="package">security/portaudit</filename> que autom&aacute;ticamente
+ comprobar&aacute; las vulnerabilidades conocidas de todas las
+ aplicaciones instaladas; tambi&eacute;n lo comprobar&aacute; antes de
+ compilar cualquier port. Mientras tanto, puede usar
+ <command>portaudit -F -a</command> despu&eacute;s de instalar
+ algunos packages.</para>
</warning>
- <para>El resto de este cap&iacute;tulo le explicar&aacute; c&oacute;mo
- usar los ports y los paquetes para instalar software de terceros en
+ <para>El resto de este cap&iacute;tulo le explicar&aacute; c&oacute;mo
+ usar los ports y los packages para instalar software de terceros en
&os;.</para>
</sect1>
<sect1 id="ports-finding-applications">
<title>C&oacute;mo encontrar aplicaciones</title>
- <para>Antes de poder instalar cualquier software debe saber qu&eacute;
- es lo que quiere instalar y c&oacute;mo se llama la
+ <para>Antes de poder instalar cualquier software debe saber qu&eacute;
+ es lo que quiere instalar y c&oacute;mo se llama la
aplicaci&oacute;n.</para>
<para>La lista de software disponible para &os; crece constantemente.
@@ -257,62 +269,62 @@
<itemizedlist>
<listitem>
- <para>El sitio web de FreeBSD mantiene una lista (actualizada y que
- admite b&uacute;squedas) de todas las
- aplicaciones disponibles para &os; en la direcci&oacute;n
+ <para>El sitio web de &os; mantiene una lista (actualizada y que
+ admite b&uacute;squedas) de todas las
+ aplicaciones disponibles para &os; en la direcci&oacute;n
<ulink url="http://www.freebsd.org/ports/index.html">http://www.FreeBSD.org/ports/
- </ulink>. Esta base esta dividida en categor&iacute;as, y puede
- buscar por nombre (si lo sabe) o bien listar las aplicaciones
+ </ulink>. Esta base esta dividida en categor&iacute;as, y puede
+ buscar por nombre (si lo sabe) o bien listar las aplicaciones
disponibles en cierta categor&iacute;a.</para>
</listitem>
<indexterm><primary>FreshPorts</primary></indexterm>
<listitem>
- <para>Dan Langille mantiene FreshPorts en
+ <para>Dan Langille mantiene FreshPorts en
<ulink url="http://www.FreshPorts.org/"></ulink>.
- FreshPorts verifica los cambios en las aplicaciones del &aacute;rbol
- de ports, y le permite <quote>seguir</quote> uno o m&aacute;s
- ports, sobre los que le enviar&aacute;n un correo cada vez
+ FreshPorts verifica los cambios en las aplicaciones del &aacute;rbol
+ de ports, y le permite <quote>seguir</quote> uno o m&aacute;s
+ ports, sobre los que le enviar&aacute;n un correo cada vez
que se actualicen.</para>
</listitem>
<indexterm><primary>FreshMeat</primary></indexterm>
<listitem>
- <para>Si no conoce el nombre de la aplicaci&oacute;n que desea
- pruebe a usar un sitio como FreshMeat (<ulink
- url="http://www.freshmeat.net/">http://www.freshmeat.net/</ulink>)
- para encontrar una aplicaci&oacute;n; despu&eacute;s consulte
- el sitio web de &os; para ver si la aplicaci&oacute;n ha sido
+ <para>Si no conoce el nombre de la aplicaci&oacute;n que desea
+ pruebe a usar un sitio como FreshMeat (<ulink
+ url="http://www.freshmeat.net/">http://www.freshmeat.net/</ulink>)
+ para encontrar una aplicaci&oacute;n; despu&eacute;s consulte
+ el sitio web de &os; para ver si la aplicaci&oacute;n ha sido
portada.</para>
</listitem>
<listitem>
- <para>Si sabe el nombre exacto del port y solo necesita saber
- en qu&eacute; categoria est&aacute; puede usar
- &man.whereis.1;. Simplemente escriba <command>whereis
- <replaceable>fichero</replaceable></command>, donde
- <replaceable>fichero</replaceable> es el programa que quiera
- instalar. Si est&aacute; en su sistema, le dir&aacute; d&oacute;nde
+ <para>Si sabe el nombre exacto del port y solo necesita saber
+ en qu&eacute; categoria est&aacute; puede usar
+ &man.whereis.1;. Simplemente escriba <command>whereis
+ <replaceable>fichero</replaceable></command>, donde
+ <replaceable>fichero</replaceable> es el programa que quiera
+ instalar. Si est&aacute; en su sistema, le dir&aacute; d&oacute;nde
est&aacute;:</para>
<screen>&prompt.root; <userinput>whereis lsof</userinput>
lsof: /usr/ports/sysutils/lsof</screen>
- <para>Esto nos dice que <command>lsof</command> (una utilidad de
- sistema) est&aacute; en el directorio
+ <para>Esto nos dice que <command>lsof</command> (una utilidad de
+ sistema) est&aacute; en el directorio
<filename>/usr/ports/sysutils/lsof</filename>.</para></listitem>
<listitem>
- <para>Otra forma de encontrar un port en particular es usando
- el mecanismo de b&uacute;squeda integrado en la colecci&oacute;n de
- ports. Para poder usar esta opci&oacute;n de b&uacute;squeda
- debe estar en el directorio <filename>/usr/ports</filename>. Una
- vez en ese directorio ejecute <command>make search
- name=<replaceable>nombre-del-programa</replaceable></command>, donde
- <replaceable>nombre-del-programa</replaceable> es el nombre
- del programa que desea encontrar. Por ejemplo, si busca
+ <para>Otra forma de encontrar un port en particular es usando
+ el mecanismo de b&uacute;squeda integrado en la colecci&oacute;n de
+ ports. Para poder usar esta opci&oacute;n de b&uacute;squeda
+ debe estar en el directorio <filename>/usr/ports</filename>. Una
+ vez en ese directorio ejecute <command>make search
+ name=<replaceable>nombre-del-programa</replaceable></command>, donde
+ <replaceable>nombre-del-programa</replaceable> es el nombre
+ del programa que desea encontrar. Por ejemplo, si busca
<command>lsof</command>:</para>
<screen>&prompt.root; <userinput>cd /usr/ports</userinput>
@@ -325,24 +337,24 @@ Index: sysutils
B-deps:
R-deps: </screen>
- <para>Debe prestar especial atenci&oacute;n a la l&iacute;nea
- <quote>Path:</quote>de la salida, porque es la que indica
- d&oacute;nde puede encontrar el port. El resto de informaci&oacute;n
+ <para>Debe prestar especial atenci&oacute;n a la l&iacute;nea
+ <quote>Path:</quote>de la salida, porque es la que indica
+ d&oacute;nde puede encontrar el port. El resto de informaci&oacute;n
no se necesita para instalar el port.</para>
- <para>Si quiere hacer una b&uacute,squeda m&aacute;s a fondo
+ <para>Si quiere hacer una b&uacute,squeda m&aacute;s a fondo
utilice <command>make
- search key=<replaceable>cadena</replaceable></command> donde
+ search key=<replaceable>cadena</replaceable></command> donde
<replaceable>cadena</replaceable> es el t&eacute;rmino que busca.
- Podr&aacute; buscar nombres de ports, comentarios,
- descripciones y dependencias; tambi&eacute;n se puede usar
- para encontrar ports que tengan relaci&oacute;n con
+ Podr&aacute; buscar nombres de ports, comentarios,
+ descripciones y dependencias; tambi&eacute;n se puede usar
+ para encontrar ports que tengan relaci&oacute;n con
alg&uacute;n tema en particular si no conoce el nombre del
- programa que busca.</para>
+ programa que busca.</para>
- <para>En ambos casos la cadena de b&uacute;squeda no distingue entre
- may&uacute;sculas y min&uacute;sculas. Buscar <quote>LSOF</quote>
- dar&aacute; los mismos resultados que buscar
+ <para>En ambos casos la cadena de b&uacute;squeda no distingue entre
+ may&uacute;sculas y min&uacute;sculas. Buscar <quote>LSOF</quote>
+ dar&aacute; los mismos resultados que buscar
<quote>lsof</quote>.</para>
</listitem>
@@ -362,10 +374,10 @@ R-deps: </screen>
<!-- 30 Mar 2001 -->
</sect1info>
- <title>Uso del sistema de paquetes</title>
+ <title>Uso del sistema de packages</title>
<sect2>
- <title>Instalar un paquete</title>
+ <title>Instalar un package</title>
<indexterm>
<primary>packages</primary>
<secondary>installing</secondary>
@@ -374,12 +386,12 @@ R-deps: </screen>
<indexterm>
<primary><command>pkg_add</command></primary>
</indexterm>
- <para>Puede usar &man.pkg.add.1; para instalar un
- paquete de software bajo &os; desde un fichero local o desde
+ <para>Puede usar &man.pkg.add.1; para instalar un
+ package de &os; desde un fichero local o desde
un servidor remoto v&iacute;a red.</para>
<example>
- <title>Descarga de un paquete manualmente e instalaci&oacute;n en
+ <title>Descarga de un paquete manualmente e instalaci&oacute;n en
nuestro sistema</title>
<screen>&prompt.root; <userinput>ftp -a <replaceable>ftp2.FreeBSD.org</replaceable></userinput>
@@ -407,82 +419,71 @@ local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
&prompt.root; <userinput>pkg_add <replaceable>lsof-4.56.4.tgz</replaceable></userinput></screen>
</example>
- <para>Si no tiene una fuente local de paquetes (por ejemplo
- un CDROM de &os;) probablemente la mejor
+ <para>Si no tiene una fuente local de packages (por ejemplo
+ un CDROM de &os;) probablemente la mejor
opci&oacute;n sea utilizar el argumento <option>-r</option> de
- &man.pkg.add.1;, que har&aacute; que determine
- autom&aacute;ticamente el formato del objeto correcto, para
+ &man.pkg.add.1;, que har&aacute; que determine
+ autom&aacute;ticamente el formato del objeto correcto, para
posteriormente descargarlo e instalarlo desde un FTP.</para>
<indexterm>
<primary><command>pkg_add</command></primary></indexterm>
<screen>&prompt.root; <userinput>pkg_add -r <replaceable>lsof</replaceable></userinput></screen>
- <para>En el ejemplo anterior el paquete correspondiente se
- descargar&aacute; e instalar&aacute; sin intervenci&oacute;n
- del usuario. Si desea utilizar una r&eacute;plica
- (<quote>mirror</quote>) de paquetes que no sea el sitio principal
- de &os; solo tiene configurar la variable de entorno
- <envar>PACKAGESITE</envar> correctamente para
- sobreescribir el sitio predefinido. &man.pkg.add.1; utiliza
- &man.fetch.1; para descargar los ficheros, tomando como
- referencia varias variables de entorno, como
- <envar>FTP_PASSIVE_MODE</envar>, <envar>FTP_PROXY</envar> y
- <envar>FTP_PASSWORD</envar>. Quiz&aacute;s deba modificar alguna de
- estas si se encuentra detr&aacute;s de un cortafuegos, o usa un
- proxy FTP/HTTP. Consulte &man.fetch.3; si quiere ver una lista
- completa. Observe tambi&eacute;n que en el ejemplo anterior
- usamos <literal>lsof</literal> en vez de
+ <para>En el ejemplo anterior el package correspondiente se
+ descargar&aacute; e instalar&aacute; sin intervenci&oacute;n
+ del usuario. Si desea utilizar una r&eacute;plica
+ (<quote>mirror</quote>) de packages que no sea el sitio principal
+ de &os; solo tiene configurar la variable de entorno
+ <envar>PACKAGESITE</envar> correctamente para
+ sobreescribir el sitio predefinido. &man.pkg.add.1; utiliza
+ &man.fetch.1; para descargar los ficheros, tomando como
+ referencia varias variables de entorno, como
+ <envar>FTP_PASSIVE_MODE</envar>, <envar>FTP_PROXY</envar> y
+ <envar>FTP_PASSWORD</envar>. Quiz&aacute;s deba modificar alguna de
+ estas si se encuentra detr&aacute;s de un cortafuegos, o usa un
+ proxy FTP/HTTP. Consulte &man.fetch.3; si quiere ver una lista
+ completa. Observe tambi&eacute;n que en el ejemplo anterior
+ usamos <literal>lsof</literal> en vez de
<literal>lsof-4.56.4</literal>.
- Cuando usamos la opci&oacute;n de descarga remota no es
+ Cuando usamos la opci&oacute;n de descarga remota no es
necesario especificar la versi&oacute;n del paquete.
- &man.pkg.add.1; descargar&aacute; autom&aacute;ticamente la
+ &man.pkg.add.1; descargar&aacute; autom&aacute;ticamente la
&uacute;ltima versi&oacute;n de la aplicaci&oacute;n.</para>
- <para>Los paquetes se distribuyen en formato <filename>.tgz</filename>
- y <filename>.tbz</filename>. Puede encontrarlos en <ulink
- url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/">
- ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/</ulink> o bien en
- el CDROM de &os;. Cada CD de la distribuci&oacute;n de 4 CD (y del
- PowerPak, etc) contiene los paquetes en el directorio
- <filename>/packages</filename>. El orden de dicho directorio es
- similar al &aacute;rbol de <filename>/usr/ports</filename>. Cada
- categor&iacute;a tiene su subdirectorio, y todos los paquetes
- est&aacute;n en el directorio <filename>All</filename>.</para>
-
<note>
- <para>&man.pkg.add.1; descargar&aacute; la &uacute;ltima
- versi&oacute;n de su aplicaci&oacute;n si usa &os.current; o
- &os.stable;, pero si usa una versi&oacute;n -RELEASE,
- descargar&aacute; la versi&oacute;n del paquete que se
- construy&oacute; con dicha versi&oacute;n. Es posible configurar
- esto sobreescribiendo la variable de entorno
+ <para>&man.pkg.add.1; descargar&aacute; la &uacute;ltima
+ versi&oacute;n de su aplicaci&oacute;n si usa &os.current; o
+ &os.stable;, pero si usa una versi&oacute;n -RELEASE,
+ descargar&aacute; la versi&oacute;n del package que se
+ construy&oacute; con dicha versi&oacute;n. Es posible configurar
+ esto sobreescribiendo la variable de entorno
<envar>PACKAGESITE</envar>.</para>
</note>
- <para>Los ficheros de paquetes se destribuyen en formatos
- <filename>.tgz</filename> y <filename>.tbz</filename>.
+ <para>Los packages se destribuyen en formatos
+ <filename>.tgz</filename> y <filename>.tbz</filename>.
Puede encontrarlos en <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/"></ulink>,
- o en la distribuci&oacute;n de FreeBSD en CD-ROM. Todos los
- CDs en el set de 4 CDs de FreeBSD (y en el PowerPak, etc.)
- contienen paquetes en el directorio
+ o en la distribuci&oacute;n de &os; en CD-ROM. Todos los
+ CDs en el set de 4 CDs de &os; (y en el PowerPak, etc.)
+ contienen packages en el directorio
<filename>/packages</filename>. La estructura de los
- paquetes es similar a la del arbol de
+ packages es similar a la del arbol de
<filename>/usr/ports</filename>. Cada categor&iacute;a
tiene su propio directorio, y todos los paquetes se pueden
encontrar dentro del directorio <filename>All</filename>.
</para>
- <para>La estructura del directorio de paquetes es id&eacute;ntica a la
- de los ports, y funcionan como un todo para conformar el sistema de
+ <para>La estructura del directorio de packageckages es id&eacute;ntica a la
+ de los ports, y funcionan como un todo para conformar el sistema de
paquetes/ports.
</para>
</sect2>
<sect2>
- <title>Eliminar un paquete</title>
+ <title>Eliminar un package</title>
<indexterm>
<primary><command>pkg_delete</command></primary>
</indexterm>
@@ -490,7 +491,7 @@ local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
<primary>packages</primary>
<secondary>deleting</secondary>
</indexterm>
- <para>Para eliminar un paquete instalado en el sistema, utilice
+ <para>Para eliminar un package instalado en el sistema utilice
&man.pkg.delete.1;.</para>
<screen>&prompt.root; <userinput>pkg_delete <replaceable>xchat-1.7.1</replaceable></userinput></screen>
@@ -498,9 +499,9 @@ local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
<sect2>
<title>Miscel&aacute;nea</title>
- <para>Toda la informaci&oacute;n de los paquetes se guarda en
- <filename>/var/db/pkg</filename>. En &eacute;l encontrar&aacute;
- la lista completa de paquetes instalados y las descripciones de
+ <para>Toda la informaci&oacute;n de los packages se guarda en
+ <filename>/var/db/pkg</filename>. Ah&iacute;l encontrar&aacute;
+ la lista completa de paquetes instalados y las descripciones de
los mismos.</para>
</sect2>
</sect1>
@@ -508,139 +509,219 @@ local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
<sect1 id="ports-using">
<title>Uso de la colecci&oacute;n de ports</title>
- <para>La siguiente secci&oacute;n incluye las instrucciones
- b&aacute;sicas para instalar o eliminar programas mediante la
+ <para>La siguiente secci&oacute;n incluye las instrucciones
+ b&aacute;sicas para instalar o eliminar programas mediante la
Colecci&oacute;n de Ports de su sistema.</para>
<sect2 id="ports-tree">
<title>C&oacute;mo obtener la Colecci&oacute;n de Ports</title>
- <para>Para poder instalar ports primero debe hacerse, obviamente, con
- la Colecci&oacute;n de Ports&mdash;; en esencia est&aacute; compuesta
+ <para>Para poder instalar ports primero debe hacerse, obviamente, con
+ la Colecci&oacute;n de Ports&mdash;; en esencia est&aacute; compuesta
por <filename>Makefiles</filename>, parches y ficheros con la
- descripci&oacute;n de los ports y est&aacute; en
+ descripci&oacute;n de los ports y est&aacute; en
<filename>/usr/ports</filename>.</para>
- <para>Cuando instal&oacute; su sistema &os; el programa
- <application>sysinstall</application> le pregunt&oacute; si
+ <para>Cuando instal&oacute; su sistema &os; el programa
+ <application>sysinstall</application> le pregunt&oacute; si
quer&iacute; instalar la Colecci&oacute;n de Ports.
Si contest&oacute; que no siga estas instrucciones:</para>
<procedure>
- <title>Mediante Sysinstall</title>
+ <title>Mediante CVSup</title>
- <para>Este m&eacute;todo implica el uso de
- <application>sysinstall</application> para
- instalar la Colecci&oacute;n de Ports.</para>
+ <para>Este es un m&eacute;todo r&aacute;pido de conseguir y
+ mantener una copia de la Colecci&oacute;n de Ports al dia mediante
+ el protocolo <application>CVSup</application>. Si quiere saber
+ m&aacute;s sobre <application>CVSup</application> consulte <link
+ linkend="cvsup">Uso de CVSup</link>.</para>
- <step>
- <para>Como usuario <username>root</username> ejecute
- <command>sysinstall</command>
- (<command>/stand/sysinstall</command> en cualquier versi&oacute;n
- previa a &os; 5.2); del siguiente modo:</para>
+ <note>
+ <para>La implementaci&oacute;n del protocolo
+ <application>CVSup</application> que se incluye en &os; se llama
+ <application>csup</application>. Apareci&oacute; en &os;&nbsp;6.2.
+ Los usuarios de releases anteriores de &os; puden instalar <filename
+ role="package">net/csup</filename> como port o package.</para>
+ </note>
- <screen>&prompt.root; <userinput>sysinstall</userinput></screen>
- </step>
+ <para>Aseg&uacute;rese de que <filename class="directory">/usr/ports</filename>
+ est&aacute; vac&iacute;o antes de ejecutar <application>csup</application>
+ por primera vez. Si ya tiene la Colecci&oacute;n de Ports porque la
+ ha instalado por otros medios <application>csup</application>
+ no purgar&aacute; los parches de ports eliminados.</para>
<step>
- <para>Posici&oacute;nese en la opci&oacute;n
- <guimenuitem>Configure</guimenuitem>
- y pulse <keycap>Enter</keycap>.</para>
+ <para>Ejecute <command>csup</command>:</para>
+
+ <screen>&prompt.root; <userinput>csup -L 2 -h <replaceable>cvsup.FreeBSD.org</replaceable> /usr/share/examples/cvsup/ports-supfile</userinput></screen>
+
+ <para>Cambie
+ <replaceable>cvsup.FreeBSD.org</replaceable> por alg&uacute;n
+ otro servidor <application>CVSup</application> que tenga cerca.
+ Consulte <link linkend="cvsup-mirrors">R&eacute;plicas CVSup</link> (<xref
+ linkend="cvsup-mirrors">), donde encontrar&aacute; una lista
+ completa de las r&eacute;plicas CVSup.</para>
+
+ <note>
+ <para>Puede usar una versi&oacute;n de
+ <filename>ports-supfile</filename> confeccionada a su gusto,
+ por ejemplo para evitar tener que indicarle el nombre del
+ servidor <application>CVSup</application> a mano.</para>
+
+ <procedure>
+ <step>
+ <para>Haga lo siguiente: como <username>root</username> copie
+ <filename>/usr/share/examples/cvsup/ports-supfile</filename>
+ en otro sitio, por ejemplo
+ <filename>/root</filename> o su directorio /home.</para>
+ </step>
+
+ <step>
+ <para>Edite <filename>ports-supfile</filename>.</para>
+ </step>
+
+ <step>
+ <para>Reemplace
+ <replaceable>CHANGE_THIS.FreeBSD.org</replaceable>
+ por un servidor <application>CVSup</application> que
+ est&eacute; cerca de donde est&eacute; usted. Consulte
+ <link linkend="cvsup-mirrors">R&eacute;plicas
+ CVSup</link> (<xref linkend="cvsup-mirrors">) si necesita
+ ver una lista completa de las mismas.</para>
+ </step>
+
+ <step>
+ <para>Ejecute <command>csup</command>del siguiente
+ modo:</para>
+
+ <screen>&prompt.root; <userinput>csup -L 2 <replaceable>/root/ports-supfile</replaceable></userinput></screen>
+ </step>
+ </procedure>
+ </note>
</step>
<step>
- <para>Seleccione la opci&oacute;n
- <guimenuitem>Distributions</guimenuitem>,
- y pulse <keycap>Enter</keycap>.</para>
+ <para>Al ejecutar &man.csup.1; descargar&aacute; y
+ aplicar&aacute; todos los cambios recientes que haya sufrido
+ la Colecci&oacute;n de Ports, pero tenga en cuenta que no
+ actualizar&aacute; ninguno de los ports que ya tenga instalados
+ en su sistema.</para>
</step>
+ </procedure>
- <step>
- <para>Seleccione la opci&oacute;n <guimenuitem>ports</guimenuitem>
- y pulse la <keycap>barra espaciadora</keycap>.</para>
- </step>
+ <procedure>
+ <title>Mediante portsnap</title>
+
+ <para><application>Portsnap</application> es un m&eacute;todo
+ alternativo de distribuir la Colecci&oacute;n de Ports. Se
+ incluy&oacute; por primera vez en &os;&nbsp;6.0. Puede
+ instalar &man.portsnap.8; en versiones anteriores de &os;
+ como port (<filename
+ role="package">ports-mgmt/portsnap</filename>) o como
+ package:</para>
+
+ <screen>&prompt.root; <userinput>pkg_add -r portsnap</userinput></screen>
+
+ <para>En
+ <link linkend="updating-portsnap">uso de portsnap</link>
+ encontrar&aacute; detallado el funcionamiento de
+ <application>Portsnap</application>
+ features.</para>
<step>
- <para>Seleccione el medio de instalaci&oacute;n deseado (CDROM,
- FTP, etc.)</para>
+ <para>Puede saltarse esta paso a partir de &os;&nbsp;6.1-RELEASE
+ y en versiones recientes de
+ <application>Portsnap</application> (port o package).
+ <filename
+ class="directory">/usr/ports</filename> se crear&aacute;
+ autom&aacute;ticamente la primera vez que ejecute
+ &man.portsnap.8;. En versiones anteriores de
+ <application>portsnap</application> hab&iacute;a que crear
+ un <filename
+ class="directory">/usr/ports</filename> vac&iacute;o si
+ no exist&iacute;a previamente:</para>
+
+ <screen>&prompt.root; <userinput>mkdir /usr/ports</userinput></screen>
</step>
<step>
- <para>Dir&iacute;jase a la opci&oacute;n
- <guimenuitem>Exit</guimenuitem>, y
- pulse <keycap>Enter</keycap>.</para>
+ <para>Descargue una instant&aacute;nea comprimida de la
+ Colecci&oacute;n de Ports en
+ <filename class="directory">/var/db/portsnap</filename>. Hecho esto
+ puede desconectar de Internet si quiere.</para>
+
+ <screen>&prompt.root; <userinput>portsnap fetch</userinput></screen>
</step>
<step>
- <para>Pulse <keycap>X</keycap> para salir de
- <application>sysinstall</application>.</para>
+ <para>Si est&aacute; ejecutando <application>Portsnap</application> por
+ vez primera debe extraer la instant&aacute;nea en <filename
+ class="directory">/usr/ports</filename>:
+ </para>
+
+ <screen>&prompt.root; <userinput>portsnap extract</userinput></screen>
+
+ <para>Si ya tiene un <filename
+ class="directory">/usr/ports</filename> y solamente est&aacute;
+ actualizando su &aacute;rbol de ports ejecute lo siguiente:</para>
+
+ <screen>&prompt.root; <userinput>portsnap update</userinput></screen>
</step>
+
</procedure>
- <para>El m&eacute;todo alternativo para obtener y mantener actualizada la
- Colecci&oacute;n de Ports es mediante
- <application>CVSup</application>.
- Lea el fichero de ports para <application>CVSup</application> que
- encontrar&aacute; en
- <filename>/usr/share/examples/cvsup/ports-supfile</filename>.
- Consulte el cap&iacute;tulo <link linkend="cvsup">Usar
- CVSup</link> (<xref linkend="cvsup">) para m&aacute;s
- informaci&oacute;n sobre c&oacute;mo usar
- <application>CVSup</application> y el fichero
- mencionado.</para>
+
<procedure>
- <title>Mediante CVSup</title>
+ <title>Mediante Sysinstall</title>
- <para>Si quiere un m&eacute;tido r&aacute;pido para obtener
- la Colecci&oacute;n de Ports use
- <application>CVSup</application>. Si quiere mantener su
- &aacute;rbol de ports actualizado o bien saber m&aacute;s
- sobre <application>CVSup</application> lea los documentos
- mencionados previamente.</para>
+ <para>Este m&eacute;todo implica el uso de
+ <application>sysinstall</application> para
+ instalar la Colecci&oacute;n de Ports.</para>
<step>
- <para>Instale el port <filename role="package">net/cvsup</filename>.
- Consulte
- <link linkend="cvsup-install">Instalaci&oacute;n de CVSup</link> (<xref
- linkend="cvsup-install">) para m&aacute;s
- informaci&oacute;n.</para>
+ <para>Como usuario <username>root</username> ejecute
+ <command>sysinstall</command>
+ (<command>/stand/sysinstall</command> en cualquier versi&oacute;n
+ previa a &os;&nbsp;5.2); del siguiente modo:</para>
+
+ <screen>&prompt.root; <userinput>sysinstall</userinput></screen>
</step>
<step>
- <para>Como usuario <username>root</username> copie el fichero
- <filename>/usr/share/examples/cvsup/ports-supfile</filename>
- a una nueva ubicaci&oacute;n, por ejemplo al directorio
- <filename>/root</filename> o bien su propio directorio
- home.</para>
+ <para>Posici&oacute;nese en la opci&oacute;n
+ <guimenuitem>Configure</guimenuitem>
+ y pulse <keycap>Intro</keycap>.</para>
</step>
<step>
- <para>Edite el fichero <filename>ports-supfile</filename>.</para>
+ <para>Seleccione la opci&oacute;n
+ <guimenuitem>Distributions</guimenuitem>
+ y pulse <keycap>Intro</keycap>.</para>
</step>
<step>
- <para>Cambie la parte <quote>CHANGE_THIS</quote> de
- <replaceable>CHANGE_THIS.FreeBSD.org</replaceable> por un
- servidor <application>CVSup</application> que le sea cercano.
- Consulte el el cap&iacute;tulo
- <link linkend="cvsup-mirrors">Mirrors de CVSup</link> (<xref
- linkend="cvsup-mirrors">), donde encontrar&aacute; una lista
- completa de r&eacute;plicas de &os;</para>
+ <para>Seleccione la opci&oacute;n <guimenuitem>ports</guimenuitem>
+ y pulse la <keycap>barra espaciadora</keycap>.</para>
</step>
<step>
- <para>Ejecute <command>cvsup</command>:</para>
+ <para>Seleccione el medio de instalaci&oacute;n deseado (CDROM,
+ FTP, etc.)</para>
+ </step>
- <screen>&prompt.root; <userinput>cvsup -g -L 2 <replaceable>/root/ports-supfile</replaceable></userinput></screen>
+ <step>
+ <para>Dir&iacute;jase a la opci&oacute;n
+ <guimenuitem>Exit</guimenuitem> y
+ pulse <keycap>Intro</keycap>.</para>
</step>
<step>
- <para>Cuando ejecute esto se descargar&aacute;n y aplicar&aacute;n
- las actualizaciones de la Colecci&oacute;n de Ports. Este proceso
- no incluye la recompilaci&oacute;n de los ports de su
- sistema.</para>
+ <para>Pulse <keycap>X</keycap> para salir de
+ <application>sysinstall</application>.</para>
</step>
</procedure>
+
</sect2>
<sect2 id="ports-skeleton">
@@ -650,377 +731,356 @@ local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
<primary>ports</primary>
<secondary>installing</secondary>
</indexterm>
- <para>Al hablar de la Colecci&oacute;n de Ports lo primero que debemos
- explicar es a qu&eacute; nos referimos cuando hablamos de un
- <quote>esqueleto</quote> (skeleton). En s&iacute; mismo, un
- esqueleto de port un conjunto m&iacute;nimo de ficheros que
+ <para>Al hablar de la Colecci&oacute;n de Ports lo primero que
+ hay que explicar es a qu&eacute; nos referimos cuando hablamos de
+ un <quote>esqueleto</quote> (skeleton). El esqueleto de un
+ port es un conjunto m&iacute;nimo de ficheros que
indican a &os; c&oacute;mo compilar e instalar un programa.
Cada esqueleto incluye:</para>
<itemizedlist>
<listitem>
- <para>Un <filename>Makefile</filename>. Este
- <filename>Makefile</filename> contiene varias sentencias,
- que le indican al sistema c&oacute;mo compilarlo y d&oacute;nde
+ <para>Un <filename>Makefile</filename>. Este
+ <filename>Makefile</filename> contiene diversas sentencias
+ que le indican al sistema c&oacute;mo compilarlo y d&oacute;nde
instalarlo en su sistema.</para>
</listitem>
<listitem>
- <para>Un fichero <filename>distinfo</filename>. Este fichero
- contiene informaci&oacute;n sobre los ficheros que se deben
- descargar para poder compilar el programa, as&iacute; como el
- identificador <quote>checksum</quote>, que se usa para comprobar
- mediante &man.md5.1; que la descarga ha sido correcta y que el
+ <para>Un fichero <filename>distinfo</filename>. Este fichero
+ contiene informaci&oacute;n sobre los ficheros que se debe
+ descargar para poder compilar el programa, as&iacute; como el
+ identificador <quote>checksum</quote>, que se usa para comprobar
+ mediante &man.md5.1; que la descarga ha sido correcta y que el
la integridad del fichero est&aacute; garantizada.</para>
</listitem>
<listitem>
- <para>Un directorio <filename>files</filename>. Este directorio
- contiene los parches necesarios para compilar e instalar
- el programa en su sistema &os;. B&aacute;sicamente los parches
- son peque&ntilde;os ficheros que especifican cambios en ficheros
- concretos. Su formato es en texto plano y suelen decir cosas
- como <quote>borra la l&iacute;nea 10</quote> o
- <quote>Cambia la l&iacute;nea 26 por esto...</quote>.
- Estos parches tambi&eacute;n se conocen como
- <quote>diffs</quote> ya que se generan con
+ <para>Un directorio <filename>files</filename>. Este directorio
+ contiene los parches necesarios para compilar e instalar
+ el programa en su sistema &os;. B&aacute;sicamente los parches
+ son peque&ntilde;os ficheros que especifican cambios en ficheros
+ concretos. Su formato es en texto plano y suelen decir cosas
+ como <quote>borra la l&iacute;nea 10</quote> o
+ <quote>Cambia la l&iacute;nea 26 por esto</quote>.
+ Estos parches tambi&eacute;n se conocen como
+ <quote>diffs</quote> ya que se generan con
&man.diff.1;.</para>
- <para>Es posible que este directorio tambi&eacute; contenga
- alg&uacute;n otro fichero necesario para compilar e instalar
+ <para>Es posible que este directorio tambi&eacute; contenga
+ alg&uacute;n otro fichero necesario para compilar e instalar
el port.</para>
</listitem>
<listitem>
- <para>Un fichero <filename>pkg-descr</filename>. Es una
+ <para>Un fichero <filename>pkg-descr</filename>. Es una
descripci&oacute;n m&aacute;s detallada del programa.
- En algunas ocasiones ocupa varias l&iacute;neas.
- </para>
+ En algunas ocasiones ocupa varias l&iacute;neas.</para>
</listitem>
<listitem>
- <para>Un fichero <filename>pkg-plist</filename>. Es una lista de
+ <para>Un fichero <filename>pkg-plist</filename>. Es una lista de
todos los ficheros que instalar&aacute; el port.
- Tambi&eacute;n le indica al sistema de ports qu&eacute; ficheros
+ Tambi&eacute;n le indica al sistema de ports qu&eacute; ficheros
eliminar durante la desinstalaci&oacute;n del programa.</para>
</listitem>
</itemizedlist>
- <para>Algunos ports tienen otros ficheros, como
- <filename>pkg-message</filename>. El sistema de ports los usa para
- gestionar situaciones especiales. Si desea conocer los detalles,
- incluso sobre los ports en general, consulte el libro
- <quote>&os; Porter's Handbook</quote>.</para>
-
- <para>El port incluye las instrucciones de construcci&oacute;n
- desde el c&oacute;digo fuente, pero no incluye el
- c&oacute;digo. Puede obtener el c&oacute;digo desde un CDROM
- o desde Internet. El c&oacute;digo se distribuye del modo
- que el autor estime oportuno. Normalmente es un fichero tar
- comprimido con gzip, pero puede comprimirse con otra herramienta o
- incluso no estar comprimido. El c&oacute;digo del programa,
- venga como venga, se llama <quote>distfile</quote>. A
- continuaci&oacute;n veremos los dos m&eacute;todos de
+ <para>Algunos ports tienen otros ficheros, como
+ <filename>pkg-message</filename>. El sistema de ports los usa para
+ gestionar situaciones especiales. Si desea conocer los detalles,
+ incluso sobre los ports en general, consulte el libro <ulink
+ url="http://www.FreeBSD.org/doc/en_EN.ISO8859-1/books/porters-handbook/index.html">&os; Porter's Handbook</ulink>.</para>
+
+ <para>El port incluye las instrucciones necesarias para obtener
+ software a partir del c&oacute;digo fuente, pero no incluye el
+ c&oacute;digo. Puede obtener el c&oacute;digo desde un CDROM
+ o desde Internet. El c&oacute;digo se distribuye del modo
+ que el autor estime oportuno. Normalmente es un fichero tar
+ comprimido con gzip, pero puede comprimirse con otra herramienta o
+ incluso no estar comprimido. El c&oacute;digo del programa,
+ venga como venga, se llama <quote>distfile</quote>. A
+ continuaci&oacute;n veremos los dos m&eacute;todos de
instalaci&oacute;n de un port.</para>
<note>
- <para>Debe ser el usuario <username>root</username> para
+ <para>Debe ser el usuario <username>root</username> para
instalar ports.</para>
</note>
<warning>
- <para>Antes de instalar cualquier port aseg&uacute;rese de tener la
+ <para>Antes de instalar cualquier port aseg&uacute;rese de tener la
Colecci&oacute;n de Ports actualizada y de comprobar en <ulink
- url="http://vuxml.freebsd.org/"></ulink> la existencia de posibles
+ url="http://vuxml.freebsd.org/"></ulink> la existencia de posibles
problemas de seguridad que pudiera tener el port.</para>
- <para>Puede realizar la comprobaci&oacute;n de seguridad
- con <application>portaudit</application> antes de instalar
- cualquier aplicaci&oacute;n. Esta herramienta est&aacute;
+ <para>Puede realizar la comprobaci&oacute;n de seguridad
+ con <application>portaudit</application> antes de instalar
+ cualquier aplicaci&oacute;n. Esta herramienta est&aacute;
la Colecci&oacute;n de Ports (<filename
- role="package">security/portaudit</filename>). Le rogamos
- que al menos considere ejecutar
- <command>portaudit -F</command> antes de instalar
- un port nuevo, para que descargue la nueva base de datos de
- vulnerabilidades. Durante la comprobaci&oacute;n diaria de
- seguridad actualizar&aacute; la base de datos y har&aacute; una
+ role="package">security/portaudit</filename>). Le rogamos
+ que al menos considere ejecutar
+ <command>portaudit -F</command> antes de instalar un port nuevo
+ para que descargue la nueva base de datos de vulnerabilidades.
+ Durante la comprobaci&oacute;n diaria de seguridad
+ actualizar&aacute; la base de datos y har&aacute; una
auditor&iacute;a del sistema. Para m&aacute;s informaci&oacute;n
- lea las p&aacute;ginas de man&uacute;al de
- &man.portaudit.1; y &man.periodic.8;.</para>
+ lea las p&aacute;ginas de man&uacute;al de
+ &man.portaudit.1; y &man.periodic.8;.</para>
</warning>
- <sect3 id="ports-cd">
- <title>Instalaci&oacute;n de ports desde un CDROM</title>
-
- <indexterm>
- <primary>ports</primary>
- <secondary>installing from CDROM</secondary>
- </indexterm>
- <para>Los CDROM oficiales del Proyecto &os; ya no incluyen
- distfiles. Ocupan mucho espacio y se aprovecha mucho mejor
- si se incluyen paquetes precompilados. Los CDROM del PowerPak
- s&iacute; incluyen distfiles; puede comprarlos en distribuidores
- como <ulink url="http://www.freebsdmall.com/">FreeBSD Mall</ulink>.
- A lo largo de esta secci&oacute;n asumiremos que tiene un juego
- de CDROM de &os;.</para>
-
- <para>Inserte su CDROM en la unidad correspondiente. M&oacute;ntelo
- en <filename>/cdrom</filename>. (Si utiliza un punto de
- montaje diferente configure la variable de make
- <makevar>CD_MOUNTPTS</makevar>). Para comenzar dir&iacute;jase
- al directorio donde est&eacute; el port que quiere
+ <para>La Colecci&oacute;n de Ports asume que tiene usted conexi&oacute;n
+ con Internet. Si no es as&iacute; tendr&aacute; que disponer de una
+ copia del distfile en <filename>/usr/ports/distfiles</filename>.</para>
+
+ <para>El primer paso es ubicarse en el directorio del port que desea
instalar:</para>
<screen>&prompt.root; <userinput>cd /usr/ports/sysutils/lsof</userinput></screen>
- <para>Una vez en el directorio <filename>lsof</filename>
- ver&aacute; el esqueleto del port. El siguiente paso
- es compilar o <quote>construir</quote> el port. Para ello
- simplemente tecleamos <command>make</command> en la
- l&iacute;nea de ordenes. Hecho esto
- ver&aacute; algo similar a lo siguiente:</para>
+ <para>Una vez en el directorio <filename>lsof</filename> puede
+ ver el esqueleto del port. El siguiente paso es compilar el
+ port. Solamente tiene que teclear
+ typing <command>make</command> en el prompt. Una vez hecho
+ ver&aacute; algo como esto:</para>
<screen>&prompt.root; <userinput>make</userinput>
&gt;&gt; lsof_4.57D.freebsd.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
-&gt;&gt; Attempting to fetch from file:/cdrom/ports/distfiles/.
+&gt;&gt; Attempting to fetch from ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/.
===&gt; Extracting for lsof-4.57
...
-[salida de la descompresi&oacute;n cortada]
+[La salida de la descompresi&oacute;n se ha eliminado]
...
&gt;&gt; Checksum OK for lsof_4.57D.freebsd.tar.gz.
===&gt; Patching for lsof-4.57
===&gt; Applying FreeBSD patches for lsof-4.57
===&gt; Configuring for lsof-4.57
...
-[salida de configure cortada]
+[La salida de la configuraci&oacute;n se ha eliminado]
...
===&gt; Building for lsof-4.57
...
-[salida de la compilaci&oacute;n cortada]
+[La salida de la compilaci&oacute;n se ha eliminado]
...
&prompt.root;</screen>
- <para>Observe que una vez que ha terminado la compilaci&oacute;n
- regresar&aacute; a la l&iacute;nea de &oacute;rdenes.
- El siguiente paso es instalar el port. Debemos a&ntilde;adir
- una palabra a la orden <command>make</command>:
- <command>install</command>:</para>
+ <para>Una vez que acabe la compilaci&oacute;n
+ se le devolver&aacute; el control del prompt. El siguiente
+ paso es instalar el port. Para ello bastar&aacute; con que
+ a&ntilde;ada una palabra aa la orden
+ onto the <command>make</command>: esa palabra es
+ <maketarget>install</maketarget>:</para>
+
<screen>&prompt.root; <userinput>make install</userinput>
===&gt; Installing for lsof-4.57
...
-[salida de la instalaci&oacute;n cortada]
+[La salida de la instalaci&oacute;n se ha eliminado]
...
===&gt; Generating temporary packing list
===&gt; Compressing manual pages for lsof-4.57
===&gt; Registering installation for lsof-4.57
-===&gt; SECURITY NOTE:
+===&gt; SECURITY NOTE:
This port has installed the following binaries which execute with
increased privileges.
&prompt.root;</screen>
- <para>Una vez que regrese a la l&iacute;nea de &oacute;rdenes
- podr&aacute; ejecutar la aplicaci&oacute;n que acaba de instalar.
- Dado que el programa <command>lsof</command> se ejecuta con
- privilegios vemos una advertencia de seguridad.
- Debe tener muy en cuenta cualquier aviso que aparezca durante
- la compilaci&oacute;n e instalaci&oacute;n.</para>
+ <para>Una vez que vuelva usted al prompt podr&aacute; ejecutar la
+ aplicaci&oacute;n que acaba de instalar. Dado que
+ <command>lsof</command> es un programa que se ejecuta con
+ privilegios altos se le ha mostrado una advertencia de
+ seguridad. Durante la compilaci&oacute;n e instalaci&oacute;n
+ es posible que hayan aparecido otros.</para>
+
+ <para>Le recomendamos que borre el directorio que contiene todos
+ los ficheros temporales necesarios durante la compilaci&oacute;n.
+ No solo consume valioso espacio en disco sino que puede dar
+ problemas cuando vaya a actualizar el port a una versi&oacute;n
+ m&aacute;s reciente.</para>
+
+ <screen>&prompt.root; <userinput>make clean</userinput>
+===&gt; Cleaning for lsof-4.57
+&prompt.root;</screen>
<note>
- <para>Puede ahorrar un paso ejecutando <command>make
- install</command> en una sola orden en lugar de ejecutar
- <command>make</command> y <command>make install</command>
- en dos pasos diferentes.</para>
+ <para>Puede ahorrarse teclear dos pasos si para instalar un port
+ teclea <command>make
+ <maketarget>install clean</maketarget></command> en lugar de
+ <command>make</command>,
+ <command>make <maketarget>install</maketarget></command> y
+ <command>make <maketarget>clean</maketarget></command>
+ as three separate steps.</para>
</note>
<note>
- <para>Algunas shells cuentan con una cach&eacute; de
- &oacute;rdenes disponibles en los directorios que aparecen
- en la variable de entorno <envar>PATH</envar> para agilizar
- las operaciones de b&uacute;squeda de los ejecutables de
- estos ficheros. Si usa alguna de estas shells tecl&eacute;e
- <command>rehash</command> una vez que ha instalado
- el port para poder usar su nuevo programa.
- Esta orden funciona con shells como
- <command>tcsh</command>. Para shells como sh ejecute
- <filename role="package">shells/bash</filename>
- <command>has -r</command>. Consulte la
- documentaci&oacute;n de su shell para m&aacute;s
- informaci&oacute;n.</para>
+ <para>Algunas shells mantienen una cach&eacute; de
+ &oacute;rdenes disponibles en los directorios que aparecen
+ en la variable de entorno
+ <envar>PATH</envar> con el fin de acelerar las operaciones
+ de b&uacute;squeda de ejecutables de esas &oacute;rdenes.
+ Si usa una de esas shells tendr&aacute; que utilizar la
+ orden <command>rehash</command> tras instalar un port o
+ no podr&aacute; ejecutar aplicaciones reci&eacute;n
+ instaladas. Esta orden funciona en shells como
+ <command>tcsh</command>. Utilice <command>hash -r</command>
+ en shells <command>sh</command>. Para m&aacute;s
+ informaci&oacute;n consulte la documentaci&oacute;n de
+ su shell.</para>
</note>
- <note>
- <para>Por favor, tenga en cuenta que algunos ports tienen licencias
- que no permiten su inclusi&oacute;n en el CDROM.
- Probablemente es a consecuencia de un registro que se debe hacer
- antes de la descarga, que no est&eacute; permitida la
- redistribuci&oacute;n en CDROM o quiz&aacute;s se deba a
- otra raz&oacute;n. Si quiere instalar un port que no est&aacute;
- en el CDROM necesitar&aacute; conexi&oacute;n a Internet
- Internet (consulte la <link
- linkend="ports-inet">siguiente secci&oacute;n</link>).</para>
- </note>
- </sect3>
+ <para>Algunos DVD-ROM de terceros, como el &os; Toolkit
+ de <ulink url="http://www.freebsdmall.com/">&os;
+ Mall</ulink> contienen distfiles. Puede usarlos con la Colecci&oacute;n
+ de Ports. Monte el DVD-ROM en <filename>/cdrom</filename>. Si
+ utiliza un punto de montaje diferente asigne a
+ <makevar>CD_MOUNTPTS</makevar> el valor adecuado. Los
+ distfiles se ir&aacute;n copiando autom&aacute;ticamente
+ a medida que vayan siendo necesarios.</para>
- <sect3 id="ports-inet">
- <title>Instalaci&oacute;n de ports desde Internet</title>
+ <note>
+ <para>Por favor, tenga en cuenta que la licencia de unos
+ cuantos ports muy concretos no permite su distribuci&oacute;n
+ en CD-ROM. Puede deberse a que es necesario rellenar un
+ formulario de registro antes de descargarlo, porque la
+ redistribuci&oacute;n no est&eacute; permitida o por otra
+ raz&oacute;n. Si quiere instalar un port que no est&aacute;
+ en el CD-ROM tendr&aacute; que tener salida a Internet.</para>
+ </note>
- <para>Como en la secci&oacute;n anterior, en esta secci&oacute;n se
- asume que tiene configurada su conexi&oacute;n a Internet.
- Si no es as&iacute; deber&aacute; llevar a cabo la
- instalaci&oacute;n
- <link linkend="ports-cd">mediante CDROM</link>, o ponga usted una
- copia del distfile en
- <filename>/usr/ports/distfiles</filename> manualmente.</para>
+ <para>El sistema de ports utiliza &man.fetch.1; para descargar
+ ficheros; en este proceso intervienen varias variables de
+ entorno, como <envar>FTP_PASSIVE_MODE</envar>, <envar>FTP_PROXY</envar>,
+ y <envar>FTP_PASSWORD</envar>. Si est&aacute; detr&aacute;s de
+ un cortafuegos tendr&aacute; que asignar valores a una o
+ m&aacute;s de estas variables, as&iacute; como si necesita
+ utilizar un proxy FTP/HTTP. Consulte &man.fetch.3;, donde
+ econtrar&aacute; una lista detallada.</para>
+
+ <para>La opci&oacute;n <command>make
+ <maketarget>fetch</maketarget></command> se cre&oacute; para
+ los usuarios que no disponen de conexi&oacute;n cont&iacute;nua.
+ Ejecute esta orden en el directorio ra&iacute;z
+ (<filename>/usr/ports</filename>) y se descargar&aacute;n todos
+ los ficheros necesarios. Esta orden tambi&eacute;n funciona en
+ directorios situados m&aacute;s abajo, por ejemplo
+ <filename>/usr/ports/net</filename>. Tenga en cuenta que si un
+ port depende de librer&iacute;as u otros ports &eacute;stos
+ distfiles <emphasis>no</emphasis> no se descargar&aacute;n, a
+ menos que reemplace <maketarget>fetch</maketarget> por
+ <maketarget>fetch-recursive</maketarget>, que se encargar&aacute;
+ de descargar todas las dependencias de cada port.</para>
+
+ <note><para>Si quiere compilar todos los ports de una
+ categor&iacute;a y de una sola vez ejecutando la orden
+ <command>make</command> en el directorio ra&iacute;z, de muy
+ similar manera que lo que se acaba de ver con
+ <command>make<maketarget>fetch</maketarget></command>. Tenga en
+ cuenta que esto es bastante peligroso porque algunos ports no
+ pueden coexistir. Tambi&eacute;n se dan casos de ports que
+ instalan instalan dos ficheros diferentes con el mismo
+ nombre.</para></note>
- <para>Instalar un port desde Internet se hace exactamente igual
- que cuando se hace desde un CDROM. La &uacute;nica diferencia
- entre estos dos m&eacute;todos es que el fichero distfile se
- descarga desde Internet.</para>
+ <para>En algunos casos (raros) el usuario tendr&aacute; que
+ descargar los tarball de un sitio que no es el que se guarda
+ en la variable de entorno <makevar>MASTER_SITES</makevar>
+ (el sitio desde el que se descargan todos los dem&aacute;s
+ normalmente). Puede sobreescribir la opci&oacute;n
+ <makevar>MASTER_SITES</makevar> con la siguiente
+ orden:</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/<replaceable>directory</replaceable></userinput>
+&prompt.root; <userinput>make MASTER_SITE_OVERRIDE= \
+ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch</userinput></screen>
+
+ <para>In this example we change the
+ <makevar>MASTER_SITES</makevar> option to <hostid
+ role="fqdn">ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/</hostid>.</para>
+
+ <note><para>Algunos ports permiten (o incluso exigen) que se le
+ faciliten opciones de compilaci&oacute;n para activar o desactivar
+ partes de la aplicaci&oacute;n que no se necesiten, determinadas
+ opciones de seguridad, etc. Casos t&iacute;picos de esto son
+ <filename role="package">www/mozilla</filename>, <filename
+ role="package">security/gpgme</filename>, and <filename
+ role="package">mail/sylpheed-claws</filename>. Cuando debe
+ usted tomar este tipo de decisiones se le muestra un mensaje
+ con las opciones disponibles.</para></note>
- <para>Los pasos son id&eacute;nticos:</para>
+
+ <sect3>
+ <title>Sobreescribir directorios por omisi&oacute;n de ports</title>
- <screen>&prompt.root; <userinput>make install</userinput>
-&gt;&gt; lsof_4.57D.freebsd.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
-&gt;&gt; Attempting to fetch from ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/.
-Receiving lsof_4.57D.freebsd.tar.gz (439860 bytes): 100%
-439860 bytes transferred in 18.0 seconds (23.90 kBps)
-===&gt; Extracting for lsof-4.57
-...
-[salida de la descompresi&oacute;n del fichero cortada]
-...
-&gt;&gt; Checksum OK for lsof_4.57D.freebsd.tar.gz.
-===&gt; Patching for lsof-4.57
-===&gt; Applying FreeBSD patches for lsof-4.57
-===&gt; Configuring for lsof-4.57
-...
-[salida de la configuraci&oacute;n cortada]
-...
-===&gt; Building for lsof-4.57
-...
-[salida de la compilaci&oacute;n cortada]
-...
-===&gt; Installing for lsof-4.57
-...
-[salida de la instalaci&oacute;n cortada]
-...
-===&gt; Generating temporary packing list
-===&gt; Compressing manual pages for lsof-4.57
-===&gt; Registering installation for lsof-4.57
-===&gt; SECURITY NOTE:
- This port has installed the following binaries which execute with
- increased privileges.
-&prompt.root;</screen>
+ <para>Algunas veces es &uacute;til (u obligatorio) utilizar un
+ directorio de trabajo o un &laquo;target&raquo; distinto al
+ que tenemos por omisi&oacute;n. Las variables de entorno
+ <makevar>WRKDIRPREFIX</makevar> y <makevar>PREFIX</makevar>
+ pueden sobreescribirse seg&uacute;n nuestra conveniencia. Veamos
+ un ejemplo:</para>
- <para>Como puede ver la &uacute;nica diferencia es la l&iacute;nea que
- indica desde d&oacute;nde se descarga el c&oacute;digo.</para>
-
- <para>El sistema de ports utiliza &man.fetch.1; para descargar los
- ficheros, y usa distintas varibles de entorno como
- <envar>FTP_PASSIVE_MODE</envar>, <envar>FTP_PROXY</envar>,
- y <envar>FTP_PASSWORD</envar>. Puede ser necesario que modifique
- una o m&aacute;s de estas variables si est&aacute; detr&aacute;s de
- un cortafuegos o de un proxy FTP/HTTP. Consulte la p&aacute;gina
- de manual de &man.fetch.3; si quiere ver una lista completa de
- las opciones.</para>
-
- <para>La opci&oacute;n
- <command>make <maketarget>fetch</maketarget></command> facilita la
- tarea a los usuarios que no pueden estar permanentemente
- conectados. Ejecute la orden en
- <filename>/usr/ports</filename> y los ficheros necesarios se
- descargar&aacute;n autom&aacute;ticamente. Esta orden funciona
- tambi&eacute;n en los subdirectorios, por ejemplo en
- <filename>/usr/ports/net</filename>.
- Si el port depende de bibliotecas o de otros ports la orden
- <emphasis>no</emphasis> descargar&aacute; los distfiles de
- las dependencias. Reemplace
- <maketarget>fetch</maketarget> por
- <maketarget>fetch-recursive</maketarget> si quiere descargar
- tambi&eacute;n las dependencias del port.</para>
-
- <note><para>Es posible compilar todos los ports de una categoria,
- o incluso todos si eso es lo que quiere, ejecutando la
- orden <command>make</command> en <filename>/usr/ports</filename>,
- igual que hemos visto en
- <command>make<makevar>fetch</makevar></command>
- Tenga en cuenta que puede resultar peligroso, ya que algunos
- ports no pueden pueden coexistir. Por otra parte puede darse que
- algunos ports instalen dos ficheros distintos con el mismo
- nombre.</para></note>
+ <screen>&prompt.root; <userinput>make WRKDIRPREFIX=/usr/home/ejemplo/ports install</userinput></screen>
- <para>Puede darse el caso de que necesite descargar los tarballs de
- un sitio que no sea <makevar>MASTER_SITES</makevar> (cuyo valor
- indica el repositorio desde el que se descargan los ficheros).
- Para cambiar el valor de la opci&oacute;n
- <makevar>MASTER_SITES</makevar> haga lo siguiente:</para>
-
- <screen>&prompt.root; <userinput>cd /usr/ports/<replaceable>directory</replaceable></userinput></screen>
- <screen>&prompt.root; <userinput>make MASTER_SITE_OVERRIDE= \
- ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch</userinput></screen>
-
- <para>En este ejemplo cambiamos la opci&oacute;n
- <makevar>MASTER_SITES</makevar>
- a <hostid role="fqdn">ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/</hostid>.</para>
-
- <para>Algunos ports permiten (o requieren) que se faciliten opciones
- de compilaci&oacute;n que habiliten o deshabiliten componentes de
- la aplicaci&oacute;n que no son necesarios, algunas opciones de
- seguridad o de otro tipo.
- <filename role="package">
- www/mozilla</filename>,
- <filename role="package">security/gpgme</filename> y
- <filename role="package">mail/sylpheed-claws</filename> son casos
- t&iacute;picos. Cuando existan estas opciones ver&aacute; un
- mensaje al respecto.</para>
- </sect3>
+ <para>compilar&aacute; el port en
+ <filename>/usr/home/ejemplo/ports</filename> y lo instalar&aacute;
+ en <filename>/usr/local</filename>.</para>
- <sect3>
- <title>C&oacute;mo reubicar el directorio de los ports</title>
-
- <para>Algunas veces es &uacute;til (o imprescindible) usar
- diferentes distfiles y directorios de ports. Las variables
- <makevar>PORTSDIR</makevar> y <makevar>PREFIX</makevar> le
- ayudar&aacute; con esto. Veamos un ejemplo:</para>
-
- <screen>&prompt.root; <userinput>make PORTSDIR=/usr/home/ejemplo/ports install</userinput></screen>
- <para>Esto compilar&aacute; el port en
- <filename>/usr/home/ejemplo/ports</filename> y lo
- instalar&aacute; en <filename>/usr/local</filename>.</para>
-
<screen>&prompt.root; <userinput>make PREFIX=/usr/home/ejemplo/local install</userinput></screen>
- <para>Esto compilar&aacute; el port en
- <filename>/usr/ports</filename> y lo
- instalar&aacute; en
+
+ <para>lo compilar&aacute; en <filename>/usr/ports</filename> y lo
+ instalar&aacute; en
<filename>/usr/home/ejemplo/local</filename>.</para>
- <para>Y claro,</para>
+ <para>Y por supuesto,</para>
- <screen>&prompt.root; <userinput>make PORTSDIR=../ports PREFIX=../local install</userinput></screen>
+ <screen>&prompt.root; <userinput>make WRKDIRPREFIX=../ports PREFIX=../local install</userinput></screen>
- <para>Combinar&aacute; los dos (es demasiado largo para escribirlo
- completamente pero deber&iacute;a darle una idea de c&oacute;mo
- se har&iacute;a).</para>
-
- <para>Tambi&eacute;n puede cambiar estas variables como parte su
- entorno. En el manual de su shell encontrar&aacute; c&oacute;mo
- hacerlo.</para>
- </sect3>
+ <para>combinar&aacute; ambas; (ocupa demasiado para mostrarlo en una
+ p&aacute;gina, pero la idea general queda clara).</para>
+
+ <para>Puede asignar valores a estas variables del mismo modo
+ que a cualquier otra de su entorno. Consulte la
+ documentaci&oacute;n de su shell para m&aacute;s
+ informaci&oacute;n.</para>
+ </sect3>
<sect3>
<title>Uso de <command>imake</command></title>
- <para>Algunos ports que usan <command>imake</command>
- (un componente del Sistema X Window) no funcionan correctamente
- con <makevar>PREFIX</makevar>, e insistir&aacute;n en instalar
- en <filename>/usr/X11R6</filename>. Del mismo modo
- algunos ports de Perl ignoran <makevar>PREFIX</makevar> y se
- instalan en el &aacute;rbol de Perl. Hacer que estos ports
- respeten <makevar>PREFIX</makevar> es dif&iacute;cil y a veces
+ <para>Algunos ports que usan <command>imake</command>
+ (un componente del Sistema X Window) no funcionan correctamente
+ con <makevar>PREFIX</makevar> e insistir&aacute;n en instalarse
+ en <filename>/usr/X11R6</filename>. Del mismo modo
+ algunos ports de Perl ignoran <makevar>PREFIX</makevar> y se
+ instalan en el &aacute;rbol de Perl. Hacer que estos ports
+ respeten <makevar>PREFIX</makevar> es dif&iacute;cil y a veces
imposible.</para>
-
</sect3>
+
+ <sect3>
+ <title>Reconfigurar ports</title>
+
+ <para>Al compilar ciertos ports se le presentar&aacute; un
+ men&uacute; basado en ncurses en el cual podr&aacute; elegir
+ entre m&aacute;s o menos opciones de compilaci&oacute;n. No es
+ raro que los usuarios quieran volver a usar ese men&uacute; para
+ a&ntilde;adir, quitar o cambiar opciones una vez que el port ya
+ est&aacute; compilado. Hay bastantes formas de hacerlo. Una
+ manera es entrar al directorio que contiene el port y teclear
+ containing the port and type <command>make
+ <maketarget>config</maketarget></command>, que har&aacute; que se
+ le presente de nuevo el men&uacute; con las opciones que estuvieran
+ seleccionadas previamente. Otra opci&oacute;n es usar la orden
+ <command>make <maketarget>showconfig</maketarget></command>, que
+ le mostrar&aacute; todas las opciones de configuraci&oacute;n del
+ port. Hay otra opci&oacute;n m&aacute;s, <command>make
+ <maketarget>rmconfig</maketarget></command>, que borrar&aacute;
+ todas las opciones que estuvieran seleccionadas y le permitir&aacute;
+ por tanto empezar desde cero. Todas estas opciones y muchas
+ m&aacute;s las encontrar&aacute; descritas con gran detalle en
+ &man.ports.7;.</para>
+ </sect3>
+
+
</sect2>
<sect2 id="ports-removing">
@@ -1030,228 +1090,371 @@ Receiving lsof_4.57D.freebsd.tar.gz (439860 bytes): 100%
<primary>ports</primary>
<secondary>removing</secondary>
</indexterm>
- <para>Ahora que sabe instalar ports probablemente quiera saber
- c&oacute;mo eliminarlos; puede que haya instalado alguno y
- posteriormente se haya dado cuenta de que ha instalado el port
- incorrecto. Vamos a desinstalar el por del ejemplo anterior
- (que, para todos aquellos que no estaban atentos, era
- <command>lsof</command>). Igual que al instalar ports, lo primero
- que debemos hacer es ubicarnos en el directorio del port que
- deseamos eliminar del sistema, en nuestro caso
- <filename>/usr/ports/sysutils/lsof</filename>.
- Una vez ubicados en el directorio adecuado estamos listos para
- eliminar <command>lsof</command>. Para ello usaremos la orden
- <command>make deinstall</command>:</para>
-
- <screen>&prompt.root; <userinput>cd /usr/ports/sysutils/lsof</userinput>
-&prompt.root; <userinput>make deinstall</userinput>
-===&gt; Deinstalling for lsof-4.57</screen>
-
- <para>Como ve, ha sido muy f&aacute;cil. Ha eliminado
- <command>lsof</command> de su sistema. Si quiere reinstalarlo
- ejecute <command>make reinstall</command> en el directorio
- <filename>/usr/ports/sysutils/lsof</filename>.</para>
-
- <para>Las &oacute;rdenes <command>make deinstall</command> y
- <command>make reinstall</command> no funcionan si ejecuta la
- orden <command>make clean</command>. Si quiere desintalar un port
- despu&eacute;s de ejecutar <command>make clean</command> deber&aacute;
- usar la orden &man.pkg.delete.1; como se describe en la
- secci&oacute;n de
- <link linkend="packages-using">Paquetes</link> del Handbook.</para>
+ <para>Ahora que sabe instalar ports probablemente quiera saber
+ c&oacute;mo eliminarlos; puede que haya instalado alguno y
+ posteriormente se haya dado cuenta de que ha instalado el port
+ incorrecto. Vamos a desinstalar el port del ejemplo anterior
+ (que, para todos aquellos que no estaban atentos, era
+ <command>lsof</command>). Igual que al instalar ports, lo primero
+ que debemos hacer es ubicarnos en el directorio del port que
+ deseamos eliminar del sistema, en nuestro caso
+ <filename>/usr/ports/sysutils/lsof</filename>. Los ports se
+ desinstalan exactamente igual que los packages; esto se
+ explica en la <link
+ linkend="packages-using">secci&oacute;N de packages</link>) utilizando
+ la orden &man.pkg.delete.1;:</para>
+
+ <screen>&prompt.root; <userinput>pkg_delete lsof-4.57</userinput></screen>
+
+
+ <sect2 id="ports-upgrading">
+ <title>Actualizaci&oacute;n de ports</title>
+
+ <indexterm>
+ <primary>ports</primary>
+ <secondary>upgrading</secondary>
+ </indexterm>
+ <para>Antes de nada necesita ver una lista de ports instalados de
+ los cuales exista una nueva versi&oacute;n en la Colecci&oacute;n
+ de Ports. Utilice &man.pkg.version.1;:</para>
+
+ <screen>&prompt.root; <userinput>pkg_version -v</userinput></screen>
+
+ <sect3 id="ports-file-updating">
+ <title><filename>/usr/ports/UPDATING</filename></title>
+
+ <para>Una vez actualizada la Colecci&oacute;n de Ports (y
+ <emphasis>antes</emphasis> de intentar actualizar ning&uacute;n
+ port) debe consultar
+ <filename>/usr/ports/UPDATING</filename>. Este fichero describe
+ todas las novedades, problemas que pueden encontrarse y pasos que
+ deben seguir los usuarios al actualizar un port; hay cambios de
+ formato, cambios de ubicaci&oacute;n de ficheros de
+ configuraci&oacute;n o incompatibilidades con versiones
+ anteriores.</para>
+
+ <para>Si <filename>UPDATING</filename> se contradice de cualquier modo
+ con lo que lea aqu&iacute; tenga muy encuenta que lo que aparezca en
+ <filename>UPDATING</filename> tiene prioridad absoluta.</para>
+ </sect3>
+
+ <sect3 id="portupgrade">
+ <title>Actualizaci&oacute;n de ports con portupgrade</title>
+
+ <indexterm>
+ <primary>portupgrade</primary>
+ </indexterm>
+
+ <para>La aplicaci&oacute;n <application>portupgrade</application>
+ se dise&ntilde;&oacute; para actualizar f&aacute;cilmente los ports
+ instalados en un sistema. Puede instalarla desde el port <filename
+ role="package">ports-mgmt/portupgrade</filename>. La
+ instalaci&oacute;n es como al de cualquier otro port, use la orden
+ <command>make <maketarget>install
+ clean</maketarget></command> command:</para>
+
+ <screen>&prompt.root; <userinput>cd /usr/ports/ports-mgmt/portupgrade</userinput>
+&prompt.root; <userinput>make install clean</userinput></screen>
+
+ <para>Compruebe la lista de ports instalados con <command>pkgdb
+ -F</command> y arregle todas las inconsistencias que aparezcan. Le
+ recomendamos que haga esta comprobaci&oacute;n de forma regular y
+ siempre antes de una actualizaci&oacute;n.</para>
+
+ <para>Si ejecuta <command>portupgrade -a</command>
+ <application>portupgrade</application> intentar&aacute; actualizar
+ todos y cada uno de los ports instalados en su sistema. Utilice el
+ par&aacute;metro <option>-i</option> si quiere que le pida
+ confirmaci&oacute;n antes de actualizar cada uno de los ports.</para>
+
+ <screen>&prompt.root; <userinput>portupgrade -ai</userinput></screen>
+
+ <para>Si solamente quiere actualizar una sola aplicaci&oacute;n (y no
+ absolutamente todos los ports) utilice la orden <<command>portupgrade
+ <replaceable>nombre-de-aplicaci&oacute;n</replaceable></command>.
+ A&ntilde;ada el modificador <option>-R</option> si quiere que
+ <application>portupgrade</application> actualice antes todos los
+ ports de los que depende la aplicaci&oacute;n en cuesti&oacute;n.</para>
+
+ <screen>&prompt.root; <userinput>portupgrade -R firefox</userinput></screen>
+
+ <para>Si quiere usar packages en lugar de ports use el modificador
+ <option>-P</option> flag. Con esta opci&oacute;n
+ <application>portupgrade</application> busca en los directorios
+ locales que aparezcan en <envar>PKG_PATH</envar> o descarga los
+ packages desde un sitio remoto si es que no los encuentra en
+ local. Si es imposible encontrar los packages ni en local ni en
+ remoto<application>portupgrade</application> utilizar&aacute;
+ ports. Si no quiere usar ports pase lo que pase utilice el
+ modificador <option>-PP</option>.</para>
+
+ <screen>&prompt.root; <userinput>portupgrade -PP gnome2</userinput></screen>
+
+ <para>Si quiere solamente descargar los distfiles (o los packages,
+ usando <option>-P</option>) sin compilar ni instalar nada,
+ use <option>-F</option>. Para m&aacute;s informaci&oacute;n
+ consulte &man.portupgrade.1;.</para>
+ </sect3>
+
+ <sect3 id="portmanager">
+ <title>Actualizaci&oacute;n de ports con portmanager</title>
+
+ <indexterm>
+ <primary>portmanager</primary>
+ </indexterm>
+
+ <para><application>Portmanager</application> es otra aplicaci&oacute;n
+ pensada para la actualizaci&oacute;n sencilla de ports instalados
+ en el sistema. Puede encontrarla en
+ <filename role="package">ports-mgmt/portmanager</filename>:</para>
+
+ <screen>&prompt.root; <userinput>cd <filename class="directory">/usr/ports/ports-mgmt/portmanager</filename></userinput>
+&prompt.root; <userinput>make install clean</userinput></screen>
+
+ <para>Puede actualizar todos los ports que tenga instalados con
+ una sola orden:</para>
+
+ <screen>&prompt.root; <userinput>portmanager -u</userinput></screen>
+
+ <para>Si usa el modificador <option>-ui</option> se le pedir&aacute;
+ confirmaci&oacute;n a cada paso que <application>Portmanager</application>
+ vaya a dar. <application>Portmanager</application> tambi&eacute;n
+ puede usarse para instalar nuevos ports. A diferencia del habitual
+ <command>make <maketarget>install clean</maketarget></command>
+ actualizar&aacute; todos los ports que dependan antes de compilar e
+ instalar ese port que queramos instalar.</para>
+
+ <screen>&prompt.root; <userinput>portmanager <replaceable>x11/gnome2</replaceable></userinput></screen>
+
+ <para>Si aparecen problemas con las dependencias del port que quiere
+ instalar puede usar <application>Portmanager</application> para
+ recompilar todos ello en el orden correcto. Una vez que acabe el
+ port que estaba dando problemas ser&aacute; tambi&eacute;n
+ recompilado.</para>
+
+ <screen>&prompt.root; <userinput>portmanager <replaceable>graphics/gimp</replaceable> -f</userinput></screen>
+
+ <para>Para m&aacute;s informaci&oacute;n consulte &man.portmanager.1;.</para>
+ </sect3>
+
+ <sect3 id="portmaster">
+ <title>Actualizaci&oacute;n de ports con portmaster</title>
+
+ <indexterm>
+ <primary>portmaster</primary>
+ </indexterm>
+
+ <para><application>Portmaster</application> es otra aplicaci&oacute;n
+ para actualizar ports. <application>Portmaster</application> se
+ dise&ntilde;&oacute; para que utilizara las herramientas del sistema
+ <quote>base</quote> (es decir, no depende de otros ports) y utiliza
+ la informaci&oacute;n que se almacena en el directorio
+ <filename class="directory">/var/db/pkg/</filename> para determinar
+ qu&eacute; port es el que hay que actualizar. Puede encontrarlo en
+ <filename role="package">ports-mgmt/portmaster</filename>:</para>
+
+ <screen>&prompt.root; <userinput>cd <filename class="directory">/usr/ports/ports-mgmt/portmaster</filename></userinput>
+&prompt.root; <userinput>make install clean</userinput></screen>
+
+ <para><application>Portmaster</application> agrupa los ports en cuatro
+ categor&iacute;as:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>&laquo;Root ports&raquo; (no tienen dependencias, ning&uacute;n port depende de ellos)</para>
+ </listitem>
+ <listitem>
+ <para>&laquo;Trunk ports&raquo; (no tienen dependencias, otros ports dependen de ellos)</para>
+ </listitem>
+ <listitem>
+ <para>&laquo;Branch ports&raquo; (tienen dependencias, otros ports dependen de ellos)</para>
+ </listitem>
+ <listitem>
+ <para>&laquo;Leaf ports&raquo; (tienen dependencias, ning&uacute;n port depende de ellos)</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Puede ver una lista de los ports instalados y
+ buscar actualizaciones para ellos usando el modificador
+ <option>-L</option> :</para>
+
+<screen>&prompt.root; <userinput>portmaster -L</userinput>
+===>>> Root ports (No dependencies, not depended on)
+===>>> ispell-3.2.06_18
+===>>> screen-4.0.3
+ ===>>> New version available: screen-4.0.3_1
+===>>> tcpflow-0.21_1
+===>>> 7 root ports
+...
+===>>> Branch ports (Have dependencies, are depended on)
+===>>> apache-2.2.3
+ ===>>> New version available: apache-2.2.8
+...
+===>>> Leaf ports (Have dependencies, not depended on)
+===>>> automake-1.9.6_2
+===>>> bash-3.1.17
+ ===>>> New version available: bash-3.2.33
+...
+===>>> 32 leaf ports
+
+===>>> 137 total installed ports
+ ===>>> 83 have new versions available
+</screen>
+
+ <para>Con la siguiente orden puede actualizar todos los ports
+ del sistema:</para>
+
+ <screen>&prompt.root; <userinput>portmaster -a</userinput></screen>
+
+ <note><para>Por omisi&oacute;n <application>Portmaster</application>
+ guardar&aacute; una copia de seguridad (un package) de cada port
+ antes de borrarlo. Si la instalaci&oacute;N de la nueva versi&oacute;n
+ funciona <application>Portmaster</application> borrar&aacute; el package.
+ Si utiliza <option>-b</option> le dir&aacute; a
+ <application>Portmaster</application> que no borre autom&aacute;ticamente
+ el package. Si usa el modificador <option>-i</option> arrancar&aacute;
+ <application>Portmaster</application> en modo interactivo, lo que significa
+ que le pedir&aacute; confirmaci&oacute;n antes de actualizar cada
+ port.</para></note>
+
+ <para>Si se encuentra con errores durante el proceso de
+ actualizaci&oacute;n puede utilizar el modificador
+ <option>-f</option> para actualizar o recompilar todos
+ los ports:</para>
+
+ <screen>&prompt.root; <userinput>portmaster -af</userinput></screen>
+
+ <para>Tambi&eacute;n puede usar <application>Portmaster</application>para
+ instalar nuevos ports en el sistema, actualizando todas sus dependencias
+ antes de compilar e instalar el nuevo port:</para>
+
+ <screen>&prompt.root; <userinput>portmaster <replaceable>shells/bash</replaceable></userinput></screen>
+
+ <para>Por favor, consulte &man.portmaster.8; para m&aacute;s
+ informaci&oacute;n.</para>
+ </sect3>
</sect2>
+
<sect2 id="ports-disk-space">
- <title>Los ports y el espacio de disco</title>
+ <title>Los ports y el espacio en disco</title>
<indexterm>
<primary>ports</primary>
<secondary>disk-space</secondary>
</indexterm>
- <para>Usar la Colecci&oacute;n de Ports consume mucho espacio de
- disco seg&uacute;n pasa el tiempo. Por culpa de la tendencia del
- &aacute;rbol de ports a crecer en tama&ntilde;o le recomendamos
- que despu&eacute;s de compilar e instalar sofware desde los ports
+ <para>Usar la Colecci&oacute;n de Ports consume mucho espacio de
+ disco seg&uacute;n pasa el tiempo. Por culpa de la tendencia del
+ &aacute;rbol de ports a crecer sin parar le recomendamos
+ que despu&eacute;s de compilar e instalar sofware desde los ports
recuerde limpiar los directorios temporales <filename
class="directory">work</filename> mediante la orden
- <command>make <makevar>clean</makevar></command>. Esto
- eliminar&aacute; el directorio <filename
- class="directory">work</filename> que queda despu&eacute;s de
- compilar e instalar un port. Tambi&eacute;n puede eliminar los
- ficheros de c&oacute;digo del directorio <filename
- class="directory">distfiles</filename> y los ports instalados
- si lo estima conveniente.</para>
-
- <para>Algunos usuarios limitan las categor&iacute;as de ports
- disponibles configurando el fichero
- <filename>refuse</filename>. De esta forma, cuando ejecutan
- la aplicaci&oacute;n <application>CVSup</application>, no
- descargar&aacute; los ficheros de esas categor&iacute;a. Puede
- encontrar m&aacute;s informaci&oacute;n sobre el fichero
- <filename>refuse</filename> en la <xref
- linkend="cvsup-refuse-file">.</para>
- </sect2>
+ <command>make <makevar>clean</makevar></command>. Puede
+ limpiar de un plumazo los directorios temporales de toda la
+ Colecci&oacute;n de Ports con la siguiente orden:</para>
- <sect2 id="ports-upgrading">
- <title>C&oacute;mo actualizar los ports</title>
+ <screen>&prompt.root; <userinput>portsclean -C</userinput></screen>
- <indexterm>
- <primary>portupgrade</primary>
- </indexterm>
- <indexterm>
- <primary>ports</primary>
- <secondary>upgrading</secondary>
- </indexterm>
- <note>
- <para>Una vez que actualice su colecci&oacute;n de ports
- (y antes de intentar actualizar ning&uacute;n port)
- deber&iacute;a leer el fichero
- <filename>/usr/ports/UPDATING</filename>. Este fichero
- describe varios problemas que los usuarios pueden encontrarse
- y los pasos adicionales para sortearlos al actualizar
- un port.</para>
- </note>
+ <para>R&aacute;pidamente acumular&aacute; gran cantidad de viejas
+ distribuciones de c&oacute;digo en
+ <filename class="directory">distfiles</filename>. Puede borrarlos
+ a mano, pero tambi&eacute;n puede usar la siguiente orden para
+ borrar todos los distfiles que no tengan relaci&oacute;n con
+ ning&uacute;n port:</para>
- <para>Mantener los ports actualizados puede ser una tarea
- tediosa. Por ejemplo, para actualizar un port debe ir al
- directorio del port, compilar el port, desinstalar el
- port viejo, instalar el port nuevo y por &uacute;ltimo limpiar
- el directorio despu&eacute;s de compilarlo.
- Imagine hacer esto con cinco ports: tedioso
- &iquest;verdad?. Esto era un gran problema para los
- administradores, pero ahora tenemos herramientas para arreglarlo.
- Por ejemplo, la herramienta <filename
- role="package">sysutils/portupgrade</filename> se har&aacute;
- cargo de todo esto. Inst&aacute;leo como cualquier otro
- port mediante la orden <command>make <makevar>install
- clean</makevar></command>.</para>
-
- <para>Ahora debe crear la base de datos con la orden <command>pkgdb
- -F</command>. Esto leer&aacute; la lista de ports instalados y
- crear&aacute; el fichero de base de datos en el directorio
- <filename>/var/db/pkg</filename>. Cuando ejecute la
- orden <command>portupgrade
- -a</command>, leer&aacute; esa base de datos y el fichero
- <filename>INDEX</filename> de los ports. Por &uacute;ltimo,
- <application>portupgrade</application> empezar&aacute; a
- descargar, compilar, instalar y limpiar los ports que se han
- actualizado. <application>portupgrade</application> incluye
- muchas opciones para diferentes necesidades, las m&aacute;s
- importantes se exponen m&aacute;s adelante.</para>
-
- <para>Si quiere actualizar una sola aplicaci&oacute;n y no la
- base de datos completa use la orden <command>portupgrade
- <replaceable>pkgname</replaceable></command>,
- incluyendo el parametro <option>-r</option> si
- <application>portupgrade</application> debe actualizar
- tambi&eacute;n todos los paquetes que dependan de este paquete, y
- <option>-R</option> si quiere que actualice todos los paquetes
- de los que depende esta aplicaci&oacute;n.</para>
-
- <para>Si prefiere usar paquetes en vez de ports en la
- instalaci&oacute;n use el par&aacute;metro
- <option>-P</option>. Con esta opci&oacute;n
- <application>portupgrade</application> busca
- en los directorios locales que hay en <envar>PKG_PATH</envar>, o
- descarga los paquetes desde internet si no los encuentra
- en el sistema. Si no lo encuentra en local ni en el servidor
- remoto <application>portupgrade</application>
- usar&aacute; los ports. Para evitar que use los ports
- especifique <option>-PP</option>.</para>
-
- <para>Si solo quiere descargar los distfiles (o paquetes si usa
- <option>-P</option>) sin compilar o instalar nada, use
- <option>-F</option>. Para m&aacute;s informaci&oacute;n
- consulte &man.portupgrade.1;.</para>
+ <screen>&prompt.root; <userinput>portsclean -D</userinput></screen>
+
+ <para>Tambi&eacute;n puede borrar todos los distfiles sin relaci&oacute;n
+ con ning&uacute;n port instalado en el sistema:</para>
+
+ <screen>&prompt.root; <userinput>portsclean -DD</userinput></screen>
<note>
- <para>Es importante actualizar la base de datos de paquetes
- regularmente mediante la orden <command>pkgdb -F</command>;
- De este modo corregir&aacute; inconsistencias, sobre todo cuando
- <application>portupgrade</application> se lo pida. No
- cancele <application>portupgrade</application> mientras est&eacute;
- actualizando la base de datos de paquetes puesto que
- dejar&iacute;a una base de datos inconsistente.</para>
+ <para><command>portsclean</command> forma parte de la
+ &laquo;suite&raquo; <application>portupgrade</application>.</para>
</note>
- <para>Hay m&aacute;s herramientas que pueden hacer todo esto;
- curios&eacute;e un poco en el directorio
- <filename>ports/sysutils</filename>, a ver qu&eacute;
- encuentra.</para>
+ <para>No olvide borrar los ports instalados una vez que deja de
+ necesitarlos. Hay una herramienta muy &uacute;til para ayudar
+ a automatizar esta tarea:
+ <filename role="package">ports-mgmt/pkg_cutleaves</filename>.</para>
+
+
</sect2>
+
</sect1>
<sect1 id="ports-nextsteps">
<title>Despu&eacute;s de instalar un port</title>
- <para>Una vez que ha instalado una nueva aplicaci&oacute;n normalmente
- deber&aacute; leer la documentaci&oacute;n que incluye, editar los
- ficheros de configuraci&oacute;n necesarios, asegurarse de que la
- aplicaci&oacute;n se ejecute al arrancar el sistema (si es un
- d&aelig;mon),etc.</para>
+ <para>Una vez que ha instalado una nueva aplicaci&oacute;n normalmente
+ deber&aacute;a leer toda la documentaci&oacute;n que incluya, editar los
+ ficheros de configuraci&oacute;n necesarios, asegurarse de que la
+ aplicaci&oacute;n se ejecute al arrancar el sistema (si es un
+ d&aelig;mon)etc.</para>
- <para>Obviamente los pasos exactos para configurar cada aplicaci&oacute;n
- son distintos de una a otra. De cualquier forma, si acaba de instalar
- aplicaci&oacute;n y se pregunta
- <quote>&iquest;Y ahora qu&eacute;?</quote> estos consejos puede que le
+ <para>Obviamente los pasos exactos para configurar cada aplicaci&oacute;n
+ son distintos de una a otra. De cualquier forma, si acaba de instalar
+ aplicaci&oacute;n y se pregunta
+ <quote>&iquest;Y ahora qu&eacute;?</quote> estos consejos puede que le
ayuden:</para>
<itemizedlist>
<listitem>
- <para>Use &man.pkg.info.1; para ver qu&eacute; ficheros se instalaron
- y d&oacute;nde. Por ejemplo, si instal&oacute;n
- el paquete FooPackage 1.0.0, lo siguiente:</para>
-
- <screen>&prompt.root; <userinput>pkg_info -L foopackage-1.0.0 | less</userinput></screen>
-
- <para>mostrar&aacute; los ficheros instalados por el paquete. Preste
- especial atenci&oacute;n a los ficheros en el directorio
- <filename>man/</filename>, que son las p&aacute;ginas de ayuda y los
- del directorio <filename>etc/</filename>, que contiene los ficheros
- de configuraci&oacute;n; bajo el directorio <filename>doc/</filename>
- podr&aacute; encontrar informaci&oacute;n m&aacute;s
+ <para>Use &man.pkg.info.1; para ver qu&eacute; ficheros se instalaron
+ y d&oacute;nde. Por ejemplo, si instal&oacute;n
+ el paquete Un-Package 1.0.0, lo siguiente:</para>
+
+ <screen>&prompt.root; <userinput>pkg_info -L un-package-1.0.0 | less</userinput></screen>
+
+ <para>mostrar&aacute; los ficheros instalados por el paquete. Preste
+ especial atenci&oacute;n a los ficheros en el directorio
+ <filename>man/</filename>, que son las p&aacute;ginas de ayuda y los
+ del directorio <filename>etc/</filename>, que contiene los ficheros
+ de configuraci&oacute;n; bajo el directorio <filename>doc/</filename>
+ podr&aacute; encontrar informaci&oacute;n m&aacute;s
detallada.</para>
- <para>Si no est&aacute; seguro de qu&eacute; versi&oacute;n del
- paquete ha instalado, tecl&eacute;e algo as&iacute;:</para>
+ <para>Si no est&aacute; seguro de qu&eacute; versi&oacute;n del
+ paquete ha instalado, tecl&eacute;e:</para>
- <screen>&prompt.root; <userinput>pkg_info | grep -i <replaceable>foopackage</replaceable></userinput></screen>
+ <screen>&prompt.root; <userinput>pkg_info | grep -i <replaceable>un-package</replaceable></userinput></screen>
- <para>y le ver&aacute; todos los paquetes que se llaman
- <replaceable>foopackage</replaceable>. Reemplace
- <replaceable>foopackage</replaceable> en la l&iacute;nea de
- &oacute;rdenes seg&uacute;n su caso.</para>
+ <para>y ver&aacute; todos los paquetes que se llaman
+ <replaceable>un-package</replaceable>. Reemplace
+ <replaceable>un-package</replaceable> en la l&iacute;nea de
+ &oacute;rdenes que tenga que usar en su caso.</para>
</listitem>
<listitem>
- <para>Una vez que ha identificado las p&aacute;ginas de manual
+ <para>Una vez que ha identificado las p&aacute;ginas de manual
de la aplicaci&oacute;n rev&iacute;selas mediante &man.man.1;.
- Revise tambi&eacute;n los ficheros de configuraci&oacute;n,
- as&iacute; como cualquier otro tipo de documentaci&oacute;n
- incluida.</para>
+ Revise tambi&eacute;n los ficheros de configuraci&oacute;n,
+ as&iacute; como cualquier otro tipo de documentaci&oacute;n
+ que venga con el software.</para>
</listitem>
<listitem>
<para>Si la aplicaci&oacute;n tiene sitio web vis&iacute;telo.
- Es muy posible que encuentre m&aacute;s documentaci&oacute;n,
- listas de preguntas frecuentes (FAQ), etc. Si no sabe cu&aacute;l
+ Es muy posible que encuentre m&aacute;s documentaci&oacute;n,
+ listas de preguntas frecuentes (FAQ), etc. Si no sabe cu&aacute;l
puede ser la direcci&oacute;n del sitio web examine la
salida de la orden</para>
- <screen>&prompt.root; <userinput>pkg_info <replaceable>foopackage-1.0.0</replaceable></userinput></screen>
+ <screen>&prompt.root; <userinput>pkg_info <replaceable>un-package-1.0.0</replaceable></userinput></screen>
- <para>A veces incluye una l&iacute;nea <literal>WWW:</literal>, que
- contiene la direcci&oacute;n del sitio web de la
+ <para>a veces incluye una l&iacute;nea <literal>WWW:</literal>, que
+ contiene la direcci&oacute;n del sitio web de la
aplicaci&oacute;n.</para>
</listitem>
<listitem>
- <para>Los ports que deben arrancar con el sistema (como los
+ <para>Los ports que deben arrancar con el sistema (como los
servidores de Internet) normalmente instalaran un
- <quote>script</quote> de
- ejemplo en <filename>/usr/local/etc/rc.d</filename>. Debe
- revisar este <quote>script</quote> para comprobar que todo sea
- correcto, editarlo o renombrarlo si fuera necesario. Consulte
+ <quote>script</quote> de
+ ejemplo en <filename>/usr/local/etc/rc.d</filename>. Debe
+ revisar este <quote>script</quote> para comprobar que todo sea
+ correcto, editarlo o renombrarlo si fuera necesario. Consulte
<link
- linkend="configtuning-starting-services">C&oacute;mo arrancar
+ linkend="configtuning-starting-services">C&oacute;mo arrancar
servicios</link> para m&aacute;s informaci&oacute;n.</para>
</listitem>
@@ -1261,55 +1464,54 @@ Receiving lsof_4.57D.freebsd.tar.gz (439860 bytes): 100%
<sect1 id="ports-broken">
<title>Ports que no funcionan</title>
- <para>Si encuentra un port que no funciona hay varias cosas
+ <para>Si encuentra un port que no funciona hay varias cosas
que puede hacer:</para>
<orderedlist>
<listitem>
- <para>Consulte en la
- <ulink url="http://www.freebsd.org/support.html#gnats">Base
- de datos de informes de error</ulink> si
- ya existe un parche que lo solucione pero a&uacute;n no se
- ha aplicado. Si es el caso puede aplicar el parche en su
- sistema.</para>
+ <para>Consulte en la
+ <ulink url="http://www.freebsd.org/support.html#gnats">Base
+ de datos de informes de error</ulink> si ya se ha publicado
+ un parche que lo solucione. Si es el caso puede aplicar
+ aplicar el parche en su sistema.</para>
</listitem>
<listitem>
- <para>Pida ayuda al responsable del mantenimiento
+ <para>Pida ayuda al responsable del mantenimiento
(conocido como <quote>mantainer</quote>) del port.
- Tecl&eacute;e <command>make maintainer</command> o
- consulte el
- <filename>Makefile</filename> del port si no sabe cu&aacute;l
- es la direcci&oacute;n de correo del mantainer.
- Recuerde que debe incluir el nombre y la versi&oacute;n del
- port. Env&iacute;e la l&iacute;nea que contiene
- <literal>&dollar;FreeBSD:</literal> al principio del
- <filename>Makefile</filename> del port y salida
- con el error que obtiene al intentar usar la
+ Tecl&eacute;e <command>make maintainer</command> o
+ consulte el
+ <filename>Makefile</filename> del port si no sabe cu&aacute;l
+ es la direcci&oacute;n de correo del &laquo;mantainer&raquo;.
+ Recuerde que debe incluir el nombre y la versi&oacute;n del
+ port. Env&iacute;e la l&iacute;nea que contiene
+ <literal>&dollar;&os;:</literal> al principio del
+ <filename>Makefile</filename> del port y salida
+ con el error que obtiene al intentar usar la
aplicaci&oacute;n.</para>
<note>
- <para>Algunos ports no son responsabilidad de un individuo
+ <para>Algunos ports no son responsabilidad de un individuo
sino de <ulink
- url="http://www.freebsd.org/doc/en_US.ISO-8859-1/articles/mailing-list-faq/article.html">una lista de correo.</ulink>
- Muchas, aunque no todas, tienen un aspecto parecido a
+ url="http://www.freebsd.org/doc/en_US.ISO-8859-1/articles/mailing-list-faq/article.html">una lista de correo.</ulink>
+ Muchas, aunque no todas, tienen un aspecto parecido a
<email
role="nolink">freebsd-nombredelalista@FreeBSD.org</email>.
- Por favor, t&eacute;ngalo en cuenta cuando envie ese correo
+ Por favor, t&eacute;ngalo en cuenta cuando envie ese correo
sobre el port que no funciona.</para>
- <para>Hay un caso especial: Los ports que tienen como
- <quote>mantainer</quote>
- <email role="nolink">freebsd-ports@FreeBSD.org</email> en
- realidad no son responsabilidad de nadie. Los parches
- y el soporte, caso de existir, vienen de la comunidad de
- usuarios y desarrolladores que est&aacute;n suscritos
- a la lista. Por cierto, siempre hacen falta m&aacute;s
+ <para>Hay un caso especial: Los ports que tienen como
+ <quote>mantainer</quote>
+ <email role="nolink">freebsd-ports@FreeBSD.org</email> en
+ realidad no son responsabilidad de nadie. Los parches
+ y el soporte, en caso de existir, vienen de la comunidad de
+ usuarios y desarrolladores que est&aacute;n suscritos
+ a la lista. Por cierto, siempre hacen falta m&aacute;s
voluntarios.</para>
</note>
- <para>Si no recibe respuesta utilice &man.send-pr.1; para
- enviar un informe de errores. Consulte
+ <para>Si no recibe respuesta utilice &man.send-pr.1; para
+ enviar un informe de errores. Consulte
<ulink
url="http://www.freebsd.org/doc/en_US.ISO8859-1/articles/problem-reports/article.html">C&oacute;mo escribir informes de error</ulink>)
<footnote><para>
@@ -1323,26 +1525,26 @@ Receiving lsof_4.57D.freebsd.tar.gz (439860 bytes): 100%
<listitem>
- <para><emphasis>Arreglarlo</emphasis>. El <quote>Porter's
- Handbook</quote> incluye informaci&oacute;n detallada
- sobre la infraestructura de los ports, as&iacute; que
- puede arreglar un port roto o incluso enviar su propio
+ <para><emphasis>Arreglarlo</emphasis>. El <quote>Porter's
+ Handbook</quote> incluye informaci&oacute;n detallada
+ sobre la infraestructura de los ports, as&iacute; que
+ puede arreglar un port roto o incluso enviar su propio
port.</para>
</listitem>
<listitem>
- <para>Descargue el paquete de alg&uacute;n sitio FTP. El
+ <para>Descargue el paquete de alg&uacute;n sitio FTP. El
servidor <quote>principal</quote> de la colecci&oacute;n
de paquetes est&aacute; en el
<ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/">directorio
- de paquetes</ulink> de
+ de paquetes</ulink> de
<hostid
- role="fqdn">ftp.FreeBSD.org</hostid>
- <emphasis>pero aseg&uacute;rese de mirar antes en la
+ role="fqdn">ftp.FreeBSD.org</hostid>
+ <emphasis>pero aseg&uacute;rese de mirar antes en la
r&eacute;plica m&aacute;s pr&oacute;xima</emphasis>.
- Esta es una forma de instalar aplicaciones m&aacute;s
+ Esta es una forma de instalar aplicaciones m&aacute;s
f&aacute;cil y m&aacute;s r&aacute;pida.
Instale el paquete mediante &man.pkg.add.1;.</para
</listitem>
diff --git a/es_ES.ISO8859-1/books/handbook/updating/chapter.sgml b/es_ES.ISO8859-1/books/handbook/updating/chapter.sgml
new file mode 100644
index 0000000000..696bcab527
--- /dev/null
+++ b/es_ES.ISO8859-1/books/handbook/updating/chapter.sgml
@@ -0,0 +1,676 @@
+<!--
+ The FreeBSD Documentation Project
+ $FreeBSD$
+
+i
+ The FreeBSD Spanish Documentation Project
+ %SOURCE% en_US.ISO8859-1/books/handbook/updating/chapter.sgml
+ %SRCID% 1.1
+
+
+
+-->
+
+<chapter id="updating">
+ <chapterinfo>
+ <authorgroup>
+ <author>
+ <firstname>Tom</firstname>
+ <surname>Rhodes</surname>
+ <contrib>Escrito por </contrib>
+ </author>
+ </authorgroup>
+ <authorgroup>
+ <author>
+ <firstname>Colin</firstname>
+ <surname>Percival</surname>
+ <contrib>Basado en notas facilitadas por </contrib>
+ </author>
+ </authorgroup>
+ </chapterinfo>
+
+ <title>Actualizaci&oacute;n de &os;</title>
+
+ <sect1 id="updating-synopsis">
+ <title>Synopsis</title>
+
+ <indexterm><primary>Actualizaci&oacute;n de &os;</primary></indexterm>
+ <indexterm>
+ <primary>freebsd-update</primary>
+ <see>Updating</see>
+ </indexterm>
+
+ <para>Hay un aspecto de &os; que se ha mantenido inalterable
+ desde el principio: la necesidad de utilizar aplicaciones y
+ herramientas para obtener actualizaciones mayores y menores.</para>
+
+ <para>Durante muchos a&ntilde;os los usuarios que quer&iacute;an
+ actualizar su sistema, recabar parches de seguridad y conseguir
+ actualizaciones de ports y packages sin estropear la forma de
+ entender las cosas de la Colecci&oacute;n de Ports estaban
+ obligados a utilizar
+ <application>CVSup</application>.</para>
+
+ <para><application>CVSup</application> sigue funcionando y
+ ya hay una versi&oacute;n de dicha aplicaci&oacute;n en lenguaje
+ C, pero han aparecido nuevos m&eacute;todos para conseguir
+ actualizaciones del sistema.</para>
+
+ <para>Herramientas como &man.portsnap.8; y &man.freebsd-update.8;
+ han simplificado el proceso de actualizaci&oacute;n. Estos nuevos
+ m&eacute;todos la productividad al ofrecer una interfaz m&aacute;s
+ accesible a los usuarios. Alguna de estas nuevas herramientas puede
+ ejecutarse desde &man.cron.8;, reduciendo la intervenci&oacute;n
+ manual del administrador del sistema; esto es una buena noticia
+ para quienes tienen que monitorizar cientos de
+ m&aacute;quinas.</para>
+
+ <para>En este cap&iacute;tulo se explica c&oacute;mo usar estos
+ nuevos m&eacute;todos y c&oacute;mo pueden los usuarios y los
+ administradores de sistemas aprovechar lo pr&aacute;ctico y
+ f&aacute;cil de su uso.</para>
+
+ <para>Una vez leido este cap&iacute;tulo sabr&aacute; usted:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Qu&eacute; herramientas hay disponibles para actualizar el
+ sistema y la Colecci&oacute;n de Ports.</para>
+ </listitem>
+
+ <listitem>
+ <para>C&oacute;mo usar <command>freebsd-update</command> para
+ aplicar parches de seguridad y aplicar actualizaciones
+ mayores y menores de &os;.</para>
+ </listitem>
+
+ <listitem>
+ <para>C&oacute;mo comparar el estado de un sistema instalado contra una
+ copia confiable.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Antes de leer este cap&iacute;tulo necesita:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Comprender lo b&aacute;sico de &unix; y &os;
+ (<xref linkend="basics">).</para>
+ </listitem>
+
+ <listitem>
+ <para>Tener soltura con la configuraci&oacute;n y la
+ compilaci&oacute;n del kernel
+ (<xref linkend="kernelconfig">).</para>
+ </listitem>
+
+ <listitem>
+ <para>Tener cierta familiaridad con la Colecci&oacute;n de
+ Ports y la instalaci&oacute;n de aplicaciones de terceros
+ en &os;
+ (<xref linkend="ports">).</para>
+ </listitem>
+
+ <listitem>
+ <para>Experiencia con los diversos componentes de c&oacute;digo
+ que componen &os; y c&oacute;mo usar &man.mergemaster.8;
+ (<xref linkend="cutting-edge">).</para>
+ </listitem>
+ </itemizedlist>
+ </sect1>
+
+ <sect1 id="updating-freebsdupdate">
+ <title>FreeBSD Update</title>
+
+ <para>La aplicaci&oacute;n de parches de seguridad es una parte
+ importante del mantenimiento del software. Durante mucho tiempo
+ en &os; este proceso no era precisamente de los m&aacute;s
+ sencillos. Hab&iacute;a que aplicar los parches al c&oacute;digo
+ fuente, recompilarlo para convertirlo en binarios y despu&eacute;s
+ reinstalar esos binarios.<para>
+
+ <para>Ahora todo ha cambiado, &os; ha incorporado una herramienta
+ f&aacute;cil de usar llamada <command>freebsd-update</command>. Esta
+ herramienta tiene dos funciones. La primera es permitir la
+ aplicaci&oacute;n de actualizaciones de seguridad y erratas sin
+ los pasos compilar e instalar. La segunda es poder aplicar
+ actualizaciones de versi&oacute;n mayores y menos.</para>
+
+ <note>
+ <para>Hay actualizaciones binarias para todas las arquitecturas
+ y versiones de &os; soportadas por el equipo de seguridad;
+ no obstante, ciertas caracter&iacute;sticas (como las
+ actualizaciones del sistema operativo, hacen imprescindible
+ la &uacute;ltima versi&oacute;n de &man.freebsd-update.8; y
+ &os;&nbsp;6.3 o superior. Antes de actualizar a una nueva
+ release consulte los avisos de la release actual; es posible
+ que contenga informaci&oacute;n de su inter&eacute;s. Puede
+ encontrar estos anuncios aqu&iacute;:
+ <ulink url="http://www.FreeBSD.org/releases/"></ulink>.</para>
+ </note>
+
+ <para>Si est&aacute; usando <command>crontab</command> con
+ <command>freebsd-update</command> tendr&aacute; que dejar
+ de hacerlo antes de proseguir con lo que vamos hacer. Puede
+ instalar la &uacute;ltima versi&oacute;n de
+ <command>freebsd-update</command>: descargue el tar.gz
+ de la suguiente<acronym>URL</acronym> e inst&aacute;lelo del
+ siguiente modo:</para>
+
+ <screen>&prompt.root; <userinput>gunzip -c freebsd-update-upgrade.tgz | tar xvf -</userinput>
+&prompt.root; <userinput>mv freebsd-update.sh /usr/sbin/freebsd-update</userinput>
+&prompt.root; <userinput>mv freebsd-update.conf /etc</userinput></screen>
+
+ <para>No es necesario actualizar <command>freebsd-update</command>
+ en las releases actuales.</para>
+
+ <sect2>
+ <title>El fichero de configuraci&oacute;n</title>
+
+ <para>Algunos usuarios pueden querer retocar el fichero de
+ configuraci&oacute;n para controlar mejor el proceso. Las
+ opciones disponibles est&aacute;n muy bien documentadas
+ pero hay unas pocas, que veremos a continuaci&oacute;n,
+ que quiz&aacute;s necesiten una explicaci&oacute;n un
+ poquito m&aacute;s m&aacute;s detallada.</para>
+
+ <programlisting># Components of the base system which should be kept updated.
+Components src world kernel</programlisting>
+
+ <para>Es decir:</para>
+
+ <programlisting># Componentes del sistema base que deben mantenerse actualizados.
+Components src world kernel</programlisting>
+
+
+ <para>Este par&aacute;metro controla qu&eacute; partes de &os;
+ deben actualizarse. Por omisi&oacute;n se actualiza el
+ c&oacute;digo fuente del sistema, el sistema base y el
+ kernel. Los componentes posibles son los mismos que se
+ ofrecen durante la instalaci&oacute;n, es decir, que si se
+ incluye en la lista de componentes a actualizar
+ &laquo;world/games&raquo; se actualizar&iacute;a la
+ distribuci&oacute;n &laquo;games&raquo;. Si se incluye
+ &laquo;src/bin&raquo; actualizar&aacute; el c&oacute;digo
+ fuente bajo<filename class="directory">src/bin</filename>.</para>
+
+ <para>Lo m&aacute;s razonable es dejar &eacute;ste par&aacute;metro
+ tal y como est&aacute;, puesto que modificarlo de cualquier
+ obligar&aacute; al usuario a incluir en la lista todos y
+ cada uno de los elementos que quiera actualizar, lo cual
+ puede tener consecuencias desastrosas si el c&oacute;digo
+ fuente y los binarios dejan de estar sincronizados.</para>
+
+ <programlisting># Paths which start with anything matching an entry in an IgnorePaths
+# statement will be ignored.
+IgnorePaths</programlisting>
+
+ <para>Es decir:</para>
+
+ <programlisting># Las rutas que estén detrás de IgnorePaths serán ignoradas.
+IgnorePaths</programlisting>
+
+
+ <para>Puede incluir como
+ <filename class="directory">/bin</filename> o
+ <filename class="directory">/sbin</filename> para que esos
+ directorios no se toquen durante la actualizaci&oacute;n
+ si hay en ellos cambios que haya hecho
+ usted.</para>
+
+ <programlisting># Paths which start with anything matching an entry in an UpdateIfUnmodified
+# statement will only be updated if the contents of the file have not been
+# modified by the user (unless changes are merged; see below).
+UpdateIfUnmodified /etc/ /var/ /root/ /.cshrc /.profile</programlisting>
+
+
+ <para>Es decir:</para>
+
+
+
+ <programlisting># Las rutas que comiencen por algo que esté tras UpdateIfUnmodified solamente
+# se actualizarán si el contenido del fichero no ha sido modificado
+# por el usuario (salvo que los cambios se hayan importado; siga
+# leyendo más abajo.
+UpdateIfUnmodified /etc/ /var/ /root/ /.cshrc /.profile</programlisting>
+
+
+ <para>Con esto actualizar&aacute; los ficheros de configuraci&oacute;n
+ que est&eacute;n en los directorios especificados solamente
+ si no han sido modificados. Cualquier cambio que el usuario
+ pueda hacer en ellos anular&aacute; la actualizaci&oacute;n
+ autom&aacute;tica de esos ficheros. Hay otra opci&oacute;n,
+ <literal>KeepModifiedMetadata</literal>, que le dice a
+ <command>freebsd-update</command> que guarde los cambios que
+ encuentre durante la mezcla de las versiones de los ficheros.</para>
+
+ <programlisting># When upgrading to a new &os; release, files which match MergeChanges
+# will have any local changes merged into the version from the new release.
+MergeChanges /etc/ /var/named/etc/</programlisting>
+
+
+ <para>Esto es:</para>
+
+<programlisting># Al actualizar a una nueva release de &os;, en los ficheros que aparezcan
+# tras MergeChanges se mezclarán los cambios entre la versión local y la de la nueva release.
+
+MergeChanges /etc/ /var/named/etc/</programlisting>
+
+
+ <para>Lista los directorios con ficheros de configuraci&oacute;n
+ en los que <command>freebsd-update</command> deber&iacute;a
+ intentar mezclar cambios locales con los de la nueva versi&oacute;n.
+ El proceso de mezcla consiste en una serie de parches &man.diff.1;
+ similar a ejecutar &man.mergemaster.8; pero con menos opciones: la
+ mezcla se acepta, se abre un editor o
+ <command>freebsd-update</command> se apaga. Si tiene alguna duda
+ haga una copia de seguridad de
+ <filename class="directory">/etc</filename> y acepte la mezcla.
+ Consulte el <xref linkend="cutting-edge"> si necesita m&aacute;s
+ informaci&oacute;n sobre la orden <command>mergemaster</command>.</para>
+
+ <programlisting># Directory in which to store downloaded updates and temporary
+# files used by &os; Update.
+# WorkDir /var/db/freebsd-update</programlisting>
+
+
+ <para>Esto es:</para>
+
+
+
+ <programlisting># Directorios donde descargar actualizaciones y guardar ficheros temporales necesarios para &os; Update.
+# WorkDir /var/db/freebsd-update</programlisting>
+
+
+ <para>En este directorio es donde van a parar todos los parches
+ y los ficheros temporales. Cuando el usuario est&eacute;
+ haciendo una actualizaci&oacute;n de versi&oacute;n este
+ directorio puede llegar a ocupar un gigabyte.</para>
+
+ <programlisting># When upgrading between releases, should the list of Components be
+# read strictly (StrictComponents yes) or merely as a list of components
+# which *might* be installed of which &os; Update should figure out
+# which actually are installed and upgrade those (StrictComponents no)?
+# StrictComponents no</programlisting>
+
+ <para>Es decir:</para>
+
+ <programlisting># Durante una actualizaci&oacute;n entre releases ¿Debe leerse al When upgrading between releases, should the list of Components be
+# pie de la letra (StrictComponents yes) o simplemente como una lista
+# de componentes que *podrían* instalarse y de las cuales &os; Update
+# tendrá que decidir cuáles están instaladas y actualizarlas
+# (StrictComponents no)?
+# StrictComponents no</programlisting>
+
+
+ <para>Si pone <literal>yes</literal>
+ <command>freebsd-update</command> asumir&aacute; que la lista
+ de <literal>Components</literal> est&aacute; completa y no
+ intentar&aacute; cambiar nada que no est&eacute; en ella.
+ Dicho de otro modo, <command>freebsd-update</command> intentar&aacute;
+ modificar cada fichero que aparezca en la lista
+ <literal>Components</literal>.</para>
+ </sect2>
+
+ <sect2>
+ <title>Parches de seguridad</title>
+
+ <para>Los parches de seguridad se almacenan en una
+ m&aacute;quina remota y se pueden descargar e instalar
+ mediante la siguiente orden:</para>
+
+ <screen>&prompt.root; <userinput>freebsd-update fetch</userinput>
+&prompt.root; <userinput>freebsd-update install</userinput></screen>
+
+ <para>Si se ha aplicado alg&uacute;n parche al kernel tendr&aacute;
+ que reiniciar. Si todo ha ido bien el sistema el sistema
+ ya est&aacute; parcheado y <command>freebsd-update</command>
+ puede ejecutarse como trabajo nocturno en
+ &man.cron.8;. Esto se hace con una entrada en
+ <filename>/etc/crontab</filename>:</para>
+
+ <programlisting>@daily root freebsd-update cron</programlisting>
+
+ <para>Esta entrada har&aacute; que una vez al dia se
+ ejecutar&aacute; <command>freebsd-update</command>. Al pasarle
+ el argumento <option>cron</option> a
+ <command>freebsd-update</command> solamente intentar&aacute;
+ saber si existen actualizaciones. Si hay parches disponibles
+ los descargar&aacute; autom&aacute;ticamente a disco local, pero
+ no los instalar&aacute;. El usuario
+ <username>root</username> recibir&aacute; un correo
+ electr&oacute;nico avisandole de que puede aplicarlos.</para>
+
+ <para>Si algo ha ido mal <command>freebsd-update</command>
+ puede dar marcha atr&aacute;s al &uacute;ltimo conjunto de
+ cambios si le da la siguiente orden:</para>
+
+ <screen>&prompt.root; <userinput>freebsd-update rollback</userinput></screen>
+
+ <para>Hecho esto el sistema tendr&aacute; que reiniciarse si el
+ kernel o cualquier m&oacute;dulo del kernel han sufrido
+ modificaciones. De este modo &os; podr&aacute; cargar en memoria
+ los nuevos binarios.</para>
+
+ <note>
+ <para><command>freebsd-update</command> solamente funciona con
+ el kernel <filename>GENERIC</filename>. Si hace cualquier cambio
+ a <filename>GENERIC</filename> o utiliza un kernel personalizado
+ <command>freebsd-update</command> no podr&aacute; cumplir su
+ misi&oacute;n: en el primer caso fallar&aacute; y en el segundo
+ le mostrar&aacute; un error.</para>
+ </note>
+ </sect2>
+
+ <sect2>
+ <title>Actualizaciones mayores y menores</title>
+
+ <para>Este proceso borrar&aacute; todos los ficheros de
+ objeto viejos y las librer&iacute;as que har&aacute;n
+ fallar la mayor&iacute;a de las aplicaciones de terceros
+ que tenga en el sistema. Le recomendamos que borre y
+ reinstale todos sus ports o los actualice con
+ <filename role="package">ports-mgmt/portupgrade</filename>.
+ Tambi&eacute;n le recomendamos que ejecute una compilaci&oacute;n
+ de prueba con la siguiente orden:</para>
+
+ <screen>&prompt.root; <userinput>portupgrade -af</userinput></screen>
+
+ <para>De esta forma se asegura de uqe todo se reinstalar&aacute;
+ correctamente. Recuerde que si asigna el valor
+ <literal>yes</literal> a la variable de entorno
+ <makevar>BATCH</makevar> responder&aacute; usted
+ que <emphasis>s&iacute;</emphasis> a todas las preguntas
+ que puedan surgir y por tanto requerir intervenci&oacute;n
+ manual durante el proceso de compilaci&oacute;n.</para>
+
+ <para>Las actualizaciones a versiones mayores o menores pueden
+ ejecutarse facilitando a <command>freebsd-update</command> la
+ release a la que queremos llevar al sistema; veamos un ejemplo
+ en el que vamos a actualizar a
+ &os;&nbsp;6.3:</para>
+
+ <screen>&prompt.root; <userinput>freebsd-update -r 6.3-RELEASE upgrade</userinput></screen>
+
+ <para>Una vez que la orden ha sido recibida
+ <command>freebsd-update</command> lee el fichero de
+ configuraci&oacute;n y la del sistema para recopilar
+ toda la informaci&oacute;n necesaria para actualizar el
+ sistema. Se le mostrar&aacute; una pantalla con una
+ lista con los componentes detectados y tam&eacute;n con
+ los que no han podido serlo. Veamos un ejemplo:</para>
+
+ <screen>Looking up update.FreeBSD.org mirrors... 1 mirrors found.
+Fetching metadata signature for 6.3-BETA1 from update1.FreeBSD.org... done.
+Fetching metadata index... done.
+Inspecting system... done.
+
+The following components of FreeBSD seem to be installed:
+kernel/smp src/base src/bin src/contrib src/crypto src/etc src/games
+src/gnu src/include src/krb5 src/lib src/libexec src/release src/rescue
+src/sbin src/secure src/share src/sys src/tools src/ubin src/usbin
+world/base world/info world/lib32 world/manpages
+
+The following components of FreeBSD do not seem to be installed:
+kernel/generic world/catpages world/dict world/doc world/games
+world/proflibs
+
+Does this look reasonable (y/n)? y</screen>
+
+
+
+ <para>Lo que m&aacute;s o menos vendr&iacute;a a ser:</para>
+
+
+
+ <screen>Buscando réplicas de update.FreeBSD.org ... encontrada 1 réplica.
+Descargando firma de metadatos para 6.3-BETA1 from update1.&os;.org... hecho.
+Descargando índice de metadatos... hecho.
+Inspección del sistema... hecho.
+
+Parece que están instalados los siguientes componentes de &os;:
+kernel/smp src/base src/bin src/contrib src/crypto src/etc src/games
+src/gnu src/include src/krb5 src/lib src/libexec src/release src/rescue
+src/sbin src/secure src/share src/sys src/tools src/ubin src/usbin
+world/base world/info world/lib32 world/manpages
+
+Parece que no están instalados los siguientes componentes:
+kernel/generic world/catpages world/dict world/doc world/games
+world/proflibs
+
+¿Está de acuerdo? (s/n) s</screen>
+
+
+ <para>A partir de aqu&iacute; <command>freebsd-update</command>
+ intentar&aacute; descargar todos los ficheros necesarios para
+ la actualizaci&oacute;n del sistema. En algunos casos le
+ har&aacute; preguntas al usuario sobre qu&eacute; o c&oacute;mo
+ instalar.</para>
+
+ <para>Una vez que todos los parches han sido descargados al
+ disco duro local hay que aplicarlos, es decir,
+ instalarlos. Este proceso puede llevar tiempo dependiendo
+ de la velocidad y la carga de trabajo que est&eacute;
+ sacando adelante la m&aacute;quina. Los ficheros de
+ configuraci&oacute;n tendr&aacute;n que mezclarse: esta
+ parte del proceso requiere intervenci&oacute;n del usuario
+ cuando un fichero tenga que ser mezclado, o cuando aparezca
+ un editor en pantalla para que haga una mezcla manual. Los
+ resultados de cada mezcla que concluya satisfactoriamente se
+ ir&aacute;n mostrando al usuario a medida que el proceso vaya
+ avanzando. Si falla o se ignora alguna mezcla el proceso
+ se interrumpir&aacute;. Le recomendamos que haga una copia
+ de seguridad de <filename class="directory">/etc</filename>
+ y mezcle manualmente los ficheros importantes (como
+ <filename>master.passwd</filename> o
+ or <filename>group</filename>) cuando acabe con la
+ actualizaci&oacute;n.</para>
+
+ <note>
+ <para>En este punto el sistema sigue sin haber sufrido
+ ning&uacute;n cambio, pues todo el parcheo y las
+ mezclas est&aacute;n teniendo lugar en un directorio.
+ Cuando todos los parches se hayan aplicado satisfactoriamente,
+ todos los ficheros de configuraci&oacute;n hayan sido
+ mezclados y parezca -desde todos los puntos de vista- que
+ el proceso va del todo bien, los cambios tendr&aacute;n
+ que ser aplicados por el usuario.</para>
+ </note>
+
+ <para>Cuando el proceso est&eacute; completo la actualizaci&oacute;n
+ se aplicar&aacute; al sistema con la siguiente orden:</para>
+
+ <screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
+
+ <para>El kernel y los m&oacute;dulos del kernel se parchean en
+ primer lugar. Tras esto hay que reiniciar la m&aacute;quina. Debe
+ usar la siguiente orden para reiniciar la m&aacute;quina
+ y poder as&iacute; cargar en memoria el nuevo kernel:</para>
+
+ <screen>&prompt.root; <userinput>shutdown -r now</userinput></screen>
+
+ <para>Una vez que haya reiniciado el sistema
+ arranque de nuevo <command>freebsd-update</command>. El
+ estado del proceso se ha guardado, as&iacute; que
+ <command>freebsd-update</command> no empezar&aacute; desde
+ cero, pero s&iacute; que borrar&aacute; todas las bibliotecas
+ compartidas y ficheros objeto que ya no sean necesarios.
+ Introduzca la siguiente orden:</para>
+
+ <screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
+
+ <note>
+ <para>Dependiendo de si hay n&uacute;meros de versi&oacute;n de
+ bibliotecas que hayan subido habr&aacute; dos o tres pasos
+ instalaci&oacute;n.</para>
+ </note>
+
+ <para>Es necesario recompilar y reinstalar todo el software
+ de terceros. La raz&oacute;n de esto es que el software
+ que tiene instalado puede depender de bibliotecas que van
+ a desaparecer durante el proceso de actualizaci&oacute;n.
+ Puede utilizar la orden
+ <filename role="package">ports-mgmt/portupgrade</filename>
+ para automatizar el proceso. Puede usar las siguientes
+ &oacute;rdenes para comenzar el proceso:</para>
+
+ <screen>&prompt.root; <userinput>portupgrade -f ruby</userinput>
+&prompt.root; <userinput>rm /var/db/pkg/pkgdb.db</userinput>
+&prompt.root; <userinput>portupgrade -f ruby18-bdb</userinput>
+&prompt.root; <userinput>rm /var/db/pkg/pkgdb.db /usr/ports/INDEX-*.db</userinput>
+&prompt.root; <userinput>portupgrade -af</userinput></screen>
+
+ <para>Una vez terminado esto solamente queda usar una vez
+ m&aacute;s a <command>freebsd-update</command>. Utilice
+ la siguiente orden para concluir el proceso de
+ actualizaci&oacute;n:</para>
+
+ <screen>&prompt.root; <userinput>freebsd-update install</userinput></screen>
+
+ <para>Reinicie la m&aacute;quina y ver&aacute; la nueva
+ versi&oacute;n de &os;. El proceso ha terminado.</para>
+
+ </sect2>
+
+ <sect2>
+ <title>Comparaci&oacute;n de estado del sistema</title>
+
+ <para>La orden <command>freebsd-update</command> puede
+ utilizarse para comprobar el estado de una versi&oacute;n
+ instalada de &os; contra una copia confiable. Esta
+ opci&oacute;n compara la versi&oacute;n instalada de las
+ utilidades del sistema, bibliotecas y ficheros de
+ configuraci&oacute;n. Para ejecutar la comparaci&oacute;n
+ ejecute la siguiente orden:</para>
+
+ <screen>&prompt.root; <userinput>freebsd-update IDS &gt;&gt; outfile.ids</userinput></screen>
+
+ <warning>
+ <para>Aunque el nombre de la orden sea
+ <acronym>IDS</acronym> bajo ning&uacute;n concepto puede
+ utilizarse como sustituto de un sistema de detecci&oacute;n
+ de intrusos <footnote><para><acronym>IDS</acronym> son las
+ siglas de <literal>sistema de detecci&oacute;n
+ de intrusos</literal> en ingl&eacute;s: <literal>Intrusion
+ Detection System</literal>.</para></footnote> como
+ <filename role="package">security/snort</filename>. Dado que
+ <command>freebsd-update</command> almacena datos en disco las
+ posibilidades de manipulaci&oacute;n son evidentes. Puede
+ reducirlas mediante <varname>kern.securelevel</varname> y
+ guardando los datos de <command>freebsd-update</command>
+ en un medio de solo lectura mientras no est&eacute;n en
+ uso. O puede hacer algo mejor a&uacute;n, comparar el
+ sistema con el contenido de un disco seguro, como un
+ <acronym>DVD</acronym> o un dispositivo
+ <acronym>USB</acronym> almacenado en sitio seguro.</para>
+ </warning>
+
+ <para>El sistema se va a revisar y se generar&aacute; una lista
+ de ficheros con sus respectivos valores hash
+ &man.sha256.1;. Estos valores son los de la release y de la
+ versi&oacute;n instalada. La salida se env&iacute;a al fichero
+ <filename>outfile.ids</filename> porque pasa a una velocidad
+ muy superior a la necesaria para poder leer el texto y muy
+ r&aacute;pidamente sobrepasa el tama&ntilde;o del b&uacute;fer
+ de la consola.</para>
+
+ <para>Las l&iacute;neas del fichero son adem&aacute;s extremadamente
+ largas, pero el formato de salida puede manejarse muy
+ f&aacute;cilmente. Por ejemplo, si quiere obtener una lista
+ de todos los ficheros diferentes de lo que aparece en la release
+ utilice la siguiente orden:</para>
+
+ <screen>&prompt.root; <userinput>cat update.ids | awk '{ print $1 }' | more</userinput>
+/etc/master.passwd
+/etc/motd
+/etc/passwd
+/etc/pf.conf</screen>
+
+ <para>La salida del ejemplo no est&aacute; completa, hay
+ muchos otros ficheros que diferir&aacute;n. Algunos de
+ estos ficheros tienen cambios normales, el fichero
+ <filename>/etc/passwd</filename> es distinto porque se han
+ a&ntilde;adido usuarios nuevos. En ciertos casos puede
+ haber otros ficheros distintos, como m&oacute;dulos del
+ kernel, que ser&aacute;n diferentes porque
+ <command>freebsd-update</command> los habr&aacute;
+ actualizado. Si quiere excluir ficheros o directorios
+ espec&iacute;ficos use la opci&oacute;n
+ <literal>IDSIgnorePaths</literal> en
+ <filename>/etc/freebsd-update.conf</filename>.</para>
+
+ <para>Este sistema puede utilizarse como parte de un
+ m&eacute;todo muy elaborado de actualizaci&oacute;n
+ aparte de lo que aqu&iacute; se ha explicado.</para>
+ </sect2>
+ </sect1>
+
+ <sect1 id="updating-portsnap">
+ <title>Portsnap: Una herramienta de actualizaci&oacute;n de la
+ Colecci&oacute;n de Ports</title>
+
+ <para>El sistema base de &os; tiene una herramienta para la
+ la actualizaci&oacute;n de la Colecci&oacute;n de Ports:
+ &man.portsnap.8;. Una vez ejecutada se conectar&aacute; con
+ un servidor remoto, verificar&aacute; la firma de seguridad y
+ descargar&aacute; una copia nueva del &aacute;rbol de ports.
+ La firma segura se usa para verificar la integridad de todos
+ los ficheros que se descargan para asegurarse de que no han sido
+ modificados desde que fueron generados. Para descargar la
+ &uacute;ltima versi&oacute;n de los ficheros que componen la
+ Colecci&oacute;n de Ports use la siguiente orden:</para>
+
+ <screen>&prompt.root; <userinput>portsnap fetch</userinput>
+Looking up portsnap.FreeBSD.org mirrors... 3 mirrors found.
+Fetching snapshot tag from portsnap1.FreeBSD.org... done.
+Fetching snapshot metadata... done.
+Updating from Wed Aug 6 18:00:22 EDT 2008 to Sat Aug 30 20:24:11 EDT 2008.
+Fetching 3 metadata patches.. done.
+Applying metadata patches... done.
+Fetching 3 metadata files... done.
+Fetching 90 patches.....10....20....30....40....50....60....70....80....90. done.
+Applying patches... done.
+Fetching 133 new ports or files... done.</screen>
+
+ <!--
+ No he traducido esta "captura de pantalla" porque el párrafo siguiente
+ la explica. No podemos meter en una cápsula al usuario y que no vea
+ que el sistema en realidad está en inglés.
+ carvay@FreeBSD.org Noviembre 2008
+ -->
+
+
+ <para>Este ejemplo muestra c&oacute;mo &man.portsnap.8; ha encontrado
+ y verificado varios parches para los ports del sistema. Indica
+ tambi&eacute;n que la aplicaci&oacute;n ya hab&iacute;a sido
+ ejecutada. Si hubiera sido una primera ejecuci&oacute;n
+ sencillamente se hubiera descargado la colecci&oacute;n.</para>
+
+ <para>Una vez que &man.portsnap.8; ha obtenido los nuevos
+ elementos de la Colecci&oacute;n de Ports junto con los nuevos
+ parches disponibles, y una vez que todos ellos han pasado la
+ verificaci&oacute;n en local, ya podemos pasar a la instalaci&oacute;n,
+ que efectuaremos con la siguiente orden:</para>
+
+
+ <para>Los ficheros actualizados pueden
+ ya instalarse tecleando lo siguiente:</para>
+
+ <screen>&prompt.root; <userinput>portsnap extract</userinput>
+/usr/ports/.cvsignore
+/usr/ports/CHANGES
+/usr/ports/COPYRIGHT
+/usr/ports/GIDs
+/usr/ports/KNOBS
+/usr/ports/LEGAL
+/usr/ports/MOVED
+/usr/ports/Makefile
+/usr/ports/Mk/bsd.apache.mk
+/usr/ports/Mk/bsd.autotools.mk
+/usr/ports/Mk/bsd.cmake.mk
+<replaceable>...</replaceable></screen>
+
+ <para>El proceso ha concluido y ya puede instalar o actualizar
+ aplicaciones desde su flamante Colecci&oacute;n de Ports.</para>
+ </sect1>
+</chapter>