Linux tiene un núcleo denominado Kernel que es el componente que define el sistema operativo, y que fue desarrollado inicialmente por Linus Torvalds, aunque en la actualidad son miles los desarrolladores.
Para complementar al sistema operativo, se utilizan una serie de herramientas/programas desarrollados en parte por el proyecto GNU, por lo que el nombre completo del sistema operativo sería GNU/Linux.
Es habitual que algunos programas para funcionar, dependan a su vez de la existencia o funcionamiento de otros programas. A esto se le llama Dependencia. Se dice que existe un problema de dependencia cuando falta una aplicación o biblioteca, oversión diferente necesaria, para el correcto funcionamiento de otro programa.
Las herramientas que se utilizan junto con el kernel, es lo que diferencia a unas distribuciones Linux de otras. En este caso vamos a centrarnos en las distribuciones que utilizan como distribución principal Debian. Un ejemplo de distribución basada en Debian, es Ubuntu.
Las herramientas que se usan con el kernel de cada distribución, son programas, archivos, software en general, que añaden funcionalidad al sistema operativo y que pueden servir para cualquier cosa, ya tengan interfaz gráfica o funcionen a través de comandos de terminal. Este software se organiza de forma ordenada en paquetes, de forma que cada paquete contiene los programas y archivos necesarios para realizar una funcionalidad concreta. Instalar un paquete es el equivalente en Windows de “instalar un programa” desde un .exe o un .msi.
El formato de paquete depende de cada distribución linux. Los paquetes de las distribuciones basadas en Debian (deb), tienen un nombre con la siguiente estructura: [nombrePaquete] [versiónPaquete] [arquitectura].deb. Otras distribuciones Linux utilizan paquetes de tipo rpm en lugar de deb.
A su vez, estos paquetes se almacenan en repositorios o réplicas, que se encuentran normalmente en la nube, mantenidos por empresas afines al desarrollo de la distribución Linux, o entidades como Universidades, organizaciones vinculadas al software libre, etc. En el caso de Ubuntu, por ejemplo, los repositorios se corresponden con los de la empresa Canonical (responsable de su desarrollo) y sus asociados.
Los repositorios o réplicas a las que podemos acceder en Ubuntu, se encuentran definidos en el archivo /etc/apt/sources.list. Este archivo puede abrirse y editarse con cualquier editor de texto plano que no deje formato (no sería válido Open Office, Libre Office, ni similar).
En cada linea está definido un repositorio (las lineas que comienzan con # son comentarios), de la siguiente forma:
A continuación se detallarán diferentes programas para la gestión de paquetes, tanto gráficos como por línea de comandos. Todos ellos parten de la información contenida en el archivo sources.list. Siempre pensando en Debian y Ubuntu.
Aplicación gráfica en la que se muestran 6 pestañas:
En versiones recientes de Ubuntu, puede encontrarse bajo la denominación Actualizaciones. Esta es la herramienta gráfica para actualizar los paquetes. Una vez dentro, buscará actualizaciones en los repositorios automáticamente. Para acceder al menú indicado más arriba, debemos pulsar sobre Configuración una vez haya terminado la búsqueda.
Aplicación gráfica, a modo de “Play Store” de Google o similares, en la que se organizan las aplicaciones de los paquetes de los repositorios por categorías, sin hacer distinción entre las libres de las privativas, o las gratuitas con las de pago.
Se pueden ver datos de cada una, una breve descripción, así como las que están instaladas, y si necesitan actualizaciones. También pueden desinstalarse desde aquí.
Advance Packaging Tool, creada por Debian para la gestión de paquetes en sistemas GNU/Linux. Herramienta usada con permisos de superusuario desde la línea de comandos.
A continuación se exponen las acciones más comunes que puede realizar:
La carpeta en la que se almacenan los paquetes descargados es /var/cache/apt/archives. La información del estado de cada fuente de paquetes definida en sources.list se encuentra en /var/lib/apt/list.
Interfaz gráfica para apt-get. Se utiliza para realizar las mismas acciones que con apt-get, aunque es menos eficaz para la resolución de conflictos.
Permite ver los paquetes organizados por categorías (bases de datos, programación, juegos, etc.), por su estado (instalados, actualizados, rotos, etc.), por su origen, o por filtros personalizados.
También muestra información de la totalidad de paquetes instalados, información de los mismos, dependencias, etc.
Y por supuesto, gestión de repositorios, instalación de paquetes (uno a uno o varios a la vez), desinstalación, etc.
Gestor de paquetes que puede utilizarse tanto en consola de comandos como en modo gráfico. Tiene algunas ventajas respecto de apt, como por ejemplo la instalación automática de paquetes sugeridos o recomendados, aunque no sean dependencias, así como la desinstalación automática de paquetes que se instalaron como dependencias de otros, cuando ya no se precisan.
En consola de comandos pueden realizarse las siguientes acciones:
Para acceder a aptitude en modo gráfico, escribimos aptitude en un terminal. Aunque la idea de uso es la misma que con Synaptic, la interfaz es de estilo consola de comandos, y es bastante más engorrosa. Aunque puede usarse el ratón, está pensada para usar sólo teclado.
En la parte superior hay una barra de menús a la que podemos acceder , o salir, con ctrl + t. También podemos hacer desaparecer o aparecer la parte inferior (si necesitamos más espacio) con may + d.
Para poder realizar las acciones más importantes (instalar, desinstalar, etc), debemos identificarnos como superusuarios: Acciones –> 'Convertirse en Administrador'.
Al inicio aparecen todos los paquetes agrupadas por categorías. Podemos navegar con las flechas e 'intro'. Pulsado 'intro' sobre un paquete, obtenemos información detallada del mismo en una nueva pestaña. Podemos usar [ y ] para abrir y cerrar respectivamente, todas las categorías de un grupo.
Podemos buscar un paquete desde esta opción del menú, o pulsando /.
Si tenemos varias pestañas, podemos navegar entre ellas con F6 y F7, y cerrar una de ellas con q. También podemos cerrar la aplicación con q.
En el listado de paquetes aparece una letra junto a cada uno que indica su estado:
Para llevar a cabo acciones sobre un paquete podemos usar las siguientes combinaciones de teclas para amrcar dichas acciones:
Una vez las acciones han sido marcadas, podemos ejecutarlas pulsando la tecla g.
Base del gestor de paquetes Debian (.deb), es decir, paquetes preparados para usar en Sistemas Operativos Linux Debian y deribados suyos como Ubuntu.
Permite la gestión, instalación, desistalación, obtención de información, etc. de paquetes, siempre que hayan sido descargados previamente en el equipo. Por ellos se utiliza siempre que queramos instalar un paquete que hayamos descargado de forma ajena a los repositorios de sources.list.
Las principales acciones que podemos realizar:
Alternativa gráfica a dpkg. Sencilla herramienta para la instalación de paquetes debian. Instala las dependencias necesarias, aunque no los paquetes recomendados o sugeridos.
Se abre por defecto al clicar en un archivo de paquete (.deb), o escribiendo en el terminal gdebi-gtk.
Como es habitual, para realizar estas acciones se requieren privilegios de superusuario.