Información blog

Linux, tutoriales, noticias, sistemas, redes y seguridad informática, entre otras cosas.

martes, 14 de julio de 2015

Guía rápida de dpkg

Hace ya cierto tiempo, publiqué en su día una guía rápida referente a rpm, el gestor de paquetes de Red Hat. El motivo principal de dicho post fue dar unas directrices básicas de dicho gestor, ya que los sistemas basados en red hat han perdido algo de relevancia durante los últimos años comparándolo con Debian. Aún así, probablemente muchos que se están iniciando en el mundo de Linux nunca hayan usado el gestor de paquetes de Debian, llamado dpkg, ya que por lo general apt o aptitude hacen todo el trabajo por ellos. Eso no significa que dpkg haya caído en el olvido; cada vez más páginas tienen disponibles paquetes .deb listos para ser instalados en sistemas basados en Debian mediante este gestor de paquetes, y todo apunta a que la tendencia va a ir en aumento. Es por ello recomendable tener ciertas nociones sobre dpkg para no sentirnos perdidos en caso de querer instalar algún paquete de alguna página de terceros.

Portada_dpkg

Comencemos con lo más básico; la instalación de un paqute .deb; Estos paquetes ya están previamente preparados para que nuestro gestor de paquetes los instale sin tener que recurrir a compilaciones ni a complejos procesos; aún así es importante resaltar que un paquete .deb NUNCA podrá ser instalado en caso de carecer de alguna dependencia. Para ponernos en situación; imaginemos que queremos instalar un paquete que mediante dpkg, y dicho paquete requiere tener gcc instalado y no lo está; hasta no tener gcc instalado no podríamos resolver la instalación de dicho paquete exitosamente. Teniendo esto claro, pasemos a la instalación de un paquete. Para poder realizar dicha instalación, usaríamos la combinación de dpkg junto uno de estos dos parámetros: -i o --install. Para este ejemplo y todos los siguientes usaré el paquete teamviewer_10.0.41499_i386.deb, pero estas nomenclaturas son perfectamente usables para cualquier otro paquete.

  1. dpkg -i teamviewer_10.0.41499_i386.deb
  2. dpkg --install teamviewer_10.0.41499_i386.deb

A diferencia que con red hat, el parámetro -i sirve también para actualizar un paquete, es decir, el parámetro en cuestión sirve tanto para actualizar como para instalar, con lo que no habría que preocuparse en si está previamente instalado o no, quitándonos una preocupación de la cabeza. Si llegado el momento quisiésemos remover un paquete, es decir, recurriríamos al parámetro -r o --remove. A la hora de desinstalar un paquete no sería necesario hacer referencia ni a su versión ni a su arquitectura; con únicamente poner el nombre del paquete sería suficiente. Estos parámetros aplicados al paquete antes mencionado quedarían de esta forma:

  1. dpkg -r teamviewer
  2. dpkg --remove teamviewer

El problema que tiene este tipo de eliminación es que no elimina toda la información relativa a este parámetro tales como los ficheros de configuración y otros aspectos... Eso se debe a que si quisiésemos reinstalar el paquete en cuestión de nuevo en algún momento tendríamos dicho paquete ya configurado. Eso desgraciadamente hace que dicho paquete ocupe innecesariamente espacio en nuestro disco duro, cosa que por lo general no deseamos. Es por ello que es recomendable que en vez de remover el paquete, éste sea purgado del sistema de forma definitiva, para lo cual se requiere al parámetro -P (importante ponerlo en mayúsculas) o --purge. Además si tuviésemos paquetes borrados pero no purgados (es decir, que hayan sido borrados mediante -r y que todavía persisten en el sistema) todos éstos podrían ser purgados del sistema si en vez de escribir el nombre del paquete se escribiese el parámetro -a o --pending.

  1. dpkg -P teamviewer
  2. dpkg --purge teamviewer
  3. #PARA PURGAR TODOS LOS PAQUETES PENDIENTES
  4. dpkg -P -a
  5. dpkg -P --pending

Tener controlados qué paquetes tenemos instalados en el sistema no siempre es fácil; los paquetes puede contarse por decenas o centenares; es por ello que una buena idea suele ser a la utilidad de listado de paquetes ofrecida por dpkg. Dicha utilidad de listado es referida como -l o --list.

  1. dpkg -l
  2. dpkg --list

Imaginemos que queremos saber el contenido de un paquete que YA INSTALADO que hemos consultado mediante el comando de antes. Dicho contenido puede ser consultado mediante el uso del parámetro -L (importante que sea en mayúsculas) o mediante el parámetro --listfiles. Imaginemos que por ejemplo queremos ver el contenido del paquete time:

  1. dpkg -L time
  2. dpkg --listfiles time

Esto sería todo. Mediante esta guía podríamos usar dpkg sin problemas.

Saludos.

No hay comentarios :

Publicar un comentario