Gestion des paquets Linux avec dnf


  • Français


  • L’installation d’une application sur un système informatique est assez simple. Vous copiez les fichiers d’une archive (comme un fichier .zip) sur l’ordinateur cible à un endroit où le système d’exploitation s’attend à ce qu’il y ait des applications. Parce que beaucoup d’entre nous sont habitués à avoir des “assistants” d’installation sophistiqués pour nous aider à installer des logiciels sur nos ordinateurs, le processus semble être techniquement plus complexe qu’il ne l’est.

    Quoi est complexe, cependant, est la question de ce qui constitue une demande. Ce que les utilisateurs considèrent comme une application unique contient en fait du code emprunté à des bibliothèques logicielles (c’est-à-dire, .so fichiers sous Linux, .dll fichiers sous Windows, et .dylib sur macOS) dispersés dans un système d’exploitation.

    Pour que les utilisateurs n’aient pas à se soucier de cette véritable matrice de code interdépendant, Linux utilise un système de gestion de colis pour suivre quelle application a besoin de quelle bibliothèque, et quelle bibliothèque ou application a des mises à jour de sécurité ou de fonctionnalités, et quels fichiers de données supplémentaires ont été installés avec chaque titre de logiciel. Un gestionnaire de packages est essentiellement un assistant d’installation. Ils sont faciles à utiliser, ils fournissent à la fois des interfaces graphiques et des interfaces basées sur des terminaux, et ils vous facilitent la vie. Mieux vous connaissez le gestionnaire de paquets de votre distribution, plus votre vie devient facile.

    Installation d’applications sous Linux

    Si vous êtes un utilisateur de bureau occasionnel qui souhaite installer une application sur Linux, vous recherchez peut-être Logiciel GNOME, un navigateur d’applications de bureau.

    Cela fonctionne comme prévu : vous cliquez sur son interface jusqu’à ce que vous trouviez une application qui vous semble utile, puis vous cliquez sur le bouton Installer bouton.

    Alternativement, vous pouvez ouvrir .rpm ou alors .flatpakref packages téléchargés à partir du Web dans le logiciel GNOME pour qu’il les installe pour vous.

    Si vous êtes enclin à contrôler votre ordinateur avec des commandes tapées, lisez la suite !

    Trouver un logiciel avec dnf

    Avant de pouvoir installer une application, vous devrez peut-être confirmer qu’elle existe sur les serveurs de votre distribution. Habituellement, la recherche du nom commun d’une application avec dnf suffit. Par exemple, disons que vous avez récemment lu un article sur Cockpit et que vous décidez de l’essayer. Vous pouvez rechercher cockpit pour vérifier que votre distribution l’inclut :

    $ dnf search cockpit
     Last metadata expiration check: 0:01:46 ago on Tue 18 May 2021 19:18:15 NZST.
     ==== Name Exactly Matched: cockpit ====
     cockpit.x86_64 : Web Console for Linux servers

    ==== Name & Summary Matched: cockpit ==
     cockpit-bridge.x86_64 : Cockpit bridge server-side component
     cockpit-composer.noarch : Composer GUI for use with Cockpit
     [...]

    Il y a une correspondance exacte. Le package répertorié comme correspondance est appelé cockpit.x86_64, mais le .x86_64 une partie du nom ne désigne que l’architecture du processeur avec laquelle il est compatible. Par défaut, votre système installe des packages avec des architectures de CPU correspondantes, vous pouvez donc ignorer cette extension. Par conséquent, vous avez confirmé que le package que vous recherchez s’appelle bien simplement cockpit.

    Vous pouvez maintenant l’installer en toute confiance avec dnf install. Cette étape nécessite des privilèges d’administrateur :

    $ sudo dnf install cockpit

    Le plus souvent, c’est le cas typique dnf workflow : rechercher et installer.

    Parfois, cependant, les résultats de dnf search ne sont pas clairs pour vous, ou vous voulez plus d’informations sur un package que son nom commun. Il y a quelques pertinents dnf sous-commandes, selon les informations que vous recherchez.

    Si vous sentez que votre recherche vous a Fermer au package que vous souhaitez, mais vous n’êtes pas encore sûr, il est souvent utile de jeter un œil aux métadonnées du package, telles que l’URL et la description du projet. Pour obtenir ces informations, utilisez la fonction agréablement intuitive dnf info commander:

    $ dnf info terminator
    Available Packages
    Name         : terminator
    Version      : 1.92
    Release      : 2.el8
    Architecture : noarch
    Size         : 526 k
    Source       : terminator-1.92-2.el8.src.rpm
    Repository   : epel
    Summary      : Store and run multiple GNOME terminals in one window
    URL          : https://github.com/gnome-terminator
    License      : GPLv2
    Description  : Multiple GNOME terminals in one window.  This is a project to produce
                 : an efficient way of filling a large area of screen space with
                 : terminals. This is done by splitting the window into a resizeable
                 : grid of terminals. As such, you can  produce a very flexible
                 : arrangements of terminals for different tasks.

    Ce vidage d’informations vous indique la version du package disponible, quel référentiel enregistré avec votre système le fournit, le site Web du projet et une longue description de ce qu’il fait.

    Quel package fournit un fichier ?

    Les noms de packages ne correspondent pas toujours à ce que vous recherchez. Par exemple, supposons que vous lisiez une documentation vous indiquant que vous devez installer quelque chose appelé qmake-qt5:

    $ dnf search qmake-qt5
    No matches found.

    le dnf la base de données est vaste, vous n’avez donc pas à vous limiter à des recherches de correspondances exactes. Vous pouvez utiliser le dnf provides commande pour savoir si quelque chose fournit ce que vous recherchez dans le cadre d’un package plus vaste :

    $ dnf provides qmake-qt5
    qt5-qtbase-devel-5.12.5-8.el8.i686 : Development files for qt5-qtbase
    Repo        : appstream
    Matched from:
    Filename    : /usr/bin/qmake-qt5

    qt5-qtbase-devel-5.15.2-3.el8.x86_64 : Development files for qt5-qtbase
    Repo        : appstream
    Matched from:
    Filename    : /usr/bin/qmake-qt5

    Cela confirme que l’application qmake-qt5 fait partie d’un package nommé qt5-qtbase-devel. Il vous indique également que l’application est installée sur /usr/bin, vous savez donc exactement où le trouver une fois installé.

    Quels fichiers sont inclus dans un package ?

    Il y a des moments où je me retrouve à approcher dnf sous un tout autre angle. Parfois, j’ai déjà confirmé qu’une application est installée sur mon système ; Je n’arrive pas à comprendre comment je l’ai eu. D’autres fois, je sais qu’un package spécifique est installé, mais je ne sais pas exactement ce que ce package a mis sur mon système.

    Si jamais vous avez besoin de « reverse engineering » de la charge utile d’un package, vous pouvez utiliser le dnf repoquery commande avec le --list option. Cela examine les métadonnées du dépôt sur un package et renvoie une liste de tous les fichiers fournis par ce package :

    $ dnf repoquery --list qt5-qtbase-devel
    /usr/bin/fixqt4headers.pl
    /usr/bin/moc-qt5
    /usr/bin/qdbuscpp2xml-qt5
    /usr/bin/qdbusxml2cpp-qt5
    /usr/bin/qlalr
    /usr/bin/qmake-qt5
    /usr/bin/qvkgen
    /usr/bin/rcc-qt5
    [...]

    Ces listes peuvent devenir longues, il est donc utile de transmettre la commande à travers less ou votre téléavertisseur préféré.

    Supprimer une application

    Si vous décidez que vous n’avez plus besoin d’une application installée sur votre système, vous pouvez utiliser dnf remove pour le désinstaller, tous les fichiers qui ont été installés dans le cadre de son package et toutes les dépendances qui ne sont plus nécessaires :

    $ dnf remove bigapp

    Parfois, les dépendances sont installées avec une application et sont ensuite trouvées utiles par une autre application que vous installez. Dans le cas où deux packages nécessitent la même dépendance, dnf remove Est-ce que ne pas supprimer la dépendance. Il n’est pas rare de se retrouver avec un paquet égaré ici et là après avoir installé et désinstallé de nombreuses applications. Environ une fois par an, j’effectue une dnf autoremove pour effacer tous les paquets inutilisés :

    $ dnf autoremove

    Ce n’est pas nécessaire, mais c’est une étape de nettoyage qui me permet de me sentir mieux avec mon ordinateur.

    Apprendre à connaître dnf

    Plus vous en savez sur le fonctionnement de votre gestionnaire de packages, plus il vous est facile d’installer et d’interroger des applications si nécessaire. Même si vous n’êtes pas un habitué dnf utilisateur, il peut être utile de le savoir lorsque vous vous retrouvez en interface avec une distribution basée sur RPM.

    Diplômé de yum, l’un de mes gestionnaires de paquets préférés est le dnf commander. Bien que je n’aime pas toutes ses sous-commandes, je trouve que c’est l’un des systèmes de gestion de paquets les plus robustes. Téléchargez notre dnf aide-mémoire pour vous habituer à la commande et n’ayez pas peur d’essayer de nouvelles astuces avec. Une fois que vous vous y serez familiarisé, vous aurez peut-être du mal à utiliser autre chose.

    Source

    Houssen Moshinaly

    Pour contacter personnellement le taulier :

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

    Copy code