Gestionar Software - Paquetes

Versión para impresiónVersión PDF

Paquetes ¿Qué son?

Los paquetes como su nombre indica son paquetes de software que incluyen los ficheros, en algunos casos muchos, que componen una aplicación. Estos paquetes pueden incluir ficheros fuente o bien binarios, numero de versión, así como las referencias a las librerías comunes que necesite, ahora explicaré que significa cada cosa.

Ficheros fuente, son aquellos escritos directamente por los desarrolladores de la aplicación, si utilizamos estos paquetes tenemos algunas ventajas e inconvenientes. Empezaré por los inconvenientes, debemos compilar nosotros mismos el software, con lo que debemos saber hacerlo, y hacerlo bien, ya que si lo hacemos de forma descuidada, o errónea podríamos entre otras cosas generar una aplicación con permisos de root lo que le concedería acceso total a nuestro sistema lo que podría ser un agujero de seguridad muy importante. Como ventaja es que la aplicación estaría adaptada totalmente a nuestro sistema, pudiendo así aprovechar los recursos del mismo plenamente, otra ventaja es que al tener acceso al código fuente, si tenemos ganas y paciencia podremos comprobar que la aplicación no realice acciones indeseadas (p.e. acceso a información confidencial).

Ficheros binarios, son aquellos compilados con unos valores genéricos, lo que les hace aptos u operativos para una arquitectura concreta o varias (tipos de procesares, familia Intel i386 X64, Sparc, powerPC, ...). Los inconvenientes principales son una posible disminución en el aprovechamiento de los recursos del sistema, otro inconveniente seria que si el paquete proviene de una fuente desconocida, no podremos comprobar si realiza alguna acción no deseada. Como ventaja principal la comodidad, prácticamente no tendremos que hacer nada para utilizar la aplicación.

Librerías comunes, en las aplicaciones hay tareas repetitivas que pueden ser utilizadas por varias aplicaciones, minimizar una ventana, barras de desplazamiento, gestión de memoria, operaciones en coma flotante, etc. Pues bien los ficheros que se encargan de realizar todas estas tareas podrían estar incluidas en la propia aplicación, lo que nos llevaría en el caso de tener funcionando varias aplicaciones que utilicen estas tareas, a unas necesidades de memoria desorbitadas, por lo que se utilizan unas librerías compartidas que realizan estas tareas y que se van cargando si no están cargadas ya por otra aplicación en memoria según se van necesitando. aparte de los recursos que liberamos con esta técnica, los desarrolladores evitan tener que reprogramar cada vez que necesiten de estas funcionalidades, dependiendo de la arquitectura, aplicación, etc.

Estas librerías comunes, o funcionalidades compartidas se conocen como dependencias, lo que viene a querer decir que la aplicación del paquete que queremos instalar necesita ciertas librerías para poder funcionar, ya que va a intentar utilizar las funcionalidades ofrecidas por estas.

Gestores de Paquetes

Para instalar las aplicaciones, podemos copiar los archivos que la componen en los directorios adecuados, buscar las dependencias en la versión adecuada, ver si ya están instaladas en nuestro sistema, en las rutas que la nueva aplicación espera, si no lo estan hacerlo ....,

Por el contrario si lo que queremos es desinstalar alguna aplicación, podemos buscar su ubicación, la de los archivos de configuración, las dependencias y comprobar que estas nos son utilizadas por otra aplicación, y eliminarlo todo.

O bien podemos utilizar un gestor de paquetes que realizara todas estas tareas, y otras que no he comentado por abreviar, por nosotros.

Cada distribución utiliza un gestor especifico, que es el que suele venir por defecto, aunque si nos gusta cualquier otro normalmente funcionará, ahora bien, aunque si no es estrictamente necesario, lo recomendable es utilizar el que la distribución aconseja. Estos gestores de paquetes nos facilitan la instalación, actualización y eliminación de software, manteniendo una base de datos en la que se refleja el el software instalado, versiones, dependencias,...

Aunque los gestores de paquetes pueden funcionar en distribuciones en las que no vienen instalados por defecto, hemos de tener en cuenta que cada uno tiene sus peculiaridades, por lo que en un sistema con varios gestores de paquetes, podemos instalar varias veces el mismo software (aplicaciones, bibliotecas ...) una vez por cada gestor de paquetes, ya que no comparten las bases de datos, y ocasionar inestabilidades en el sistema e incluso su colapso y quedar inutilizable. Dicho esto si decidimos utilizar varios gestores de paquetes debemos ser muy cuidadosos a la hora de realizar las acciones que nos permiten.

Cada gestor de paquetes tiene sus propios ficheros de configuración en los cuales entre algunas cosas mas se guarda los lugares donde buscar el software, llamados repositorios, aunque algunos como yum buscara en varias ubicaciones intentando localizar el paquete solicitado

Gestores de Paquetes Comunes

RPM Gestor de paquetes utilizado por las distribuciones derivadas de Red Hat, es uno de los mas extendidos. podéis obtener información de su uso desde su web

YUM Gestor de paquetes de Yellow Dog y que utilizan algunas distribuciones mas. Información sobre este gestor en español en esta wiki de fedora project sobre YUM.

DPKG y APT para Debian y sus distribuciones derivadas, mas información en esta wiki de Debian, para APT

Como yo utilizo Ubuntu que es una distribución derivada de Debian explicaré como realizar alguna de las tareas mas habituales, que podemos realizar con APT, aunque en la actualidad existen interfaces gráficas mucho mas comodas de utilizar y normalmente es lo que se utiliza. En Ubuntu lo llaman Centro de Software Ubuntu, y habitualmente tiene una entrada en el menú principal, o lanzador (en unity), si nos decantamos por esta opción, que será lo mas probable, tendremos una larga lista de aplicaciones para instalar.

Si queremos instalar una aplicación que no aparece en la lista inicial, será suficiente con buscar en google y añadir el repositorio a la lista de lugares donde buscar aplicaciones, se puede hacer desde el entorno gráfico o bien siguiendo las instrucciones que suele poner en la web de los desarrolladores, debemos tener en cuenta que solo debemos incluir repositorios que merezcan nuestra confianza, ¿como...?, efectivamente buscamos en google a ver si ese repositorio tiene entradas en internet que digan algo al respecto

apt

apt es una aplicación importante, por lo que debemos ejecutarlo como un usuario con los permisos necesarios.

Instalar un paquete (normalmente tendrá en cuenta sus dependencias)

sudo apt-get install nombre-de-paquete

Eliminar un paquete

sudo apt-get remove nombre-de-paquete

Eliminar ficheros de paquetes eliminados y los de configuración

sudo apt-get purge

Existen mas opciones interesantes, algunas nos permiten descargar los paquetes fuentes, compilarlos, instalarlos y tener en cuenta/forzar la satisfacción de sus dependencias

Utilizar paquetes de una distribución distinta - alien

Cada paquete esta construido para su distribución, o dicho de otro modo, cada aplicación debe tener un paquete construido para cada gestor con el que pueda ser utilizado, si no existe podemos construirlo a partir del los ficheros fuente.

Si tenemos un paquete para una distribución y queremos utilizarlo en otra para el que no existe paquete, podemos utilizar una aplicación llamada alien, con una simple busqueda en google encontrareis varios tutoriales sobre el mismo (ademas de man, info, apropos).

Añadir nuevo comentario

(If you're a human, don't change the following field)
Your first name.
(If you're a human, don't change the following field)
Your first name.
(If you're a human, don't change the following field)
Your first name.

Plain text

  • No se permiten etiquetas HTML.
  • Saltos automáticos de líneas y de párrafos.
CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
CAPTCHA de imagen
Introduzca los caracteres mostrados en la imagen.