Gnu/Linux‎ > ‎Información‎ > ‎

Aplicaciones y Paquetes

publicado a la‎(s)‎ 17 may. 2016 12:05 por Juan Jose Ramirez Lama   [ actualizado el 17 may. 2016 12:15 ]
Existen 2 formas de instalar:
  • Desde código fuente: Es la forma universal, es idéntica para todas las distribuciones, se compone de 3 pasos:
    • Configurar.
    • Compilar.
    • Instalar.
  • Desde un sistema de paquetes: Resuelve los problemas de la instalación de código fuente, y para utilizarlo se debe tener instalado un gestor de paquetes, existen 2 formatos de paquetes
    • RPM: Utilizado por REDHAT y derivados.
    • DEB: Utilizado por Debian y derivados.

Sistema de paquetes  RPM

  • RPM Package Manager (o RPM, originalmente llamado Red Hat Package Manager, pero se convirtió en acrónimo recursivo) es una herramienta de administración de paquetes pensada básicamente para GNU/Linux. 
  • Es capaz de instalar, actualizar, desinstalar, verificar y solicitar programas. 
  • RPM es el formato de paquete de partida del Linux Standard Base.
  • Originalmente desarrollado por Red Hat para Red Hat Linux, en la actualidad muchas distribuciones GNU/Linux lo usan, dentro de las cuales las más destacadas son Fedora Linux, Mandriva Linux, Mageia, PCLinuxOS, openSUSE, SuSE Linux. 

Sistema de paquetes DEB

 Es el sistema de paquetes utilizado por las distribuciones basadas en Debian para la instalación.

Formato Interno:
  • Esta compuesto por el programa compilado.
  • Archivos de Configuración.
  • Documentación.
  • Script de procesos.
  • preinst: Son ejecutados antes de que el paquete sea desempaquetado.
  • postint: Son ejecutados después del proceso de desempaquetado
  • prerm: son ejecutados antes de la eliminación de un paquete.
  • postrm: Son ejecutados después de la eliminación de un paquete.

El gestor de paquetes procesas los scripts y copia los archivos donde corresponde. En el caso de los paquetes DEB, se utilizan los siguientes programas para procesar estos scripts:
  • dpkg : Gestor de paquetes, permite instalar/desisntalar/reinstalar/configurar/consultar paquetes
  • apt: Interfaz del gestor de paquetes (resuelve dependencias)
  • aptitude: Interfaz de alto nivel de apt
  • dselect: Interfaz de dpkg
  • synaptic: Interfaz gráfica para gestión de paquetes
  • Centro de Software: interfaz mas amigable de las anteriores pero exclusiva de ubuntu.
Todas las aplicaciones anteriores, a excepción de dpkg trabajan sobre un repositorio (Lugar donde se encuentran los paquetes (puede ser el
mismo equipo o algún lugar en la red)).

Los repositorios tienen un formato dependiendo de la distribución:
  • El directorio que tiene las versiones de una distribución es dist
  • El directorio que contiene todas las aplicaciones es "pool"
  • http://archive.ubuntu.com
En debian, una forma de consultar los paquetes instalados (terminal) es:
    $ dpkg -l
    $ dpkg -l gnome-terminal

Estos comandos devuelven los resultados como:
  • Estado del paquete (Un paquete esta instalado si muestra "ii", Cuando aparece "rc" Se ha desinstalado pero aún se mantiene sus archivos de configuración).
  • Estado de selección del paquete.
  • Bandera del paquete.
Opciones de dpkg:
 Opción Descripción
 -i paquete Instala un paquete.
 -r paquete Desinstala un paquete sin eliminar sus archivos de configuración.
 -P paquete Desinstala y elimina los archivos de configuración.
 --get-selections Obtiene la lista de paquetes con su selección.
 --set-selections Modifica la selección de paquetes.
 -C Busca e indica los paquetes que están parcialmente instalados en el sistema.
 -I patron Lista los paquetes instalados siguiendo el patrón.
 -s paquete Muestra el estado del paquete
 -S /ruta/archivo Muestra a que paquete pertenece el archivo.

Las opciones compuestos por mas de una letra usan --
--get-selections
--set-selections

Ubuntu divide el repositorio en secciones:
  • main: Con Soporte oficial de ubuntu
  • universe: Sin Soporte oficial
  • restricted: Tienen licencias restrictivas soportadas por Ubuntu
  • multiverse: Tiene licencias restrictivas y que podrían tener problemas para su redistribuciones (codecs de vídeo y audio)
Los repositorios son utilizados por apt.

APT

Apt es un conjunto de aplicaciones que permiten instalar paquetes desde un repositorio. La configuración personal de los repositorios se encuentra en /etc/apt/sources.list

Comandos apt:
  • apt-cdrom: Permite agregar un CD como repositorio
    • # apt-cdrom add
  • apt-cache: Permite consultar los paquetes de
    • apt-cache search patron
      • # apt-cache search latex
    • apt-cache show paquete
    • apt-cache showpkg paquete
    • apt-cache stats
    • apt-cache depends
  • apt-get: permite instalar/desinstalar paquetes
    • apt-get update: Actualiza el listado de paquetes.
    • apt-get upgrade: Actualiza todos los paquetes, excepto los que tienen nuevas dependencias.
    • apt-get dist-upgrade:Actualiza todos los paquete incluyendo los que tienen nuevas dependencias.
    • apt-get install paquete: instala el paquete y todas sus dependencias
    • apt-get remove paquete : Desinstala el paquete pero no borra sus archivos de configuración.
    • apt-get remove --purge paquete :Desinstala el paquete y sus archivos de configuración.
  • update-alternatives: Este programa permite definir el programa a utilizar cuando existen diversos programas para la misma tarea. Su sintaxis es:
    • update-alternatives --config <nombre>
    • update-alternatives --all
  • Este comando debe ejecutarse al instalar java, ya que por defecto utiliza programas provistos por gnu (openjdk).
    • update-alternatives --config java
    • update-alternatives --config keytool
    • update-alternatives --config rmiregistry

Desinstalar Paquetes

Si alguna aplicación no te gusto, puedes desintalarla desde la consola tecleando:
    # apt-get -y remove nombre_paquete --purge

Donde nombre_paquete es el nombre del programa que deseas eliminar. O también puedes desintalarlo de forma gráfica desde "Centro de Software" o "Synaptic" en Debian.

¿Qué significan los nombres de los paquetes en Debian/Ubuntu?

Veamos por ejemplo el paquete gedit_2.20.1-0ubuntu3_i386.deb
  • Evidentemente gedit es el nombre de la aplicación.
  • 2.20.1: es el número de versión de la aplicación.
  • -0: es el número de revisión de esta versión dentro de Debian. Como aún no se encontraba esta versión en los repositorios de Debian se utiliza el 0; si hubiera sido el primer paquete creado para esta versión de la aplicación se usaría un 1, si fuera el segundo un 2, y así sucesivamente.
  • ubuntu3: es el número de revisión de esta versión en Ubuntu, es decir, es el tercer paquete que se crea para dicha versión. Si el nombre del paquete no contiene esta parte significa que se utiliza el paquete de los repositorios de Debian sin ningún cambio adicional.
  • i386: es la arquitectura para la que está compilada el paquete. En este caso se trata de binarios compatibles con la arquitectura típica de los PCs. Otros valores que podríamos encontrar son amd64, powerpc o all (válido para cualquier arquitectura)
  • También hay paquetes que contienen un número seguido del carácter ':' o de los caracteres '%3a', su contrapartida en ASCII. Esto es lo que se conoce como epoch (época, era) y sirve para que los gestores de paquetes reconozcan el nuevo paquete como una versión superior, y por lo tanto permitan actualizar a esa versión, para el caso de que existiera algún error en la numeración de versiones anteriores del paquete o de que se cambie el método de numeración de las versiones.
Comments