Schritt-für-Schritt-Anleitung: Erstellen einer Ubuntu-Autoinstall-ISO mit Cloud-init
07:08, 14.04.2026
Das Automatisieren des Installationsprozesses ist entscheidend, um die Bereitstellung von Systemen zu optimieren – insbesondere in Umgebungen, die eine einheitliche Konfiguration auf mehreren Maschinen erfordern.
Mit der Autoinstall-Funktion von Ubuntu, kombiniert mit Cloud-init, steht Ihnen eine leistungsstarke Methode zur Verfügung, Installationen mit minimalem Aufwand vorkonfigurieren. Egal, ob Sie Server für ein Rechenzentrum einrichten oder mehrere Arbeitsstationen konfigurieren, eine benutzerdefinierte Autoinstall-ISO spart Stunden an wiederholter Arbeit.
Diese Anleitung zeigt Ihnen, wie Sie eine bootfähige ISO erstellen, die genau auf Ihre Anforderungen zugeschnitten ist und bei jeder Installation einen reibungslosen und effizienten Ablauf gewährleistet.
Überblick
Das Erstellen einer benutzerdefinierten Ubuntu-Autoinstall-ISO vereinfacht und automatisiert die Bereitstellung des Betriebssystems. Dadurch sparen Sie Zeit und sorgen für Konsistenz. Diese Anleitung führt Sie Schritt für Schritt durch den Prozess der Erstellung einer Ubuntu-Autoinstall-ISO mit Cloud-init für die automatische Konfiguration. Das Ergebnis ist eine bootfähige ISO, die während der Installation nur minimale manuelle Eingriffe erfordert.
Steps to Create an Autoinstall ISO
Creating a custom Ubuntu Autoinstall ISO involves several steps.
Follow this structured process to ensure a smooth setup:
Schritt 0 – Anforderungen und Vorbereitung der „Benutzerdaten“-YAML-Datei(en)
Bevor Sie beginnen, stellen Sie sicher, dass Sie Folgendes haben:
- Ein System, auf dem Ubuntu oder eine beliebige Linux-Distribution läuft.
- Ein sauberes Ubuntu-ISO-Image (20.04 oder höher).
- Pakete wie xorriso, mkisofs und cloud-init.
Erstellen Sie eine YAML-Datei mit Benutzerdaten, die das Automatisierungs Skript für Ihre Installation enthält. In dieser Datei werden Benutzer, Partitionen, Pakete und andere Konfigurationen definiert.
Schritt 1 – Arbeitsverzeichnis einrichten und sauberes Basis-ISO-Image abrufen
Richten Sie zunächst ein Arbeitsverzeichnis ein:
mkdir ~/autoinstall-iso && cd ~/autoinstall-iso
Laden Sie das offizielle Ubuntu-ISO herunter:
wget https://releases.ubuntu.com/22.04/ubuntu-22.04-live-server-amd64.iso
Schritt 2 – Extrahieren Sie den Inhalt der Installations-ISO
Extrahieren Sie den ISO-Inhalt in Ihr Arbeitsverzeichnis:
7z x ubuntu-22.04-live-server-amd64.iso -oiso_extracted/
Überprüfen Sie, ob der Inhalt korrekt extrahiert wurde, indem Sie in das Verzeichnis iso_extracted navigieren.
Schritt 3 – GRUB- und ISOLINUX-Konfigurationsdateien ändern
Bearbeiten Sie den Bootloader, um eine automatische Installation zu ermöglichen.
- Ändern Sie GRUB: Öffnen Sie iso_extracted/boot/grub/grub.cfg und fügen Sie Folgendes an die Linux-Zeile unter dem Standardmenüeintrag an:
autoinstall ds=nocloud\;s=/cdrom/
- Modifizieren Sie ISOLINUX: Bearbeiten Sie iso_extracted/isolinux/txt.cfg auf ähnliche Weise, indem Sie Folgendes hinzufügen:
autoinstall ds=nocloud\;s=/cdrom/
Schritt 4 – Integrieren Sie Ihre benutzerdefinierten „user-data“-YAML-Dateien in die ISO
Erstellen Sie ein Verzeichnis nocloud innerhalb von iso_extracted:
mkdir -p iso_extracted/nocloud/
Legen Sie Ihre Benutzer- und Metadaten-Dateien in diesem Verzeichnis ab. Für die grundlegende Verwendung können Metadaten eine leere Datei sein:
touch iso_extracted/nocloud/meta-data
mv user-data iso_extracted/nocloud/
Schritt 5 – Autoinstall-ISO neu erstellen
Erstellen Sie die geänderte ISO mit dem folgenden Befehl neu:
xorriso -as mkisofs -r -V „Autoinstall Ubuntu“ \
-o ~/autoinstall-ubuntu-22.04.iso \
-J -l -cache-inodes -b isolinux/isolinux.bin \
-c isolinux/boot.cat -no-emul-boot -boot-load-size 4 \
-boot-info-table iso_extracted/
Dieser Befehl generiert eine bootfähige ISO-Datei mit all Ihren benutzerdefinierten Konfigurationen.
Beispiel einer „user-data“-YAML-Datei
Hier ist ein einfaches Beispiel einer user-data-Datei:
#cloud-config
autoinstall:
version: 1
identity:
hostname: ubuntu-server
username: admin
password: $6$hashed_password
ssh:
install-server: true
storage:
layout:
name: lvm
packages:
- vim
- curl
Schlussbemerkungen
Mit diesem Leitfaden haben Sie eine benutzerdefinierte Ubuntu-Autoinstall-ISO mit Cloud-init erstellt. Dieser Ansatz vereinfacht sich wiederholende Installationen und gewährleistet Konsistenz bei allen Bereitstellungen. Testen Sie Ihre ISO in einer virtuellen Maschine, um ihr Verhalten vor dem großflächigen Einsatz zu überprüfen.