Skip to content
Leonid Kogan edited this page Nov 25, 2017 · 10 revisions

Herzliche Willkommen zum YAHM Wiki!

Falls Sie dieses Projekt unterstützen möchten, würde ich mich über einen Pull-Request oder eine Spende: Spenden freuen.

YAHM ist eine Alternative zu LXCCU, welche auf Grund von Zeitmangel des Hauptentwicklers aktuell nur Debian Wheezy und Firmware bis 2.15.x unterstützt. Seit der Anpassung der Lizenz seitens EQ3 ist kein Download älterer Firmware mehr möglich. Im Gegensatz zu LXCCU basiert YAHM nicht auf dem Debian Paket Manager und kann daher theoretisch*1 auf jedem Betriebssystem laufen, sofern die notwendigen Abhängigkeiten (z.B. LXC) zur Verfügung stehen. Des Weiteren können die Skripte durch verschiedene Parameter individuell gesteuert werden (z.B. kann man einem Kontainer einen eigenen Namen geben)

YAHM besteht aus vier Komponenten, sowie einem Steuerungsmodul

  • LXC: Verwaltet die LXC Kontainer mit dem CCU2 Image
  • Netzwerk: Konfiguration des LXC Netzwerks und der Bridges
  • Backup und Restore: Backup und Restore von LXC oder CCU2 Daten
  • Module: Konfiguration verschiedener YAHM Erweiterungen

Alle Komponenten sind identisch nach dem folgenden Muster aufgebaut.

Befehlsreihenfolge

Alle Skripte fangen grundsätzlich mit yahm- an, anschließend erfolgt die Anwendung, gefolgt von einem Flag und dem eigentlichen Befehl.

yahm-ctl [FLAG] COMMAND

FLAGS

Jede Anwendung kann ohne Angabe eines Flags ausgeführt werden, in diesem Fall werden vordefinierte Werte übernommen, die für die meisten Benutzer ausreichen werden z.B. wird immer ein Kontainer mit dem Namen "yahm", der Bridge "yahmbr0" und Netzwerkadapter "eth0" installiert. Diese Werte können durch die Angabe des jeweiligen Flags angepasst werden.

Globale Flags

Diese Flags gelten in jeder Anwendung

-n          - Benutzerdefinierte Name des LXC Kontainers
-f          - Kein Anhalten bei Fehlern, bzw. ignorieren von Fehlern, oder Daten überschrieben
-v          - Debug Ausgabe, es werden alle Meldungen angezeigt und nicht nur die Information 

Hinweis: Sollten Sie den Namen des Kontainers bei der Installation ändern, müssen Sie den -n Flag zukünftig bei jedem Aufruf weiterer Skripte angeben.

Komponenten spezifische Flags

Siehe hierzu die jeweilige Anwendung

Steuerungsmodul

Neben den vier Komponenten von YAHM existiert ein zentraler Steuerungsmodul, zur Steuerung von LXC Kontainers. Mit Hilfe des Moduls kann ein Kontainer gestoppt oder gestartet werden. Ebenfalls ist es möglich auf die Informationen wie z.B. die aktuelle IP des Kontainers anzuzeigen, oder auf die Konsole der CCU2 zu wechseln.

YAHM Control Script

Usage Example: 

./yahm-ctl [FLAG] COMMAND
./yahm-ctl -n mycccu start

Flags:
-n          - LXC container name.
-f          - Force operation (no halt on errors).
-v          - Verbose output 

Commands:
start           - Starting LXC container
stop            - Stopping LXC container
restart         - Restarting LXC container
info            - Show LXC information (IP)
join            - Enter LXC console
update          - Update YAHM installation
fw_update       - Update HM-MOD-RPI-PCB Firmware

Hinweis: YAHM kann die jeweils aktuelle Version aus dem GIT automatisch runterladen und installieren, hierfür muss yahm-ctl update aufgerufen werden. Es wird lediglich die YAHM Installation aktualisiert, nicht jedoch die CCU2 Firmware. Für die Aktualisierung der CCU2 Firmware siehe LXC update

Fußnoten:

*1 YAHM selbst benötigt keinen Paket Manager, es wird jedoch auf den DEB Paket Manager zur Installation der Abhängigkeiten zurückgegriffen. Dies kann mit wenig Aufwand auf z.B. RPM basierte Systeme angepasst werden.