GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo trabajar con grupos de paquetes dnf

Dnf es el administrador de paquetes de alto nivel predeterminado en la familia de distribuciones de Red Hat, que incluye Fedora, Red Hat Enterprise Linux y todos sus clones. Es el sucesor de Yum y, de hecho, usar el comando yum en versiones recientes de las distribuciones mencionadas anteriormente es solo otra forma de llamar a dnf. Dnf tiene muchas características agradables
y complementos que nos ayudan a instalar, actualizar y eliminar software empaquetado en el formato ".rpm". En este tutorial exploramos los grupos de paquetes dnf y aprendemos a manejarlos.

En este tutorial aprenderás :

  • Qué es un grupo de paquetes
  • Cómo obtener información sobre un grupo de paquetes
  • Cómo enumerar todos los grupos de paquetes disponibles
  • Cómo instalar, actualizar y eliminar un grupo de paquetes

Cómo trabajar con grupos de paquetes dnf

Requisitos de software y convenciones utilizadas

¿Qué es un grupo de paquetes?

Comencemos definiendo qué es un grupo de paquetes. Un grupo de paquetes es básicamente un paquete "virtual". Aquí lo llamamos "virtual" porque no proporciona un software específico per se, sino que hace referencia a otros paquetes "reales". Podemos
usar grupos de paquetes para instalar un "conjunto" de paquetes con un solo comando. Digamos, por ejemplo, que necesitamos instalar los paquetes necesarios para trabajar con máquinas virtuales kvm en Fedora:en lugar de instalar cada paquete individualmente, podemos simplemente instalar el grupo de paquetes de "virtualización", lo que hará que todo el software necesario se instale en nuestro sistema .

Obtener información sobre un grupo de paquetes

Antes de instalar un grupo de paquetes, es posible que queramos ver qué paquetes extraerá. Para realizar esta tarea, todo lo que tenemos que hacer es usar la dnf group info comando, pasando el nombre del grupo de paquetes que queremos inspeccionar como su argumento. Para ver lo que @virtualization los grupos de paquetes contienen, por ejemplo, ejecutaríamos:

$ dnf group info virtualization

Aquí está el resultado del comando anterior en un sistema Fedora 34:

Group: Virtualization
 Description: These packages provide a graphical virtualization environment.
 Mandatory Packages:
   virt-install
 Default Packages:
   libvirt-daemon-config-network
   libvirt-daemon-kvm
   qemu-kvm
   virt-manager
   virt-viewer
 Optional Packages:
   libguestfs-tools
   python3-libguestfs
   virt-top

Podemos aumentar la verbosidad del comando y recibir información más detallada invocándolo con -v (abreviatura de --verbose ) opción:

Group: Virtualization
 Group-Id: virtualization
 Description: These packages provide a graphical virtualization environment.
 Mandatory Packages:
   virt-install-3.2.0-3.fc34.noarch                                                                 @System
 Default Packages:
   libvirt-daemon-config-network-7.0.0-4.fc34.x86_64                                                @System
   libvirt-daemon-kvm-7.0.0-4.fc34.x86_64                                                           @System
   qemu-kvm-2:5.2.0-7.fc34.x86_64                                                                   @System
   virt-manager-3.2.0-3.fc34.noarch                                                                 @System
   virt-viewer-9.0-3.fc34.x86_64                                                                    @System
 Optional Packages:
   libguestfs-tools
   python3-libguestfs-1:1.45.4-1.fc34.x86_64                                                        updates
   virt-top-1.0.9-17.fc34.x86_64                                                                    fedora

Lo primero que podemos notar en la salida es el nombre y el id del grupo de paquetes, en este caso “Virtualización” y “virtualización”, respectivamente. Tras ellos, podemos leer una breve descripción del grupo de paquetes y su propósito,
y finalmente la lista real de los paquetes incluidos en él. Podemos ver que los paquetes se dividen en tres secciones principales:

  • Obligatorio
  • Predeterminado
  • Opcional

Los paquetes marcados como "Obligatorio" y "Predeterminado" siempre se instalarán, mientras que los marcados como "Opcionales" se instalarán solo si se especifica. En aras de la exhaustividad, debemos mencionar que existe otra sección, que no se utiliza en este caso:Condicional . Los paquetes que forman parte de la sección "Condicional" se instalan solo si los paquetes que requieren ya están instalados.

En ciertos casos, algunos paquetes que forman parte de un grupo de paquetes ya pueden estar presentes en el sistema. Cuando ejecutamos la group info comando con -v opción, como hicimos anteriormente, los paquetes que forman parte del grupo y que aún no están instalados se distinguirán fácilmente, ya que se resaltarán en la lista. Aquí está el resultado de la virtualización de información de grupo dnf -v group info virtualization comando después del virt-viewer el paquete se instaló singularmente:

dnf -v group info virtualization salida de comando

Lista de todos los grupos de paquetes disponibles

Para listar todos los grupos de paquetes disponibles en los repositorios de nuestra distribución todo lo que tenemos que hacer es ejecutar el siguiente comando:

$ dnf group list

El comando anterior devuelve la lista de todos los grupos conocidos. Sin embargo podemos añadir una serie de opciones para modificar su comportamiento. Por defecto, los llamados grupos ocultos no están incluidos en la lista. Para que aparezcan, todo lo que
necesitamos hacer es agregar el --hidden opción:

$ dnf group list --hidden

Si solo queremos obtener la lista de todos los instalados grupos de paquetes, en su lugar, podemos usar el --installed opción:

$ dnf group list --installed

Instalar, actualizar y eliminar un grupo de paquetes

Entonces, ¿cómo podemos instalar un grupo de paquetes? Hay dos formas principales:podemos especificar el nombre del paquete con el prefijo @ o use el dnf group install comando, como ya vimos. Los siguientes comandos son equivalentes:

$ sudo dnf install @virtualization
$ sudo dnf group install virtualization

Como ya dijimos, solo los paquetes "Obligatorio" y "Predeterminado" se instalan por defecto. Sin embargo, este comportamiento predeterminado se puede modificar mediante el uso de group_package_types opción dnf, ya sea desde la línea de comando o en el archivo de configuración dnf
. Hagamos un ejemplo. Supongamos que queremos instalar solo los paquetes que forman parte de la sección "Obligatoria" de un grupo de paquetes, podríamos ejecutar el siguiente comando:

$ sudo dnf --setopt=group_package_types="mandatory" group install Virtualization

Si no queremos especificar la opción cada vez que ejecutamos un comando, podemos configurarlo permanentemente en el archivo de configuración dnf, /etc/dnf/dnf.conf :

[main]
# Install only Mandatory packages from package groups
group_package_types=mandatory

Si solo queremos que se incluyan paquetes en la sección "Opcional" de un grupo de paquetes, también podríamos agregar el --with-optional indicador de línea de comando al instalar un grupo de paquetes:

$ sudo dnf group install --with-optional virtualization

También podemos tener la oportunidad de actualizar un grupo de paquetes. Cuando lo hagamos, todos los paquetes que forman parte del grupo se actualizarán junto con el grupo de paquetes en sí:esto podría causar que se instalen nuevos paquetes
si se agregaron al grupo, o se eliminaron si no se agregaron. ya no forman parte de un grupo y el usuario no las ha instalado explícitamente. Para actualizar un grupo de paquetes usamos la group upgrade comando, entonces, por ejemplo,
para actualizar el paquete de “Virtualización” ejecutaríamos:

$ sudo dnf group upgrade virtualization

Dnf también proporciona un comando para eliminar un grupo de paquetes instalado:group remove . El comando eliminará todo paquetes que forman parte de un grupo del sistema operativo, excepto aquellos que forman parte de otro grupo de paquetes, o aquellos instalados explícitamente por el usuario. Para eliminar el grupo de paquetes "Virtualización", ejecutaríamos:

$ sudo dnf group remove virtualization

Conclusiones

En este tutorial aprendimos sobre los grupos de paquetes. Vimos cómo obtener información sobre un grupo de paquetes específico en las distribuciones que usan dnf como administrador de paquetes, como Fedora y Rhel, cómo los paquetes que son miembros de un grupo de paquetes se dividen en secciones, cuáles de ellos están instalados por defecto y cómo podemos modificar este
comportamiento. Finalmente, aprendimos cómo instalar, actualizar y eliminar un grupo de paquetes.


Linux
  1. Cómo configurar Nginx para trabajar con PHP a través de PHP-FPM

  2. Agregar usuario a grupo en Linux, cómo hacerlo (con ejemplos)

  3. Cómo trabajar con usuarios y grupos en Linux

  4. ¿Cómo hacer que Vim funcione correctamente con Tmux?

  5. ¿Capturar grupos con Awk o Grep?

Cómo convertir paquetes de Linux con Alien

Cómo crear un grupo de volúmenes en Linux con LVM

Cómo trabajar con Ansible Provisioner en Vagrant

Cómo actualizar Fedora 35 a Fedora 36 con GNOME 42

Modificar grupos en Linux con el comando groupmod

Eliminar grupos en Linux con el comando groupdel

    Requisitos de software y convenciones de la línea de comandos de Linux
    Categoría Requisitos, convenciones o versión de software utilizada
    Sistema Distribuciones que usan dnf como administrador de paquetes
    Software dnf
    Otro Ninguno
    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