4.4. Uso del sistema de paquetes

Texto de Chern Lee.

4.4.1. Instalar un paquete

Puede usar pkg_add(1) para instalar un paquete de software bajo FreeBSD desde un fichero local o desde un servidor remoto vía red.

Ejemplo 4-1. Descarga de un paquete manualmente e instalación en nuestro sistema

# ftp -a ftp2.FreeBSD.org
Connected to ftp2.FreeBSD.org.
220 ftp2.FreeBSD.org FTP server (Version 6.00LS) ready.
331 Guest login ok, send your email address as password.
230-
230-     This machine is in Vienna, VA, USA, hosted by Verio.
230-         Questions? E-mail freebsd@vienna.verio.net.
230-
230-
230 Guest login ok, access restrictions apply.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd /pub/FreeBSD/ports/packages/sysutils/
250 CWD command successful.
ftp> get lsof-4.56.4.tgz
local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
200 PORT command successful.
150 Opening BINARY mode data connection for 'lsof-4.56.4.tgz' (92375 bytes).
100% |**************************************************| 92375       00:00 ETA
226 Transfer complete.
92375 bytes received in 5.60 seconds (16.11 KB/s)
ftp> exit
# pkg_add lsof-4.56.4.tgz

Si no tiene una fuente local de paquetes (por ejemplo un CDROM de FreeBSD) probablemente la mejor opción sea utilizar el argumento -r de pkg_add(1), que hará que determine automáticamente el formato del objeto correcto, para posteriormente descargarlo e instalarlo desde un FTP.

# pkg_add -r lsof

En el ejemplo anterior el paquete correspondiente se descargará e instalará sin intervención del usuario. Si desea utilizar una réplica (“mirror”) de paquetes que no sea el sitio principal de FreeBSD solo tiene configurar la variable de entorno PACKAGESITE correctamente para sobreescribir el sitio predefinido. pkg_add(1) utiliza fetch(1) para descargar los ficheros, tomando como referencia varias variables de entorno, como FTP_PASSIVE_MODE, FTP_PROXY y FTP_PASSWORD. Quizás deba modificar alguna de estas si se encuentra detrás de un cortafuegos, o usa un proxy FTP/HTTP. Consulte fetch(3) si quiere ver una lista completa. Observe también que en el ejemplo anterior usamos lsof en vez de lsof-4.56.4. Cuando usamos la opción de descarga remota no es necesario especificar la versión del paquete. pkg_add(1) descargará automáticamente la última versión de la aplicación.

Los paquetes se distribuyen en formato .tgz y .tbz. Puede encontrarlos en ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/ o bien en el CDROM de FreeBSD. Cada CD de la distribución de 4 CD (y del PowerPak, etc) contiene los paquetes en el directorio /packages. El orden de dicho directorio es similar al árbol de /usr/ports. Cada categoría tiene su subdirectorio, y todos los paquetes están en el directorio All.

Nota: pkg_add(1) descargará la última versión de su aplicación si usa FreeBSD-CURRENT o FreeBSD-STABLE, pero si usa una versión -RELEASE, descargará la versión del paquete que se construyó con dicha versión. Es posible configurar esto sobreescribiendo la variable de entorno PACKAGESITE.

Los ficheros de paquetes se destribuyen en formatos .tgz y .tbz. Puede encontrarlos en ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/, o en la distribució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 /packages. La estructura de los paquetes es similar a la del arbol de /usr/ports. Cada categoría tiene su propio directorio, y todos los paquetes se pueden encontrar dentro del directorio All.

La estructura del directorio de paquetes es idéntica a la de los ports, y funcionan como un todo para conformar el sistema de paquetes/ports.

4.4.2. Eliminar un paquete

Para eliminar un paquete instalado en el sistema, utilice pkg_delete(1).

# pkg_delete xchat-1.7.1

4.4.3. Miscelánea

Toda la información de los paquetes se guarda en /var/db/pkg. En él encontrará la lista completa de paquetes instalados y las descripciones de los mismos.

Éste y otros documentos pueden obtenerse en ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Para preguntas acerca de FreeBSD, leer la documentación antes de contactar con la lista <questions@FreeBSD.org>.
Para preguntas acerca de esta documentación, e-mail a <doc@FreeBSD.org>.