2.- Administrar el software

Los sistemas Linux se definen, en gran medida, por la colección de programas que contienen. el entorno de software del sistema lo conforman el kernel de Linux, las bibliotecas usadas por muchos de los paquetes, las consolas empleadas para interpretar comandos, el GUI X windows System. los servidores y otros. Muchos capítulos están dedicados a configurar componentes específicos del software, pero todos ellos tienen algo en común: herramientas que se utilizan para instalar, desinstalar, actualizar y, en definitiva manipular el software.

Irónicamente, esta similitud es la principal fuente de diferencia entre los sistemas Linux. hay dos principales herramientas de administración de paquetes Linux: los paquetes RPM y Debian (también existen varios sistemas de administración de paquetes menos conocidos). Con unas pocas excepciones, cada ordenador con Linux utiliza un único sistema de administración de paquetes, por lo que sólo tendrá que conocer uno para administrar un sistema en concreto. Pero, para desenvolverse totalmente en los dos ámbitos de Linux, deberá estar, al menos, familiarizado con ambos. Abarcaremos también las bibliotecas en este capítulo, componentes de software que pueden utilizar muchos programas diferentes. Las bibliotecas ayudan a reducir el espacio en el disco duro y los requisitos de memoria de los programas complejos, pero también precisan algo de atención, pues de no ser así, pueden causar problemas a causa de las incompatibilidades entre éstos y las versiones de su software dependiente o por la ausencia de éstas.

La administración de paquetes y, en cierto modo, la administración de bibliotecas hace referencia a los programas como ficheros del disco duro. Linux proporciona herramientas para ayudarle a ejecutar programas (conocido como procesos); puede saber que procesos se están ejecutando, cambiar sus prioridades y finalizar procesos que no desea que se ejecute.

CONCEPTO DE PAQUETES 

Antes de continuar, debe conocer algunos de los principios de las herramientas de administración de paquetes. Todo programa de ordenador es como un castillo de naipes: un programa puede basarse en otros cinco programas o bibliotecas, donde cada cual se basa a su vez en varias y así sucesivamente.

La base en la que cimientan estos programas es el kernel de Linux. Cualquiera de estos paquetes se pueden reemplazar en teoría por otro equivalente; no obstante, eso a veces causa problemas. O peor, que al sacar una carta de la torre se derrumbe todo el castillo de naipes.

Las herramientas de administración de paquetes Linux están pensadas para minimizar problemas siguiendo la pista de los programas instalados. La información que mantiene el sistema ayuda a evitar problemas de varias maneras:

  • Paquetes.- La información más básica que mantienen los sistemas de paquetes es sobre paquetes de software, es decir, colecciones de ficheros que se instalan en el ordenador. Los paquetes se suelen distribuir como ficheros sencillos similares a tarball (ficheros creados con la utilidad tar y que se suele comprimir con gzip o bzip2)o ficheros zip. Una vez instalados, la mayoría de los paquetes consisten en docenas o cientos de ficheros y el sistema de paquetes sigue la pista de todos ellos. Los paquetes incluyen datos adicionales que ayudan en las tareas subsiguientes de los sistemas de administración de paquetes.
  • Base de datos de ficheros instalados.- Los sistemas de paquetes mantienen una base de datos de ficheros instalados, que incluye información sobre todos los que se hayan instalado a través del sistema de paquetes, el nombre del paquete al que pertenecen y la información adicional asociada.
  • Dependencias.- Uno de los tipos de información más importantes mantenido por el sistema de paquetes es la información de la dependencia, es decir, los requisitos mutuos de los paquetes. Por ejemplo, si SuperProg se basa en UltraLib para hacer esta tarea, La base de datos de paquetes registra esta información. Si intenta instalar SuperProg cuando UltraLib no está instalado, el sistema de paquetes no le dejara hacer eso. De manera similar, si intenta desinstalar UltraLib cuando está instalado SuperProg, el sistema de paquetes no le dejará (puede invalidar estas prohibiciones, como comentaré más adelante, aunque no es aconsejable hacerlo).
  • Sumas de control.- El sistema de paquetes mantiene sumas de control e información accesoria diversas sobre los ficheros. Esta información se puede utilizar para verificar la validez del software instalado. Pero esta funcionalidad tiene sus límites; está pensada para ayudarle a localizar errores de disco, sobre escritura accidentales de fichero y otros problemas menos funestos. Tiene un uso limitado en la detección de intrusiones, porque un intruso podría utilizar el sistema de paquetes para instalar software alterado en el sistema.
  • Actualizaciones y desinstalación.- Al seguir el rastro de los ficheros y dependencias, los sistemas de paquetes permiten que se les actualice y desinstale fácilmente: se le indica al sistema de paquetes que actualice o elimine un paquete y éste sustituirá o eliminará todos los ficheros del mismo. Obviamente, se asume que la actualización o desinstalación no causará problemas de dependencia; si así fuera, el sistema de paquetes bloquearía la operación a menos que esto se invalidara.
  • Creación de paquetes binarios.- Tanto el sistema de paquetes RPM como Debian proporcionan herramientas para ayudar a crear paquetes binarios (aquellos que se instalan directamente) del código fuente. Esta funcionalidad es particularmente útil si ejecuta Linux sobre una CPU peculiar; puede descargar el código fuente y crear un paquete binario, incluso aunque los desarrolladores no ofrezcan un soporte específico para su CPU. Crear un paquete binario desde el código fuente posee ventaja frente a compilar software de maneras más convencionales, porque después podrá utilizar el sistema de administración de paquetes para seguir la pista de las dependencias, prestar atención a ficheros individuales, etc.

Tanto el sistema de paquetes RPM como Debian proporcionan todas estas funcionalidades básicas, aunque los detalles de su operación difieren. Estos dos sistemas de paquetes son incompatibles entre ellos, en el sentido en que su sistema de paquetes y sus bases de datos de ficheros instalados son diferentes; no puede instalar directamente un paquete RPM en un sistema basado en Debian o viceversa (existen herramientas para pasar de un formato a otro y hay desarrolladores trabajando en maneras para integrar mejor los dos formatos de paquetes).

Advertencia: La mayoría de las distribuciones instalan sólo un sistema de paquetes. No obstante, es posible instalar más de uno y algunos programas (como alien) requieren ambos para tener una funcionalidad completa. en realidad, no se aconseja utilizar ambos sistemas para instalar software, puesto que sus bases de datos son distintas. Si instala una biblioteca utilizando un paquete de Debian y luego instala un RPM basada en dicha biblioteca, RPM no se dará cuenta de que la biblioteca ya está instalada y devolverá un error.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s