[ anterior ] [ Contenidos ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ siguiente ]


APT HOWTO (Obsolete Documentation)
Capítulo 5 - Obteniendo información de los paquetes.


Existen algunas interfaces para el APT que lo hacen más fácil de utilizar.

Pero nuestro objetivo aquí es aprender a manejar APT puro. Así que, ¿cómo podría saber el nombre de un paquete que quiere instalar?

Tenemos numerosos recursos para realizar esa tarea. Empezaremos con apt-cache. Este programa es utilizado por APT para mantener su base de datos. Nosotros sólo veremos un poco de sus aplicaciones.


5.1 Descubriendo nombres de paquetes

Por ejemplo, supongamos que usted quiere revivir la gloria de la época dorada del Atari 2600. Quiere utilizar APT para instalar un emulador de Atari, y después bajar algunos juegos, puede hacer lo siguiente:

     # apt-cache search atari
     atari-fdisk-cross - Partition editor for Atari (running on non-Atari)
     circuslinux - The clowns are trying to pop balloons to score points!
     madbomber - A Kaboom! clone
     tcs - Character set translator.
     atari800 - Atari emulator for svgalib/X/curses
     stella - Atari 2600 Emulator for X windows
     xmess-x - X binaries for Multi-Emulator Super System

Hemos encontrado muchos paquetes relacionados con lo que estamos buscando. Para obtener mayor información de un paquete específico, hacemos lo siguiente:

     # apt-cache show stella
     Package: stella
     Priority: extra
     Section: non-free/otherosfs
     Installed-Size: 830
     Maintainer: Tom Lear <tom@trap.mtview.ca.us>
     Architecture: i386
     version: 1.1-2
     Depends: libc6 (>= 2.1), libstdc++2.10, xlib6g (>= 3.3.5-1)
     Filename: dists/potato/non-free/binary-i386/otherosfs/stella_1.1-2.deb
     Size: 483430
     MD5sum: 11b3e86a41a60fa1c4b334dd96c1d4b5
     Description: Atari 2600 Emulator for X windows
      Stella is a portable emulator of the old Atari 2600 video-game console
      written in C++. You can play most Atari 2600 games with it. The latest
      news, code and binaries for Stella can be found at:
      http://www4.ncsu.edu/~bwmott/2600

En este desplegado tiene muchos detalles sobre paquete seleccionado así como su descripcion. Si el paquete estuviera instalado y hubiera una versión más reciente, vería la información de las dos versiones, por ejemplo:

     # apt-cache show lilo
     Package: lilo
     Priority: important
     Section: base
     Installed-Size: 271
     Maintainer: Russell Coker <russell@coker.com.au>
     Architecture: i386
     version: 1:21.7-3
     Depends: libc6 (>= 2.2.1-2), debconf (>=0.2.26), logrotate
     Suggests: lilo-doc
     Conflicts: manpages (<<1.29-3)
     Filename: pool/main/l/lilo/lilo_21.7-3_i386.deb
     Size: 143052
     MD5sum: 63fe29b5317fe34ed8ec3ae955f8270e
     Description: LInux LOader - The Classic OS loader can load Linux and others
      This Package contains lilo (the installer) and boot-record-images to
      install Linux, OS/2, DOS and generic Boot Sectors of other OSes.
      .
      You can use Lilo to manage your Master Boot Record (with a simple text screen)
      or call Lilo from other Boot-Loaders to jump-start the Linux kernel.
     
     Package: lilo
     Status: install ok installed
     Priority: important
     Section: base
     Installed-Size: 190
     Maintainer: Vincent Renardias <vincent@debian.org>
     version: 1:21.4.3-2
     Depends: libc6 (>= 2.1.2)
     Recommends: mbr
     Suggests: lilo-doc
     Description: LInux LOader - The Classic OS loader can load Linux and others
      This Package contains lilo (the installer) and boot-record-images to
      install Linux, OS/2, DOS and generic Boot Sectors of other OSes.
      .
      You can use Lilo to manage your Master Boot Record (with a simple text screen)
      or call Lilo from other Boot-Loaders to jump-start the Linux kernel.

Observe que el primero en la lista es el paquete disponible y el segundo es el instalado. Para mayor información sobre un paquete puede utilizar:

     # apt-cache showpkg penguin-command
     Package: penguin-command
     versions:
     1.4.5-1(/var/lib/apt/lists/download.sourceforge.net_debian_dists_unstable_main_b
     inary-i386_Packages)(/var/lib/dpkg/status)
     
     Reverse Depends:
     Dependencies:
     1.4.5-1 - libc6 (2 2.2.1-2) libpng2 (0 (null)) libsdl-mixer1.1 (2 1.1.0)
      libsdl1.1 (0 (null)) zlib1g (2 1:1.1.3)
     Provides:
     1.4.5-1 -
     Reverse Provides:

Y sólo para saber de que paquetes depende:

     [root]@[/] # apt-cache depends penguin-command
     penguin-command
       Depends: libc6
       Depends: libpng2
       Depends: libsdl-mixer1.1
       Depends: libsdl1.1
       Depends: zlib1g

En resumen, tenemos una gran variedad de armas que podemos utilizar para averiguar el nombre del paquete que queramos.


5.2 Utilizando dpkg para conocer los nombres de paquetes

Uno de los caminos para conocer el nombre de un paquete es saber el nombre de un archivo importante que sea contenido por ese paquete. Por ejemplo, para conocer el paquete que ofrece ciertos archivos ".h" puede ejecutar:

     # dpkg -S stdio.h
     libc6-dev: /usr/include/stdio.h
     libc6-dev: /usr/include/bits/stdio.h
     perl: /usr/lib/perl/5.6.0/CORE/nostdio.h

o:

     # dpkg -S /usr/include/stdio.h
     libc6-dev: /usr/include/stdio.h

Para averiguar los nombres de paquetes instalados en su sistema, lo cual es útil por ejemplo, si planea limpiar su disco duro, ejecuta:

     # dpkg -l | grep mozilla
     ii  mozilla-browse 0.9.6-7        Mozilla Web Browser

El problema con este comando radica en que puede "truncar" el nombre del programa. En el ejemplo anterior, el nombre completo del paquete es mozilla-browser. Para arreglar esto, puede utilizar las variables de ambiente COLUMNS de este modo:

     [kov]@[couve] $ COLUMNS=132 dpkg -l | grep mozilla
     ii  mozilla-browser             0.9.6-7                     Mozilla Web Browser - core and browser

O la descripción del paquete, o parte de ella para encontrar el nombre completo. Como se muestra a continuación:

     # apt-cache search "Mozilla Web Browser"
     mozilla-browser - Mozilla Web Browser

5.3 Cómo instalar programas "en demanda"

Está compilando un programa, y de repente, boom!, hay un error porque necesita cierto archivo ".h" que no tiene. El programa auto-apt puede salvarlo de esas situaciones. Le pregunta si instala ciertos programas que son requeridos, deteniendo los procesos relevantes y continuando una vez que el paquete es instalado.

Lo que hace, es básicamente ejecutar:

     # auto-apt run command

Dónde "command" es el comando que al ser ejecutado, necesita ciertos archivos, por ejemplo:

     # auto-apt run ./configure

Le preguntará entonces si desea instalar los paquetes necesarios y llamará automáticamente a apt-get. Si está en modo gráfico, una interfáz gráfica remplazará la interfáz de texto que aparece normalmente.

Auto-apt mantiene las bases de datos que necesitan estar al día para lograr que esto funcione. Esto se realiza con los comandos auto-apt update, auto-apt updatedb y auto-apt update-local.


5.4 Cómo descubrir a que paquete peretenece un archivo.

Si usted quiere instalar un paquete, y no puede saber como se llama al buscarlo con apt-cache, pero sabe el nombre de un archivo que pertenece al paquete, entonces puede utilizar apt-file para encontrar el nombre del paquete que busca. Esto se hace de la siguiente manera:

     $ apt-file search filename

Trabaja de manera similar a dpkg -S, pero tambien le muestra paquetes sin instalar que contengan ese archivo. Puede también ser utilizado para saber que paquetes contiene archivos de inclusión para la compilación de ciertos programas, aunque auto-apt es una mejor solución para estos casos, consulte Cómo instalar programas "en demanda", Sección 5.3.

También puede enlistar el contenido de un paquete ejecutando:

     $ apt-file list packagename

apt-file mantiene una base de datos sobre que archivos tiene cada paquete, tal como auto-apt lo hace y necesita estar al día. Esto se hace asi:

     # apt-file update

Por omisión, apt-file utiliza la misma base de datos que auto-apt utiliza, consulte Cómo instalar programas "en demanda", Sección 5.3.


5.5 Cómo mantenerse informado de los cambios en los paquetes.

Cada paquete instala en su directorio de documentación (/usr/share/doc/packagename) un archivo llamado changelog.Debian.gz el cual contiene una lista de cambios realizados al paquete desde la última versión. Puede leer estos archivos con zless, por ejemplo, pero no es muy fácil estar buscando estos archivos después de una instalación de un sistema completo.

Existe una forma de automatizar esta tarea por medio de una herramienta llamada apt-listchanges. Para iniciar, primero necesita instalar el paquete apt-listchanges. Durante la instalación del paquete, Debconf lo configurará. Conteste a las preguntas sobre la configuración como desee.

La opción: "Apt-listchanges deberá ser automáticamente ejecutada por APT" esto es muy útil porque muestra los cambios que han sido hechos al paquete que está siendo instalado por apt durante una actualización y le deja analizarlos antes de continuar. La opción: "Debe apt-listchanges preguntar por autorización después de mostrar los cambios" es útil porque le pregunta si desea continuar la instalación después de leer los cambios. Si decide no continuar con la instalación apt-listchanges regresará con un error y apt abortará la instalación.

Después que apt-listchanges sea instalado, tan pronto como los paquetes sean descargados por apt, mostrará las listas de los cambios realizados a estos paquetes antes de instalarlos.


[ anterior ] [ Contenidos ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ siguiente ]


APT HOWTO (Obsolete Documentation)

1.8.4 - April 2003

Gustavo Noronha Silva kov@debian.org
Hugo Mora h.mora@melix.com.mx