Passer au contenu principal

Action : Installer des packages Linux

Install one or more packages on Linux devices through an automation using Apt, Yum, Pacman, Snap, or Flatpak. Works across a mixed-distro inventory.

Introduction

Installez un ou plusieurs packages sur un appareil Linux dans le cadre d'une automatisation. Utilisez cette action pour déployer des outils sur l'ensemble de votre inventaire, configurer un ensemble de packages de base sur les nouveaux appareils, ou installer des logiciels selon un calendrier sans toucher manuellement à chaque machine.

L'action prend en charge cinq gestionnaires de packages : Apt, Yum, Pacman, Snap, et Flatpak. Choisissez-en un par étape, ou sélectionnez Natif/par défaut pour laisser Level détecter le bon gestionnaire sur chaque appareil au moment de l'exécution, afin qu'une seule étape puisse couvrir un inventaire de distributions mixtes.


⚙️ PRÉREQUIS :

  • Un appareil Linux sous gestion.

  • Le gestionnaire de packages que vous sélectionnez doit être présent sur l'appareil. Sélectionner Apt sur une machine Arch, par exemple, fait échouer l'étape. Natif/par défaut détecte un gestionnaire installé à la place, contournant ainsi ce problème.

  • Pour Flatpak, le flathub le dépôt distant doit être configuré sur l'appareil.


Gestionnaires de packages pris en charge

Sélectionnez le gestionnaire dans la liste déroulante Gestionnaire de packages dans la liste déroulante. Choisissez Natif/par défaut pour laisser l'agent détecter le gestionnaire installé sur chaque appareil au moment de l'exécution, ou nommez-en un explicitement.

ℹ️ REMARQUE : Natif/par défaut détecte le gestionnaire sur l'appareil en vérifiant dans cet ordre : apt, yum, pacman, snap, flatpak. Il sélectionne le premier présent. Nommez vos packages dans le format attendu par le gestionnaire détecté, ainsi Natif/par défaut fonctionne mieux lorsqu'une étape cible des appareils qui utilisent tous le même gestionnaire.

Gestionnaire

Distributions typiques

Format du nom de package

Natif/par défaut

N'importe quelle distribution Linux prise en charge

Détecté à l'exécution (voir la remarque)

Apt

Debian, Ubuntu, Linux Mint, Raspberry Pi OS

Nom du package Debian (apt-cache search, dpkg -l)

Yum

RHEL, CentOS, Rocky, AlmaLinux, Fedora, Photon OS

Nom RPM

Pacman

Arch Linux

Nom dans la base de données de synchronisation (pacman -Ss)

Snap

Toute distribution avec snapd

Nom Snap

Flatpak

Toute distribution avec Flatpak

Identifiant d'application Flathub (ex. org.gnome.Calculator)

ℹ️ REMARQUE : L'option Yum couvre l'option yum, dnf, et tdnf. L'agent détecte le binaire que l'appareil utilise réellement et exécute le bon, vous sélectionnez donc Yum quel que soit l'appareil RHEL (yum/dnf) ou Photon OS (tdnf).


Ajouter l'action Installer un package Linux

  1. Sur un canevas d'automatisation vide, sélectionnez Ajouter une action. Si des actions sont déjà présentes, cliquez sur le bouton intégré + à l'endroit où vous souhaitez l'étape, puis choisissez Ajouter une autre action.

  2. Sous Gestion des applications, sélectionnez Installer un package Linux. Le panneau d'action s'ouvre avec Type d'action (pré-défini sur Installer un package Linux) et Configuration de l'étape.

  3. Choisissez un Gestionnaire de packages.

  4. Saisissez un ou plusieurs noms dans Package(s). Appuyez sur Tab ou ajoutez une virgule après chaque nom pour ajouter le suivant.

  5. Cliquez sur Enregistrer.

Install Linux Package Action

Gestionnaire de packages

Obligatoire. Définit l'outil qui s'exécute sur l'appareil et le format de nom attendu par le champ Package(s) attend comme format.

La liste déroulante propose Natif/par défaut, Apt, Yum, Pacman, Snap, et Flatpak. Choisissez Natif/par défaut pour détecter le gestionnaire par appareil (voir le tableau ci-dessus). Consultez le tableau pour savoir ce qu'attend chaque option explicite.


Package(s)

Obligatoire. Les noms des packages à installer, dans le format utilisé par le gestionnaire sélectionné.

L'indication dans le champ indique «Utilisez le nom du package tel qu'il apparaît dans le dépôt de votre distribution», ce qui est exact pour Apt, Yum et Pacman. Snap et Flatpak sont différents :

  • Snap prend le nom snap (par exemple, code).

  • Flatpak prend l'identifiant d'application Flathub (par exemple, org.gnome.Calculator), pas le nom convivial de l'application.

💡 ASTUCE : Le comportement en cas de nom incorrect dépend du nombre de packages installés. Dans une installation multi-packages, un nom inexistant est signalé comme «introuvable, ignoré» et le reste de l'action continue (comme pour les actions Winget et Homebrew). L'installation d'un seul package qui échoue à la vérification préalable fait échouer toute l'action avec une erreur «package introuvable». Cette vérification préalable s'applique à Apt, Yum et Pacman. Snap et Flatpak affichent l'erreur de l'outil sous-jacent à la place.


Spécifier une version exacte

Par défaut, l'action installe la dernière version disponible. Apt et Yum vous permettent d'épingler une version spécifique en l'écrivant directement dans le nom du package. Pacman, Snap et Flatpak n'acceptent pas de chaîne de version dans ce champ.

Apt

Les packages sont identifiés par leur nom de package Debian tel qu'affiché par apt-cache search ou dpkg -l.

Format

Exemple

Résultat

name

nginx

Dernière version disponible

name=version

nginx=1.24.0-2

Chaîne de version exacte

name:arch

libc6:i386

Architecture spécifique (multi-architecture)

name/release

nginx/bookworm-backports

Depuis une version ou une suite spécifique

Yum / DNF / TDNF

Les packages sont identifiés par leur nom RPM.

Format

Exemple

Résultat

name

httpd

Dernière version disponible

name-version

httpd-2.4.57

Version spécifique

name-version-release

httpd-2.4.57-5.el9

Version et étiquette de révision

name.arch

glibc.i686

Architecture spécifique

name-version-release.arch

httpd-2.4.57-5.el9.x86_64

NEVRA entièrement qualifié

Pacman

Les packages sont identifiés par leur nom dans la base de données de synchronisation tel qu'affiché par pacman -Ss.

Format

Exemple

Résultat

name

nginx

Dernière version depuis le dépôt à priorité la plus élevée

repo/name

extra/nginx

Depuis un dépôt spécifique

ℹ️ REMARQUE : Pacman ne prend pas en charge l'installation d'une version spécifique. Il installe toujours ce que les dépôts configurés contiennent actuellement.


Fonctionnement de l'action

Quelques comportements s'appliquent à chaque installation, quel que soit le gestionnaire :

  • Linux uniquement. Exécutée sur un appareil Windows ou macOS, l'étape renvoie «action non prise en charge». Le reste de l'exécution de l'automatisation continue.

  • Le gestionnaire sélectionné doit être présent. Si le binaire n'est pas installé sur l'appareil, l'étape échoue avec «Gestionnaire de packages non pris en charge».

  • Délai d'attente de 3 heures sur l'ensemble de l'action.

  • Sortie en direct. La sortie de la commande est diffusée ligne par ligne dans le journal d'exécution en temps réel, vous verrez donc chaque * Installing <pkg> ligne par ligne pendant que le gestionnaire fonctionne.

Pour Apt, Yum et Pacman, Level attend le verrou du gestionnaire de packages si un autre processus le détient, avec des tentatives de 1 seconde jusqu'à 30 secondes entre les vérifications pendant 1 heure au maximum, puis abandonne avec «Un autre processus du gestionnaire de packages est en cours d'exécution». Snap et Flatpak gèrent leur propre file d'attente et n'attendent pas de verrou.

Voici ce qui s'exécute par gestionnaire et les préparations effectuées par Level au préalable :

Gestionnaire

Commande d'installation

Vérifications préalables et remarques

Apt

apt-get -yq install <pkg> puis apt-get -yq autoremove --purge

Exécute apt-get clean et dpkg --configure -a d'abord pour effacer un état défaillant. S'exécute avec DEBIAN_FRONTEND=noninteractive. Les anciens noyaux sont automatiquement supprimés et purgés.

Yum

yum install -y --noautoremove <pkg>

Vide d'abord le cache des packages. Détecte automatiquement yum/dnf/tdnf ; sur TDNF, l'indicateur --noautoremove est supprimé automatiquement.

Pacman

pacman -S --noconfirm --needed <pkg>

Supprime un fichier db.lck, puis exécute pacman -Sy (synchronisation de la base de données) et -Sc (nettoyage du cache) avant l'installation.

Snap

snap install <pkg>

Un package à la fois. Aucune vérification préalable «déjà installé». Délai d'attente d'installation par package de 60 minutes en plus du plafond de 3 heures.

Flatpak

flatpak install -y --noninteractive flathub <pkg>

Installation à l'échelle du système (l'agent s'exécute en tant que root), et non par utilisateur, depuis le flathub distant. Délai d'attente par package de 60 minutes.

⚠️ AVERTISSEMENT : Ces actions ne désactivent pas le système de mise à jour automatique de l'appareil (tel que unattended-upgrades). Une installation planifiée peut toujours entrer en conflit avec les mises à jour en arrière-plan de l'appareil. L'attente du verrou mentionnée ci-dessus empêche les deux de se chevaucher, sans arrêt forcé de la mise à jour automatique.


Conditions

La section Conditions restreint le moment où cette action s'exécute en fonction des attributs de l'appareil ou du résultat d'une action précédente. Développez-la pour ajouter des conditions.

Consultez Conditions d'action pour la référence complète sur les types de conditions, les opérateurs et les valeurs.

💡 ASTUCE : Dans une automatisation multi-distributions, conditionnez chaque étape d'installation à la distribution ou à l'architecture de l'appareil afin que le bon gestionnaire s'exécute sur les bonnes machines et que les autres soient ignorées proprement.


Options supplémentaires

Développez Options supplémentaires pour les paramètres d'exécution, notamment le nom de l'action, le comportement en cas d'échec, les variables de sortie et les nouvelles tentatives.

Consultez Présentation des actions pour la référence complète sur les options disponibles sur chaque action.


FAQ

  • Quel gestionnaire de packages dois-je choisir ? Celui présent sur l'appareil : Apt pour Debian et Ubuntu, Yum pour les familles RHEL et Photon, Pacman pour Arch, Snap ou Flatpak là où vous avez standardisé sur ceux-ci. Si une étape cible un mélange, choisissez Natif/par défaut et Level détecte le gestionnaire par appareil (il vérifie apt, yum, pacman, snap, flatpak dans cet ordre et utilise le premier présent).

  • Une seule action peut-elle installer des packages sur différentes distributions ? Oui, avec Natif/par défaut: une seule étape détecte le gestionnaire sur chaque appareil. Assurez-vous simplement que les noms de packages que vous saisissez existent sous celui qui est détecté. Si vous choisissez un gestionnaire spécifique à la place, il ne s'exécute que sur les appareils qui en disposent.

  • Comment installer une version spécifique plutôt que la dernière ? Écrivez la version dans le nom du package. Apt utilise name=version, Yum utilise name-version (et les formes NEVRA plus longues), Pacman ne prend pas en charge l'épinglage de version, et Snap et Flatpak n'acceptent pas de chaîne de version ici. L'épinglage de version fonctionne uniquement à l'installation, pas à la mise à niveau. Voir Spécifier une version exacte ci-dessus.

  • Que se passe-t-il si un nom de package n'existe pas ? Cela dépend du nombre de packages que vous installez. Dans une installation multi-packages, un nom manquant est signalé comme «introuvable, ignoré» et les autres continuent. L'installation d'un seul package qui échoue à la vérification préalable fait échouer l'action avec une erreur «package introuvable». La vérification préalable couvre Apt, Yum et Pacman ; Snap et Flatpak affichent l'erreur propre à l'outil.

  • Le package est déjà installé. L'action échoue-t-elle ? Non. Apt, Yum et Pacman ignorent les packages déjà présents. Snap exécute la commande d'installation sans vérification préalable, ce qui est sans effet s'il est déjà installé.

  • Quelle est la différence entre cette action et Installer les mises à jour Linux ? Installer les mises à jour Linux applique les correctifs OS et de sécurité en attente sur l'ensemble du système. Cette action installe les packages nommés que vous spécifiez. Utilisez les mises à jour pour les correctifs et cette action pour déployer des logiciels spécifiques.

  • L'appareil doit-il être en ligne ? Oui, pour que l'action s'exécute. Si l'appareil est hors ligne au déclenchement de l'automatisation, l'étape est mise en file d'attente et reprend une fois l'appareil reconnecté.

  • Qui peut ajouter ou modifier cette action ? Les techniciens autorisés à modifier les automatisations dans le groupe concerné. Voir Espace de travail → Autorisations pour le contrôle d'accès.

Avez-vous trouvé la réponse à votre question ?