Zum Hauptinhalt springen

Aktion: Linux-Pakete installieren

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

Einführung

Installieren Sie ein oder mehrere Pakete auf einem Linux-Gerät im Rahmen einer Automatisierung. Verwenden Sie diese Aktion, um Werkzeuge in Ihrem Inventar auszurollen, einen Basissatz von Paketen auf neuen Geräten einzurichten oder Software planmäßig zu installieren, ohne jede Maschine manuell anzufassen.

Die Aktion unterstützt fünf Paketmanager: Apt, Yum, Pacman, Snapund Flatpak. Wählen Sie einen pro Schritt oder wählen Sie Nativ/Standard , damit Level zur Laufzeit den richtigen Manager auf jedem Gerät erkennt, sodass ein einzelner Schritt ein gemischtes Inventar verschiedener Distributionen abdecken kann.


⚙️ VORAUSSETZUNGEN:

  • Ein Linux-Gerät unter Verwaltung.

  • Der von Ihnen gewählte Paketmanager muss auf dem Gerät vorhanden sein. Die Auswahl von Apt auf einer Arch-Box schlägt den Schritt beispielsweise fehl. Nativ/Standard erkennt stattdessen einen installierten Manager und umgeht damit dieses Problem.

  • Für Flatpak, der flathub Remote muss auf dem Gerät konfiguriert sein.


Unterstützte Paketmanager

Wählen Sie den Manager aus dem Paketmanager Dropdown-Menü. Wählen Sie Nativ/Standard , damit der Agent den auf jedem Gerät installierten Manager zur Laufzeit erkennt, oder geben Sie einen explizit an.

ℹ️ HINWEIS: Nativ/Standard erkennt den Manager auf dem Gerät und prüft in dieser Reihenfolge: apt, yum, pacman, snap, flatpak. Der erste vorhandene wird ausgewählt. Benennen Sie Ihre Pakete in dem Format, das der erkannte Manager erwartet, sodass Nativ/Standard am besten funktioniert, wenn ein Schritt auf Geräte abzielt, die alle denselben Manager verwenden.

Manager

Typische Distributionen

Paketnamensformat

Nativ/Standard

Jede unterstützte Linux-Distribution

Wird zur Laufzeit erkannt (siehe Hinweis)

Apt

Debian, Ubuntu, Linux Mint, Raspberry Pi OS

Debian-Paketname (apt-cache search, dpkg -l)

Yum

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

RPM-Name

Pacman

Arch Linux

Sync-Datenbankname (pacman -Ss)

Snap

Jede Distribution mit snapd

Snap-Name

Flatpak

Jede Distribution mit Flatpak

Flathub-Anwendungs-ID (z. B. org.gnome.Calculator)

ℹ️ HINWEIS: Die Yum Option umfasst yum, dnfund tdnf. Der Agent erkennt, welche Binärdatei das Gerät tatsächlich verwendet, und führt die richtige aus, sodass Sie Yum , unabhängig davon, ob das Gerät RHEL (yum/dnf) oder Photon OS (tdnf) verwendet.


Die Aktion „Linux-Paket installieren" hinzufügen

  1. Wählen Sie auf einer leeren Automatisierungsleinwand Eine Aktion hinzufügen. Wenn bereits Aktionen vorhanden sind, klicken Sie auf das eingebettete + , wo der Schritt eingefügt werden soll, und wählen Sie dann Eine weitere Aktion hinzufügen.

  2. Unter App-Verwaltung, wählen Sie Linux-Paket installieren. Das Aktionsfeld öffnet sich mit Aktionstyp (voreingestellt auf „Linux-Paket installieren") und Schrittkonfiguration.

  3. Wählen Sie einen Paketmanager.

  4. Geben Sie einen oder mehrere Namen in Paket(e). Drücken Sie Tab oder fügen Sie nach jedem Namen ein Komma ein, um den nächsten hinzuzufügen.

  5. Klicken Sie auf Speichern.

Install Linux Package Action

Paketmanager

Erforderlich. Legt fest, welches Tool auf dem Gerät ausgeführt wird und welches Namensformat das Paket(e) Feld erwartet.

Das Dropdown-Menü listet Nativ/Standard, Apt, Yum, Pacman, Snapund Flatpak. Wählen Sie Nativ/Standard , um den Manager pro Gerät zu erkennen (siehe die Tabelle oben). Entnehmen Sie der Tabelle, was jede explizite Option erwartet.


Paket(e)

Erforderlich. Die zu installierenden Paketnamen im Format, das der ausgewählte Manager verwendet.

Der Hinweis im Feld lautet „Verwenden Sie den Paketnamen, wie er im Repository Ihrer Distribution erscheint", was für Apt, Yum und Pacman korrekt ist. Snap und Flatpak sind anders:

  • Snap verwendet den Snap-Namen (zum Beispiel code).

  • Flatpak verwendet die Flathub-Anwendungs-ID (zum Beispiel org.gnome.Calculator), nicht den benutzerfreundlichen App-Namen.

💡 TIPP: Das Verhalten bei einem ungültigen Namen hängt davon ab, wie viele Pakete Sie installieren. Bei einer Mehrfachpaketinstallation wird ein nicht existierender Name als „nicht gefunden, wird übersprungen" gemeldet und die Aktion wird fortgesetzt (genauso wie bei den Winget- und Homebrew-Aktionen). Wenn ein einzelnes Paket den Vorcheck nicht besteht, schlägt die gesamte Aktion mit dem Fehler „Paket nicht gefunden" fehl. Dieser Vorcheck gilt für Apt, Yum und Pacman. Snap und Flatpak geben stattdessen den Fehler des jeweiligen Tools aus.


Eine genaue Version angeben

Standardmäßig installiert die Aktion die neueste verfügbare Version. Apt und Yum ermöglichen es Ihnen, eine bestimmte Version festzulegen, indem Sie sie direkt in den Paketnamen schreiben. Pacman, Snap und Flatpak akzeptieren keinen Versionsstring in diesem Feld.

Apt

Pakete werden anhand ihres Debian-Paketnamens identifiziert, wie er von apt-cache search oder dpkg -l.

Format

Beispiel

Ergebnis

name

nginx

Neueste verfügbare Version

name=version

nginx=1.24.0-2

Genaue Versionszeichenkette

name:arch

libc6:i386

Bestimmte Architektur (Multiarch)

name/release

nginx/bookworm-backports

Aus einem bestimmten Release oder Suite

Yum / DNF / TDNF

Pakete werden anhand ihres RPM-Namens identifiziert.

Format

Beispiel

Ergebnis

name

httpd

Neueste verfügbare Version

name-version

httpd-2.4.57

Bestimmte Version

name-version-release

httpd-2.4.57-5.el9

Version und Release-Tag

name.arch

glibc.i686

Bestimmte Architektur

name-version-release.arch

httpd-2.4.57-5.el9.x86_64

Vollständig qualifiziertes NEVRA

Pacman

Pakete werden anhand ihres Sync-Datenbanknamens identifiziert, wie er von pacman -Ss.

Format

Beispiel

Ergebnis

name

nginx

Neueste Version aus dem Repository mit der höchsten Priorität

repo/name

extra/nginx

Aus einem bestimmten Repository

ℹ️ HINWEIS: Pacman unterstützt die Installation einer bestimmten Version nicht. Es installiert immer das, was die konfigurierten Repos aktuell bereitstellen.


So wird die Aktion ausgeführt

Einige Verhaltensweisen gelten für jede Installation, unabhängig vom Manager:

  • Nur Linux. Bei Ausführung auf einem Windows- oder macOS-Gerät gibt der Schritt „nicht unterstützte Aktion" zurück. Der Rest der Automatisierung wird fortgesetzt.

  • Der ausgewählte Manager muss vorhanden sein. Wenn die Binärdatei nicht auf dem Gerät installiert ist, schlägt der Schritt mit „Nicht unterstützter Paketmanager" fehl.

  • 3-Stunden-Zeitlimit für die gesamte Aktion.

  • Live-Ausgabe. Die Befehlsausgabe wird zeilenweise in Echtzeit in das Ausführungsprotokoll gestreamt, sodass jede * Installing <pkg> Zeile, während der Manager arbeitet.

Für Apt, Yum und Pacman wartet Level auf die Paketmanager-Sperre, wenn ein anderer Prozess sie hält, mit einem Backoff von 1 Sekunde bis zu 30 Sekunden zwischen den Prüfungen für bis zu 1 Stunde, bevor es mit „Ein anderer Paketmanager-Prozess läuft." aufgibt. Snap und Flatpak verwalten ihre eigene Warteschlange und warten nicht auf eine Sperre.

Hier ist, was pro Manager ausgeführt wird und welche Vorbereitungen Level zuerst trifft:

Manager

Installationsbefehl

Vorprüfung und Hinweise

Apt

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

Führt apt-get clean und dpkg --configure -a zuerst, um einen defekten Zustand zu beheben. Wird ausgeführt mit DEBIAN_FRONTEND=noninteractive. Alte Kernel werden automatisch entfernt und bereinigt.

Yum

yum install -y --noautoremove <pkg>

Leert zuerst den Paket-Cache. Erkennt automatisch yum/dnf/tdnf; bei TDNF wird das --noautoremove Flag wird automatisch entfernt.

Pacman

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

Entfernt eine veraltete db.lck, dann führt pacman -Sy (Datenbanksynchronisierung) und -Sc (Cache-Bereinigung) vor der Installation.

Snap

snap install <pkg>

Ein Paket nach dem anderen. Kein Vorcheck auf „bereits installiert". Pro-Paket-Installations-Zeitlimit von 60 Minuten zusätzlich zum 3-Stunden-Limit.

Flatpak

flatpak install -y --noninteractive flathub <pkg>

Installiert systemweit (der Agent läuft als root), nicht benutzerspezifisch, aus dem flathub Remote. Pro-Paket-Zeitlimit von 60 Minuten.

⚠️ WARNUNG: Diese Aktionen deaktivieren nicht den eigenen Auto-Updater eines Geräts (wie z. B. unattended-upgrades). Eine geplante Installation kann dennoch mit den Hintergrundaktualisierungen des Geräts in Konflikt geraten. Das oben beschriebene Sperr-Warten verhindert eine Kollision der beiden, kein harter Stopp des Auto-Updaters.


Bedingungen

Der Bedingungen Abschnitt schränkt ein, wann diese Aktion basierend auf Geräteattributen oder dem Ergebnis einer vorherigen Aktion ausgeführt wird. Erweitern Sie ihn, um Bedingungen hinzuzufügen.

Siehe Aktionsbedingungen für die vollständige Referenz zu Bedingungstypen, Operatoren und Werten.

💡 TIPP: Fügen Sie in einer Automatisierung mit gemischten Distributionen für jeden Installationsschritt eine Bedingung basierend auf der Distribution oder Architektur des Geräts hinzu, damit der richtige Manager auf den richtigen Maschinen ausgeführt wird und die übrigen sauber übersprungen werden.


Zusätzliche Optionen

Erweitern Sie Zusätzliche Optionen für Ausführungseinstellungen einschließlich Aktionsname, Fehlerverhalten, Ausgabevariablen und Wiederholungsversuche.

Siehe Aktionsübersicht für die vollständige Referenz zu Optionen, die für jede Aktion verfügbar sind.


Häufig gestellte Fragen

  • Welchen Paketmanager soll ich wählen? Der auf dem Gerät vorhandene: Apt für Debian und Ubuntu, Yum für RHEL-Familie und Photon, Pacman für Arch, Snap oder Flatpak, wo Sie diese standardisiert haben. Wenn ein Schritt auf eine Mischung abzielt, wählen Sie Nativ/Standard und Level erkennt den Manager pro Gerät (es prüft apt, yum, pacman, snap, flatpak in dieser Reihenfolge und verwendet den ersten vorhandenen).

  • Kann eine Aktion über verschiedene Distributionen hinweg installieren? Ja, mit Nativ/Standard: Ein Schritt erkennt den Manager auf jedem Gerät. Stellen Sie nur sicher, dass die von Ihnen eingegebenen Paketnamen unter dem erkannten Manager vorhanden sind. Wenn Sie stattdessen einen bestimmten Manager wählen, wird er nur auf Geräten ausgeführt, auf denen er vorhanden ist.

  • Wie installiere ich eine bestimmte Version anstatt der neuesten? Schreiben Sie die Version in den Paketnamen. Apt verwendet name=version, Yum verwendet name-version (und längere NEVRA-Formen), Pacman unterstützt keine Versionsfixierung, und Snap und Flatpak akzeptieren hier keinen Versionsstring. Versionsfixierung funktioniert nur bei der Installation, nicht beim Upgrade. Siehe Eine genaue Version angeben oben.

  • Was passiert, wenn ein Paketname nicht existiert? Das hängt davon ab, wie viele Pakete Sie installieren. Bei einer Mehrfachpaketinstallation wird ein fehlender Name als „nicht gefunden, wird übersprungen" gemeldet und die übrigen werden fortgesetzt. Wenn ein einzelnes Paket den Vorcheck nicht besteht, schlägt die Aktion mit dem Fehler „Paket nicht gefunden" fehl. Der Vorcheck deckt Apt, Yum und Pacman ab; Snap und Flatpak geben den eigenen Fehler des Tools aus.

  • Das Paket ist bereits installiert. Schlägt die Aktion fehl? Nein. Apt, Yum und Pacman überspringen Pakete, die bereits vorhanden sind. Snap führt den Installationsbefehl ohne Vorcheck aus, was keine Auswirkung hat, wenn es bereits installiert ist.

  • Was ist der Unterschied zwischen dieser und „Linux-Updates installieren"? „Linux-Updates installieren" wendet ausstehende Betriebs- und Sicherheits-Patches auf das gesamte System an. Diese Aktion installiert von Ihnen angegebene benannte Pakete. Verwenden Sie Updates für das Patchen und diese Aktion für die Bereitstellung bestimmter Software.

  • Muss das Gerät online sein? Ja, damit die Aktion ausgeführt werden kann. Wenn es offline ist, wenn die Automatisierung ausgelöst wird, wird der Schritt in die Warteschlange gestellt und fortgesetzt, sobald das Gerät wieder verbunden ist.

  • Wer kann diese Aktion hinzufügen oder bearbeiten? Techniker mit der Berechtigung, Automatisierungen in der jeweiligen Gruppe zu bearbeiten. Siehe Arbeitsbereich → Berechtigungen für die Zugriffssteuerung.

Hat dies deine Frage beantwortet?