GNU/Linux >> LINUX-Kenntnisse >  >> Debian

Debian – Automatisierung der Installation einzelner Debian-8-Pakete mit interaktiven Eingabeaufforderungen?

Ich möchte einige Paketinstallationen über ein Bash-Skript automatisieren. Sie werden in einem bereits bestehenden chroot-Dateisystem installiert. Einige der Pakete beinhalten jedoch interaktive Benutzereingaben (d. h. ddclient fragt nach einem dynamischen DNS-Dienstanbieter), die ich nicht so einfach automatisieren konnte.

debconf-Preseeding scheint der gebräuchlichste Weg zu sein, um interaktive Paketinstallationen zu automatisieren, aber alle Beispiele, die ich gelesen habe, deuten darauf hin, dass es sich um eine gesamte Debian-Installation handelt und nicht nur um einzelne Pakete.

Ich habe diese Anleitung zur Automatisierung interaktiver Debian-Paketinstallationen verfolgt, aber sie erklärt nicht wirklich die Einzelheiten.

Vielen Dank im Voraus!

Akzeptierte Antwort:

Abgesehen von der Verwendung eines „richtigen“ Bereitstellungs- und Konfigurationsverwaltungstools wie Ansible oder Salt, debconf Preseeding kann vollkommen ausreichend sein, um Debian-Pakete vorzukonfigurieren. Es ist keineswegs auf ausgewachsene Installationen beschränkt; es kann auf beliebig viele Pakete angewendet werden.

Der einfachste Weg, damit anzufangen, besteht darin, die Pakete, die Sie installieren möchten, manuell zu konfigurieren, indem Sie das Paket installieren und die Fragen beantworten. Führen Sie dann debconf-get-selections aus (aus den debconf-utils Paket); Das listet alle gespeicherten Einstellungen auf, einschließlich der für die gerade installierten Pakete, zusammen mit dem Fragetext in den Kommentaren – damit Sie die Fragen, die Sie voreinstellen möchten, leicht finden können. Das Format ist

<package> <debconf key> <type> <value>

Zum Beispiel

# System's default paper size:
# Choices: letter, a4, note, legal, executive, halfletter, halfexecutive, 11x17, statement, folio, quarto, 10x14, ledger, tabloid, a0, a1, a2, a3, a5, a6, a7, a8, a9, a10, b0, b1, b2, b3, b4, b5, c5, DL, Comm10, Monarch, archE, archD, archC, archB, archA, flsa, flse, csheet, dsheet, esheet
libpaper1       libpaper/defaultpaper   select  a4

Speichern Sie die Einstellungen, die Sie voreinstellen möchten, in einer Datei und führen Sie dann debconf-set-selections aus (in der debconf package) auf dem Zielsystem, entweder mit der lokal verfügbaren und benannten Datei als erstes Argument, oder deren Inhalt per Pipe:

cat preseed-file | ssh remotehost debconf-set-selections

Tun Sie dies vorher Installieren der Pakete auf dem Zielsystem.


Debian
  1. Debian – Das Paket finden, das einen bestimmten Befehl bereitstellt?

  2. Debian – Sicherheit des Debian-Repository?

  3. Debian – Devuan/Debian-Installation kann nicht gestartet werden?

  4. So installieren Sie den Ghost unter Debian mit Nginx

  5. So listen Sie alle installierten Pakete in Fedora mit dem Zeitpunkt der Installation auf

So fragen Sie Paketinformationen mit dem RPM-Paketmanager ab

Debian 9 „Stretch“-Installationsanleitung mit Screenshots

Debian 10 (Buster) Installationsschritte mit Screenshots

Wie man ein Repository zu Debian hinzufügt

Cylon-deb :Das Debian-Linux-Wartungsprogramm

Wie man Debian-Pakete aus den Quellen erstellt