Traducción(es): English - español - Français - Italiano - 한국어(Korean)
El sistema de gestión de paquetes agrupa todo el software de un sistema Debian conjuntamente. Debian usa "paquetes" con nombre para cada pieza de software, agrupaciones de ficheros que proporcionan ficheros a instalar en el sistema, las dependencias entre paquetes y la configuración del software. Esos paquetes pueden instalarse o eliminarse (salvo, claro está, que sea requisito de otro paquete) a placer. De hecho, la mayor parte del proceso de instalación consiste en instalar los paquétes más básicos que permitan a Debian funcionar.
La gestión de paquetes Debian consiste en varias capas. En las capas inferiores, las que mayormente no querrá tocar, están hechas de dpkg y programas asociados. Por encima de ello están las herramientas Apt y apt-gettambién como las herramienta más nueva Aptitude. La página de herramientas de gestión de paquetes tiene breves descripciones de ellas y de otras herramientas que trabajan con los ficheros DebianPackage.
Todas esas herramientas quedan documentadas por una ManPage, así que si tiene preguntas , debería consultarlas (ej: 'man apt'). Si es ud. novato, hay ciertos comandos que se sabe que son los más útiles para el uso diario. Se agrupan generalmente como:
Frontales a pantalla completa
Estos son tanto los basados en consola (ncurses) como los gŕaficos (GUI). Hay cantidad de alternativas, similares en algunos aspectos, diferentes en otros. Para usuarios de distribuciones Linux basadas en RPM, análogos incluyen RedCarpet y Up2Date.
Aptitude puede invocarse a pantalla completa en modo consola (ncurses) o modo CLI, y es un frontal amistoso hacia apt.
DSelect es un frontal antiguo hacia apt. Ya no se recomienda.
Synaptic es otro frontal basado en GUI.
Apper es otro frontal más GUI (basado en escritorio KDE). El frontal se basa en packagekit.
Frontales de línea de órdenes
Generalmente, las herramientas de linea de órdenes integran cantidad de operaciones (gestión de listas de paquetes, recuperación de paquetes, instalación de paquetes, configuración de paquetes) en una sola orden más argumentos. La herramienta primaria de linea de órdenes es aptitude. apt-get realiza un propósito similar y aunque ya n es más la herramienta primaria recomendad algunos aun la usan. Aquí algunas de las invocaciones típicas:
aptitude update (o apt-get update, véase apt-get) para actualizar la báse de datos de paquetes interna de apt.
aptitude safe-upgrade (o apt-get -u upgrade) para actualizar a todos los paquetes actualmente instalados.
aptitude search jabber (o apt-cache search jabber) para encontrar un programa que de acceso al sistema de mensajería instantánea jabber.
aptitude show gabber (o apt-cache show gabber) para mostrar más info sobre el cliente jabber de GNOME.
aptitude install gabber (o apt-get install gabber) para instalar el paquete.
aptitude remove gabber (o apt-get remove gabber) para eliminarlo de nuevo.
aptitude search '~i' para mostrar paquetes instalados.
"Ayuda de Apt":http://www.spack.org/wiki/UsingApt
También puede usar Wajig(en ingles), para una interfaz de línea de ordenes unificada y más lógica para todas las funciones de gestión de paquetes.
Herramientas de bajo nivel
Ampliamente dpkg y amigos, esas órdenes que ejecutan una sola tarea. Son en mayoría comparables directamente con la orden de Redhat "rpm".
dpkg-reconfigure locales para reconfigurar Locales
dpkg-reconfigure exim para reconfigurar el agente de transferencia de correo exim. Esta órden no es actualmente parte de dpkg; es provista por debconf.
dpkg, (véase DPkg) invocada con varios argumentos de línea de órdenes. Si ud. encuentra un lugar para descargar paquetes Debian que no está accesible vía apt, puede descargar e instalar los paquetes directamente. Note que este método no solucionará automágicamente las dependencias entre paquetes,etc, por tanto use apt o dselect si es posible.
dpkg --listfiles textutils para listar todos los ficheros proporcionados por el paquete textutils. Esto solo funciona para paquetes que y estén instalados. Puede ser útil para encontrar en que forma se ha provisto la documentación de un paquete.
dpkg -S /path/to/some/file para encontrar a cual paquete pertenece un fichero.
deborphan puede ser útil pero ya no se requiere para recuperar espacio porque apt ahora desinstala automáticamente paquetes innecesarios que fueron solo instalados para satisfacer una dependencia de un paquete que fue específicamente pedido para instalar pero que desde entonces ya habían sido eliminados. Le da una lista de paquetes de librerías que ya no más tienen paquetes de nivel superior dependiendo de ellas.
Contenidos de un fichero de Debian
Para ver los contenidos de paquetes de Debian en los repositorios Debian, tanto si están instalados como si no lo están, instale el paquete apt-file e introduzca:
$ apt-file update $ apt-file list foo
Para conseguir los contenidos del fichero "abc.deb", tiene que introducir:
$ dpkg-deb -c abc.deb
Reconfigurar debconf
Para reconfigurar debconf, tal que le informe de la mayoría de los cambios de los nuevos paquetes, tiene que introducir (como Root):
# dpkg-reconfigure debconf
Escoja el "medio" aquí
Gestión de paquetes con apt-get y dpkg
Lista de recursos de paquetes para APT
El fichero /etc/apt/sources.list es el fichero de definición de las fuentes para apt. Para más información sobre este fichero escriba:
$ man 5 sources.list
Recuperar una nueva lista de paquetes
Para recuperar una nueva lista de todos los paquetes desde las sources.list introduzca:
# aptitude update
o el equivalente:
# apt-get update
Esta orden comprueba si hay nuevos ficheros de publicaciones en los servidores dados. Afortunadamente la orden suficientemente lista para comprobar si el fichero de publicaciones ha cambiado tras la última actualización.
Actualizar todos los archivos
Para hacer una actualización de los paquetes modificados, introduzca la línea:
# aptitude safe-upgrade
Si quiere hacer esto desde cron debería considerar usar el paquete cron-apt.
El método viejo basado en apt-get es:
# apt-get upgrade -u
La marcha adicional -u muestra una lista de paquetes actualizados también. Si quiere ejecutar la actualización como un tarea programada de cron, debería utilizar las marcas -dy. Con estas marcas los nuevos paquetes se descargarán pero no se instalarán. Puede instalarlos después escribiendo: apt-get update -u.
Actualización de todos los ficheros de la distribución:
AVISO
Las siguientes instrucciones de instalación sitas en las notas de la publicación es el mejor modo de asegurarse de que su sistema actualiza de una publicación mayor a otra (ej.: desde lenny a squeeze) ¡sin que falle!
Estas instrucciones le dirán a ud. que haga una dist-upgrade (en vez de upgrade) en el caso de apt-get o full-upgrade (en vez de safe-upgrade en el caso de aptitude) al menos una vez. Así pues deberá escribir algo como:
# aptitude full-upgrade
o
# apt-get dist-upgrade -dy # apt-get dist-upgrade -u
en algún momento durante la actualización de publicación mayor.
Una dist-upgrade puede también requerir que se mantenga actualizada con la última versión de sid.
Descubrir un paquete
¿Cómo puede ud. descubrir que paquete usar sin programas GUI?
# apt-cache search sylpheed
O use una interfaz web:
http://packages.debian.org/search?sylpheed
Con la interfaz d ebúsqueda web ud. puede buscar los contenidos de paquete para ficheros específicos:
Añadir un paquete
¿Cómo puede añadir un paquete a si sistema sin programas de la GUI? Todo lo que tiene que hacer es encontrar el nombre de este paquete e introducir la orden:
# aptitude install sylpheed-claws
o
# apt-get install sylpheed-claws
para añadir el paquete sylpheed-claws.
Eliminar un paquete
Para librarse del paquete foo el cual ya no es necesario, introduzca el comando
# aptitude remove foo
o
# apt-get remove foo
Si el paquete se necesita por otros se le preguntara si eliminarlo junto con todos los que de el dependan.
Forzar la eliminación de un paquete
En haciendo una actualización de distribución podría ocurrir que tiene que eliminar primero un paquete. Pero a veces no es posible con apt-get remove puesto que el paquete tiene dependencias incumplidas o no está completamente instalado. Puede eliminar el paquete foo usando la orden:
# dpkg --force-all --remove foo
Leer los contenidos de un paquete instalado
A veces ud. quiere saber cuáles ficheros está en el paquete foo. Para conseguir esta información introduzca la orden:
$ dpkg -L foo
Obtener la descripción de un paquete
¿No conoce para qué es el paquete foo? Justo escriba:
$ aptitude show foo
o
$ dpkg -p foo
Buscar el paquete de un fichero
¿alguna vez se ha preguntado a que paquete pertenece un fichero determinado? Para conseguir esta información (ej.: para /usr/bin/apt-get), comience la orden:
$ dpkg -S /usr/bin/apt-get
y le dirá que este fichero es parte del paquete apt.