Zum Inhalt springen
TURNKEYGNU / LINUX
AnwendungenDokumentationBlogBildschirmfotosGitHubTurnKey Hub
文Deutsch
EnglishEspañol中文日本語PortuguêsDeutsch
Haus/Übersicht

Dokumentation

Übersicht

Ziel ist es, eine einfache Möglichkeit zu bieten, wie ein Appliance angepasst und erweitert werden kann.

Beispiel-Tweaks

  • Optimierung einer Konfigurationsdatei
  • Hinzufügen von Datendateien
  • Hinzufügen eines Pakets
  • Erstellen eines brandneuen Appliance unter Verwendung eines generischen Appliance wie Core, LAMP, Rails usw.

Designziele

  • Gut konzipierter Mechanismus (einfach, generisch und leistungsstark) 
  • Sehr einfach technisch, um Eintrittsbarrieren zu reduzieren
  • Ermutigen Sie Entwickler, ihre Patches einfach zu veröffentlichen
    • Integrieren Sie gute Entwicklungen vorgelagert zu TurnKey Appliances
    • Etablieren Sie ein Open-Source-Ökosystem von Patches
    • Befriedigen Sie den langen Schwanz der besonderen Bedürfnisse

Nutzung

Anwenden eines Patches auf ein Appliance ISO-Bild (das gepatchte Bild wird image-patched.iso genannt)

 tklpatch image.iso patch.tar.gz

Anwenden eines Patches zum Ändern einer installierten Appliance-Instanz (aus dem Inneren des Appliance):
Gotcha: Das laufende System muss entsprechend dem erwarteten tklpatch-Zustand konfiguriert sein, es sei denn, der Patch verwaltet Diskrepanzen (z. B. laufende Server, Passwörter usw.).

tklpatch-apply / patch.tar.gz

Hallo Weltbeispiel

  1. Laden Sie ein beliebiges TurnKey Appliance herunter (z. B. TurnKey Core)
  2. Generieren und Anwenden von Beispiel-Patch:
        tklpatch-example helloworld
        tklpatch path/to/turnkey-core.iso helloworld
    
  3. Optimieren und passen Sie die Beispiel-Patch-Vorlage an Ihre Bedürfnisse an.

Befehlssyntax

TKLpatch ist in der Unix-Tradition als modulare Sammlung einfacher Subskriptionen konzipiert. Der tklpatch-Befehl selbst ist nur das oberste Skript auf hoher Ebene, das folgendes aufruft:

1) tklpatch-extract-iso
   Disassemble the ISO to extract its contents

    1) cdroot: ISO filesystem - contains bootloader and compressed rootfs
    2) rootfs: uncompressed root filesystem

2) tklpatch-apply
   Apply the patch to the root filesystem.

   Patch structure:

     patch-dir/
         debs/       # custom debian packages (installed with dpkg -i *.deb)
         overlay/    # overlay applied to root filesystem
         conf        # configuration script to execute in chroot (rootfs)

3) tklpatch-prepare-cdroot
   Prepare cdroot for ISO creation. This mainly compresses the extracted
   root filesystem.

4) tklpatch-geniso
   Generate an ISO from the cdroot.

Anatomie eines Patches

Ein Patch ist ein Verzeichnis (das als gzipped tarball verpackt werden kann), das eine der folgenden Dateien und Verzeichnisse enthalten kann:

patch/
    debs/       # custom debian packages (installed with dpkg -i *.deb)
    overlay/    # overlay applied to root filesystem
    conf        # configuration script to execute in chroot (rootfs)

Zusätzlich wird Patch/ kann einen Patches/Ordner enthalten, der verschachtelte Patches enthalten kann (ausgepackt oder als gzipped Tarball gebündelt). Verschachtelte Patches werden in alphanumerischer Reihenfolge ihrer Namen installiert Vormals auf den Patch, der sie enthält (Patch Patching aktivieren).

patch1/
    patches/
        patch2/
        patch3.tar.gz
        patch4.tar.gz
        patches/
            patch5/

Verschachtelte Patches erleichtern das modulare Design, da Änderungen nicht gebündelt werden müssen.

TURNKEYGNU / LINUX

Eigene Infrastruktur betreiben, ohne bei null anzufangen.

TurnKey erkunden
Über TurnKeyDokumentationHäufige FragenBlogGitHub
Frei und quelloffenStandardmäßig sicherSofort einsatzbereit