GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar paquetes en RHEL 8 / CentOS 8 Linux System

Todas las distribuciones modernas de Linux organizan el software en paquetes que contienen binarios de aplicaciones, archivos, metadatos e información sobre las dependencias del paquete, posibles conflictos con otros paquetes, etc. El administrador de paquetes principal de Rhel se llama rpm, y es la herramienta utilizada también por dnf , el administrador de paquetes de nivel superior, que es capaz de administrar dependencias. Una tecnología relativamente reciente, flatpak , instalemos también aplicaciones de espacio aislado junto con sus tiempos de ejecución.

En este tutorial aprenderás:

  • Las tres formas principales de instalar un paquete usando rpm
  • Cómo instalar paquetes usando dnf
  • Cómo instalar aplicaciones gráficamente desde la utilidad gnome-software
  • Cómo instalar aplicaciones de espacio aislado con flatpak


el manual del administrador de paquetes rpm

Requisitos de software y convenciones utilizadas

¿Qué es un paquete?

En RHEL 8 / CentOS 8, como en todas las distribuciones modernas de Linux, el software está organizado en repositorios, en forma de paquetes. Pero, ¿qué es exactamente un paquete? Un paquete es básicamente un archivo comprimido que contiene los archivos asociados con un software específico, como archivos binarios y bibliotecas compilados, además de metadatos e instrucciones sobre dónde y cómo se deben instalar esos archivos en el sistema, las dependencias externas que el software necesita para ejecutarse correctamente y más. RHEL y CentOS usan las rpm formato de paquete que fue inventado por el propio Red Hat:en este tutorial veremos cómo instalar y administrar paquetes rpm en Red Hat Enterprise Linux 8.

RPM:el administrador de paquetes de Red Hat y yum/dnf

Para facilitar la administración de paquetes rpm, el rpm package manager fue creado. Aunque es muy potente, se centra en paquetes individuales, por lo que no puede resolver dependencias. Para administrar las relaciones entre paquetes y evitar el infame infierno de dependencias, primero yum administrador de paquetes (Yellow Updater Modified) y luego su evolución, dnf (Dandified YUM), fueron adoptados. Dnf se introdujo por primera vez en Fedora 18 y reemplaza a yum en la última versión de Red Hat Enterprise Linux.

Instalar un paquete con rpm

Una de las operaciones más básicas que podemos realizar con rpm es la instalación de un paquete. Como se dijo antes, esto funcionará solo si el paquete no tiene dependencias externas, ya que rpm no puede administrarlo. Básicamente, hay tres formas en que podemos instalar un paquete con rpm:corresponden respectivamente al -i , -U y -F opciones.

Para instalar un nuevo paquete podemos ejecutar rpm con -i opción (abreviatura de --install) ). La sintaxis es muy simple:

$ sudo rpm -i packagename.rpm

Cuando ejecutamos el comando anterior, el paquete especificado se instala solo si aún no está instalado en el sistema. Si intentamos instalar un paquete ya instalado (gedit en este caso), recibimos un error:

$ sudo rpm -i gedit-3.28.1-3.el8.x86_64.rpm
package gedit-2:3.28.1-3.el8.x86_64 is already installed

Tenga en cuenta que aquí para el mismo "paquete" nos referimos a la misma versión exacta. Este método de instalación es el recomendado para usar al realizar la instalación de un nuevo kernel:en tales situaciones, el nuevo kernel coexistirá con los anteriores, por lo que en caso de que algo no funcione como se esperaba, será es posible usarlos como respaldo.

Las cosas van de manera diferente cuando usamos -U opción, que es la abreviatura de --upgrade . En este caso, si un paquete aún no existe en el sistema, se instala; si existe una versión anterior del paquete, el paquete se actualiza. Esto significa que después de instalar la versión más nueva del paquete, se eliminan las más antiguas. Como dijimos anteriormente, se desaconseja encarecidamente actualizar una pieza fundamental de software como el kernel en su lugar:es mejor estar absolutamente seguro de que el nuevo kernel funciona como se espera antes de eliminar las versiones anteriores.

El -F (o –refrescar) opción hace algo diferente. Cuando se usa, solo se actualizan los paquetes ya existentes. Si una versión anterior del paquete que intentamos instalar aún no existe en nuestro sistema, no está instalada.

Instalar un paquete desde una ubicación remota

Con rpm También es posible instalar un paquete que no está en nuestro sistema de archivos local. Digamos, por ejemplo, que queremos instalar un paquete accesible a través del protocolo ftp; el comando a ejecutar sería el siguiente:

$ sudo rpm -i ftp://ftp.someaddress.com/package.rpm

También es posible proporcionar un nombre de usuario y una contraseña si se requiere autenticación, incluyendo dicha información en la dirección:

$ sudo rpm -i ftp://username:[email protected]/package.rpm

Instalar un paquete con dnf

Aunque dnf opera sobre rpm, proporciona características muy útiles como la gestión de dependencias de software y la capacidad de instalar software desde los repositorios de distribución. Los metadatos almacenados en un paquete rpm, entre otras cosas, especifican qué otros paquetes deben instalarse para que funcione el software y, eventualmente, qué paquetes podrían entrar en conflicto con él. Dnf, o se encarga de realizar todas las operaciones necesarias, después de recibir la confirmación del usuario. Digamos, por ejemplo, que queremos instalar el vim paquete usando dnf; ejecutaríamos:

$ sudo dnf install vim

Después de ejecutar el comando anterior, las operaciones a realizar y la lista de dependencias a instalar se muestran en la pantalla:

Dependencies resolved.
================================================================================
  Package    Arch   Version          Repository                             Size
================================================================================
Installing:
  vim-enhanced
            x86_64 2:8.0.1763-7.el8 rhel-8-for-x86_64-appstream-beta-rpms  1.4 M
Installing dependencies:
  gpm-libs   x86_64 1.20.7-15.el8    rhel-8-for-x86_64-appstream-beta-rpms  39 k
  vim-filesystem
            noarch 2:8.0.1763-7.el8 rhel-8-for-x86_64-appstream-beta-rpms   47 k
  vim-common x86_64 2:8.0.1763-7.el8 rhel-8-for-x86_64-appstream-beta-rpms 6.3 M

Transaction Summary
================================================================================
Install  4 Packages

Total download size: 7.8 M
Installed size: 30 M
Is this ok [y/N]:

Si ejecuta dnf desde un script que debe ejecutarse sin supervisión, -y opción (forma abreviada de --assumeyes ):de esa manera todas las respuestas recibirán un 'sí' automáticamente y se requerirá la interacción del usuario.

Al igual que rpm, dnf nos permite instalar un paquete ubicado en una url remota; todo lo que tenemos que hacer es especificar este último:

$ sudo dnf install http://path/to/package.rpm

Instalar un paquete gráficamente

Al ejecutar GNOME entorno de escritorio, también es posible instalar un paquete gráficamente, usando el gnome-software solicitud. Si el paquete existe en los repositorios de distribución, simplemente podemos realizar una búsqueda de la aplicación que queremos instalar usando el campo de búsqueda:



Interfaz de búsqueda de software Gnome

Después de eso, podemos hacer clic en el botón "instalar" para instalar la aplicación:



Interfaz de instalación del software Gnome

Al instalar un paquete con este método, se utiliza un procedimiento diferente. Las aplicaciones de software gnome son una interfaz para packagekit que es en sí mismo una interfaz de alto nivel que funciona como una abstracción sobre el administrador de paquetes nativo de una distribución:su objetivo principal es uniformar las instalaciones en diferentes distribuciones. También es importante tener en cuenta que los paquetes instalados de esta manera no aparecerán en el historial dnf, ya que packagekit no usa este último bajo el capó.

Instalación de software con paquetes planos

En RHEL 8/CentOS 8, otra forma posible de instalar software, tanto desde la aplicación de software gnome como desde la línea de comandos, es usar paquetes planos. Flatpacks proporciona entornos sandbox dentro de los cuales se proporciona un software junto con todas sus dependencias:esto hace posible ejecutar una versión específica de un programa en todas las distribuciones que soportan esta tecnología, independientemente de las bibliotecas nativas. El repositorio principal de flatpacks es flathub. Instalar un paquete plano desde este sitio con el software gnome es realmente fácil. Todo lo que tenemos que hacer es buscar la aplicación que queremos instalar y hacer clic en install botón.



Flathub es el repositorio principal utilizado para flatpaks

El software Gnome debería iniciarse automáticamente:si no, simplemente abra el archivo descargado con él. Después de hacer clic en el botón de instalación y proporcionar nuestra contraseña administrativa, si es necesario, se instalará el paquete.



Instalación del paquete plano del software Gnome

Una vez que instalamos un flatpak de esta manera, el repositorio de flathub se agrega automáticamente como una fuente de flatpak, por lo tanto, es posible buscar otras aplicaciones contenidas en él, directamente desde la interfaz del centro de software de gnome.

Es posible realizar las mismas operaciones que vimos anteriormente desde la línea de comandos usando el comando flatpak. Al usar el flatpak utilidad, es posible decidir si la instalación debe ser global o solo para un usuario específico. En el último caso, no se requieren privilegios administrativos y el --user Se debe proporcionar la opción al comando. Para agregar el repositorio flathub globalmente simplemente ejecutamos:

$ sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Ahora podemos instalar nuestro paquete. Debemos proporcionar la ruta completa del paquete y también el nombre del repositorio remoto desde el que queremos instalar. Por ejemplo para instalar neovim ejecutaríamos:

$ sudo flatpak install flathub io.neovim.nvim
Required runtime for io.neovim.nvim/x86_64/stable (runtime/org.freedesktop.Sdk/x86_64/18.08) found in remote flathub
Do you want to install it? [y/n]:

Si respondemos afirmativamente el paquete y su runtime serán descargados e instalados en nuestro sistema. Si quieres saber más sobre la tecnología flatpak, puedes consultar nuestro artículo más detallado sobre el tema

Conclusiones

En este tutorial vimos varias formas de instalar software en sistemas RHEL 8/CentOS 8 Linux. El software está organizado en paquetes, que en un nivel bajo son administrados por el administrador de paquetes rpm que no puede resolver las dependencias automáticamente. Para proporcionar esta función y más, se utiliza el programa dnf, que funciona sobre rpm. Finalmente, aprendimos a instalar software de espacio aislado usando una tecnología relativamente reciente, flatpak.


Cent OS
  1. Cómo instalar un archivo RPM en el sistema operativo Linux (CentOS, RHEL y Fedora)

  2. Cómo instalar redmine en RHEL 8 / CentOS 8 Linux

  3. Cómo instalar y configurar R en el sistema RHEL 8/CentOS 8 Linux

  4. Cómo instalar un paquete RPM en un directorio diferente en CentOS/RHEL/Fedora

  5. Cómo instalar paquetes usando dnf en CentOS/RHEL 8

Cómo instalar archivos RPM (paquetes) en CentOS Linux

Cómo instalar RPM en CentOS

Cómo instalar Cockpit en CentOS 8 / RHEL 8

Cómo instalar y administrar paquetes en CentOS usando RPM

Cómo instalar paquetes RPM en CentOS 8

Cómo instalar paquetes RPM en CentOS, RHEL y Fedora

    Requisitos de software y convenciones de la línea de comandos de Linux
    Categoría Requisitos, convenciones o versión de software utilizada
    Sistema RHEL 8 / CentOS 8
    Software Las utilidades utilizadas en este tutorial están instaladas de forma predeterminada, no es necesario software adicional.
    Otro Permiso para ejecutar el comando con privilegios de root.
    Convenciones # – requiere que los comandos de Linux dados se ejecuten con privilegios de root, ya sea directamente como usuario root o mediante el uso de sudo comando
    $ – requiere que los comandos de Linux dados se ejecuten como un usuario normal sin privilegios