16 Installieren von benutzerdefinierten Vorinstallationen #
Durch die Verteilung angepasster Vorinstallationen von SUSE Linux Enterprise Desktop auf einer großen Anzahl identischer Rechner können Sie es vermeiden, die Installation auf jedem einzelnen Rechner durchführen zu müssen. Gleichzeitig erhalten die Endbenutzer ein standardisiertes Installationsverfahren.
Erstellen Sie mit YaST Firstboot benutzerdefinierte Vorinstallations-Images, und legen Sie den Workflow für die abschließenden Personalisierungsschritte fest, bei denen das Eingreifen der Endbenutzer erforderlich ist (im Gegensatz zu AutoYaST, das vollständig automatische Installationen zulässt).
Führen Sie die folgenden Schritte aus, um eine benutzerdefinierte Installation zu erstellen, an Ihre Hardware zu verteilen und das endgültige Produkt anzupassen:
Bereiten Sie den Master-Computer vor, dessen Festplatte auf die Client-Computer geklont werden muss. Weitere Informationen hierzu finden Sie in Abschnitt 16.1, „Vorbereiten des Master-Rechners“.
Passen Sie den Firstboot-Workflow an. Weitere Informationen hierzu finden Sie in Abschnitt 16.2, „Anpassen der Firstboot-Installation“.
Erstellen Sie einen Klon der Festplatte des Master-Rechners und verteilen Sie das Image auf den Festplatten der Clients. Weitere Informationen hierzu finden Sie in Abschnitt 16.3, „Klonen der Master-Installation“.
Lassen Sie den Endbenutzer die Instanz von SUSE Linux Enterprise Desktop personalisieren. Weitere Informationen hierzu finden Sie in Abschnitt 16.4, „Anpassen der Installation“.
16.1 Vorbereiten des Master-Rechners #
Um einen Master-Rechner für einen Firstboot-Workflow vorzubereiten, gehen Sie wie folgt vor:
Legen Sie das Installationsmedium in den Master-Rechner ein.
Booten Sie den Rechner.
Führen Sie eine normale Installation einschließlich aller erforderlichen Konfigurationsschritte durch, und stellen Sie sicher, dass Sie für die Installation das Paket
yast2-firstboot
auswählen.Um Ihren eigenen Workflow von YaST-Konfigurationsschritten für den Endbenutzer zu definieren oder diesem Workflow Ihre eigenen YaST-Module hinzuzufügen, fahren Sie mit Abschnitt 16.2, „Anpassen der Firstboot-Installation“ fort. Fahren Sie andernfalls direkt bei Schritt 5 fort.
Aktivieren Sie Firstboot als
root
:Erstellen Sie eine leere Datei
/var/lib/YaST2/reconfig_system
, um die Ausführung von Firstboot auszulösen. Diese Datei wird gelöscht, sobald die Firstboot-Konfiguration erfolgreich durchgeführt wurde. Erstellen Sie diese Datei mit dem folgenden Befehl:touch /var/lib/YaST2/reconfig_system
Fahren Sie mit Abschnitt 16.3, „Klonen der Master-Installation“ fort.
16.2 Anpassen der Firstboot-Installation #
Beim Anpassen des Workflows der Firstboot-Installation können mehrere Komponenten betroffen sein. Es wird empfohlen, sie anzupassen. Wenn Sie keine Änderungen vornehmen, führt Firstboot die Installation mithilfe von Standardeinstellungen aus. Folgende Optionen sind verfügbar:
Meldungen an den Benutzer wie in Abschnitt 16.2.1, „Anpassen von YaST-Meldungen“ beschrieben anpassen
Lizenzen und Lizenzaktionen wie in Abschnitt 16.2.2, „Anpassen der Lizenzaktion“ beschrieben anpassen
Versionshinweise für die Anzeige wie in Abschnitt 16.2.3, „Anpassen der Versionshinweise“ beschrieben anpassen
Reihenfolge und Anzahl der an der Installation beteiligten Komponenten wie in Abschnitt 16.2.4, „Anpassen des Workflows“ beschrieben anpassen
Zusätzliche optionale Skripten wie in Abschnitt 16.2.5, „Konfigurieren von zusätzlichen Skripten“ beschrieben konfigurieren
So bearbeiten Sie die folgenden Konfigurationsdateien, um diese Komponenten anzupassen:
/etc/sysconfig/firstboot
Konfiguriert verschiedene Aspekte von Firstboot (wie Versionshinweise, Skripten und Lizenzaktionen).
/etc/YaST2/firstboot.xml
Zur Konfiguration des Installations-Workflows durch Aktivierung oder Deaktivierung von Komponenten oder Hinzufügen von benutzerdefinierten Komponenten.
Bietet Übersetzungen für den Workflow einer angepassten Installation wie in Abschnitt 16.2.6, „Bereitstellen von Übersetzungen des Installations-Workflows“ beschrieben.
Tipp: Alternativer Speicherort der Steuerdatei/etc/YaST2/firstboot.xml
ist der Standardpfad für die Steuerdatei, die mit dem Paketyast2-firstboot
installiert wird. Wenn ein anderer Speicherort für die Steuerdatei definiert werden soll, bearbeiten Sie/etc/sysconfig/firstboot
, und geben Sie in der VariablenFIRSTBOOT_CONTROL_FILE
den gewünschten Speicherort an.
Wenn Sie mehr als nur die Arbeitsflusskomponenten anpassen möchten, finden Sie Informationen in der Dokumentation zu control.xml
unter https://doc.opensuse.org/projects/YaST/SLES11/tdg/inst_in_general_chap.html#product_control.
16.2.1 Anpassen von YaST-Meldungen #
Standardmäßig enthält eine Installation von SUSE Linux Enterprise Desktop verschiedene Standardnachrichten, die in verschiedenen Phasen des Installationsprozesses lokalisiert und angezeigt werden. Dazu gehört eine Willkommensmitteilung, eine Lizenzmitteilung und eine Glückwunschmitteilung am Ende der Installation. Sie können diese Meldungen durch eigene Versionen ersetzen und lokalisierte Versionen in die Installation aufnehmen. Gehen Sie wie folgt vor, um Ihre eigene Willkommensmitteilung einzubinden:
Melden Sie sich als
root
an.Öffnen Sie die Konfigurationsdatei
/etc/sysconfig/firstboot
, und übernehmen Sie die folgenden Änderungen:Legen Sie
FIRSTBOOT_WELCOME_DIR
auf den Verzeichnispfad fest, in dem Sie die Dateien speichern möchten, die die Willkommensnachricht und die lokalisierten Versionen enthalten, z. B.:FIRSTBOOT_WELCOME_DIR="/usr/share/firstboot/"
Wenn der Dateiname der Willkommensnachricht weder
welcome.txt
nochwelcome_locale.txt
lautet (wobei locale dem ISO 639-Sprachcode entspricht, wie „cs“ oder „de“), legen Sie das Dateinamensschema inFIRSTBOOT_WELCOME_PATTERNS
fest. Beispiel:FIRSTBOOT_WELCOME_PATTERNS="mywelcome.txt"
Falls nicht anderweitig festgelegt, wird vom Standardwert
welcome.txt
ausgegangen.
Erstellen Sie die Willkommensdatei und die lokalisierten Versionen, und legen Sie sie in das in der Konfigurationsdatei
/etc/sysconfig/firstboot
angegebene Verzeichnis ab.
Gehen Sie genauso vor, um angepasste Lizenz- und Beendigungsmitteilungen zu konfigurieren. Diese Variablen sind FIRSTBOOT_LICENSE_DIR
und FIRSTBOOT_FINISH_FILE
.
Ändern Sie die Einstellung von SHOW_Y2CC_CHECKBOX
in „Ja“, wenn der Benutzer in der Lage sein soll, YaST direkt nach dem Ausführen der Installation zu starten.
16.2.2 Anpassen der Lizenzaktion #
Sie können die Reaktion des Installationssystems auf Benutzer, die die Lizenzvereinbarung nicht akzeptieren, anpassen. Das System kann auf die folgenden drei Arten auf dieses Szenario reagieren:
- Halt
Die firstboot-Installation wird abgebrochen und das gesamte System wird heruntergefahren. Das ist die Standardeinstellung.
- Fortsetzen
Die Firstboot-Installation wird fortgesetzt.
- Abbrechen
Die Firstboot-Installation wird abgebrochen, das System versucht jedoch zu booten.
Treffen Sie Ihre Wahl, und stellen Sie den entsprechenden Wert für LICENSE_REFUSAL_ACTION
ein.
16.2.3 Anpassen der Versionshinweise #
Je nachdem, ob Sie die Instanz von SUSE Linux Enterprise Desktop, die Sie mit Firstboot installieren möchten, geändert haben, müssen Sie die Endbenutzer möglicherweise über wichtige Aspekte ihres neuen Betriebssystems unterrichten. Eine Standardinstallation verwendet Versionshinweise (angezeigt in einer der abschließenden Phasen der Installation), um Benutzer über wichtige Änderungen zu informieren. Wenn Ihre eigenen bearbeiteten Versionshinweise als Teil einer Firstboot-Installation angezeigt werden sollen, gehen Sie wie folgt vor:
Erstellen Sie Ihre eigene Versionshinweisdatei. Verwenden Sie das RTF-Format wie in der Beispieldatei in
/usr/share/doc/release-notes
, und speichern Sie das Ergebnis alsRELEASE-NOTES.en.rtf
(für Englisch).Speichern Sie die optional lokalisierte Version neben der ursprünglichen Version, und ersetzen Sie den Teil
en
des Dateinamens durch den tatsächlichen ISO 639-Sprachcode, beispielsweisede
für Deutsch.Öffnen Sie die Firstboot-Konfigurationsdatei unter
/etc/sysconfig/firstboot
, und legen Sie fürFIRSTBOOT_RELEASE_NOTES_PATH
das tatsächliche Verzeichnis fest, in dem die Versionshinweise gespeichert sind.
16.2.4 Anpassen des Workflows #
Im bereitgestellten Beispiel /etc/YaST2/firstboot.xml
ist ein Standard-Workflow definiert, der die folgenden aktivierten Komponenten enthält:
Sprachauswahl
Willkommen
Lizenzvereinbarung
Zeit und Datum
Benutzer
Stammpasswort
Beenden der Einrichtung
Beachten Sie, dass dieser Workflow eine Vorlage ist. Sie können sie richtig anpassen, indem Sie die Firstboot-Konfigurationsdatei /etc/YaST2/firstboot.xml
manuell bearbeiten. Die XML-Datei ist eine Teilmenge der Standarddatei control.xml
, die von YaST verwendet wird, um den Installations-Workflow zu steuern. In Beispiel 16.2, „Konfigurieren des Workflow-Abschnitts“ erfahren Sie mehr darüber, wie Sie den Workflow-Bereich konfigurieren.
Eine Übersicht mit Vorschlägen finden Sie in Beispiel 16.1, „Konfigurieren von Vorschlagsbildschirmen“. Dort werden Ihnen alle Hintergrundinformationen bereitgestellt, die Sie benötigen, um den Workflow für die Firstboot-Installation zu ändern. Die Basissyntax der Firstboot-Konfigurationsdatei (und die Konfiguration der Schlüsselelemente) werden anhand dieses Beispiels erklärt.
… <proposals config:type="list">1 <proposal>2 <name>firstboot_hardware</name>3 <mode>installation</mode>4 <stage>firstboot</stage>5 <label>Hardware Configuration</label>6 <proposal_modules config:type="list">7 <proposal_module>printer</proposal_module>8 </proposal_modules> </proposal> <proposal> … </proposal> </proposals>
Der Container für alle Vorschläge, die Teil des Firstboot-Workflows sein sollen. | |
Der Container für einen einzelnen Vorschlag. | |
Der interne Name des Vorschlags. | |
Der Modus dieses Vorschlags. Nehmen Sie hier keine Änderungen vor. Für eine Firstboot-Installation muss diese Option auf | |
Die Phase des Installationsprozesses, in der dieser Vorschlag aufgerufen wird. Nehmen Sie hier keine Änderungen vor. Für eine Firstboot-Installation muss diese Option auf | |
Die auf dem Vorschlag anzuzeigende Kennung. | |
Der Container für alle Module, die Teil des Vorschlagbildschirms sind. | |
Ein oder mehrere Module, die Teil des Vorschlagbildschirms sind. |
Der nächste Abschnitt der Firstboot-Konfigurationsdatei besteht aus der Workflow-Definition. Alle Module, die Teil des Firstboot-Installations-Workflows sein sollen, müssen hier aufgeführt werden.
<workflows config:type="list"> <workflow> <defaults> <enable_back>yes</enable_back> <enable_next>yes</enable_next> <archs>all</archs> </defaults> <stage>firstboot</stage> <label>Configuration</label> <mode>installation</mode> … <!–– list of modules ––> </modules> </workflow> </workflows> …
Die Gesamtstruktur des Abschnitts workflows
entspricht weitgehend dem des Abschnitts proposals
. Ein Container enthält die Workflow-Elemente, die Workflow-Elemente enthalten wiederum Informationen zu Stufe, Kennung und Modus (wie die in Beispiel 16.1, „Konfigurieren von Vorschlagsbildschirmen“ eingeführten Vorschläge). Am meisten fällt der Unterschied in Abschnitt defaults
auf. Er enthält grundlegende Design-Informationen für die Workflow-Komponenten:
enable_back
Zeigt in allen Dialogfeldern die Schaltfläche
an.enable_next
Zeigt in allen Dialogfeldern die Schaltfläche
an.archs
Geben Sie die Hardware-Architekturen an, in denen dieser Workflow verwendet werden soll.
<modules config:type="list">1 <module>2 <label>Language</label>3 <enabled config:type="boolean">false</enabled>4 <name>firstboot_language</name>5 </module> <modules>
Der Container für alle Komponenten des Workflows | |
Die Moduldefinitionen | |
Die mit allen Modulen angezeigte Kennung | |
Der Schalter zum Aktivieren/Deaktivieren dieser Komponenten im Workflow | |
Der Modulname – Das Modul selbst muss sich unter |
Um während der Firstboot-Installation Änderungen an der Zahl und Reihenfolge der Vorschlagsbildschirme durchzuführen, fahren Sie fort wie folgt:
Öffnen Sie die Firstboot-Konfigurationsdatei unter
/etc/YaST2/firstboot.xml
.Löschen Sie Vorschlagsbildschirme, fügen Sie Bildschirme hinzu oder ändern Sie die Reihenfolge von vorhandenen Bildschirmen:
Um einen Gesamtvorschlag zu löschen, entfernen Sie das Element
proposal
einschließlich aller Unterelemente aus dem Abschnittproposals
, und entfernen Sie das entsprechende Elementmodule
(mit Unterelementen) aus dem Workflow.Um einen neuen Vorschlag hinzuzufügen, erstellen Sie ein neues Element
proposal
, und tragen Sie alle erforderlichen Unterelemente ein. Stellen Sie sicher, dass der Vorschlag in/usr/share/YaST2/clients
als YaST-Modul vorhanden ist.Wenn Sie die Reihenfolge der Vorschläge ändern möchten, verschieben Sie die entsprechenden
module
-Elemente mit den Vorschlagsbildschirmen im Workflow. Beachten Sie, dass Abhängigkeiten zu anderen Installationsschritten bestehen können, die eine bestimmte Reihenfolge der Vorschläge und Workflow-Komponenten voraussetzen.
Wenden Sie Ihre Änderungen an und schließen Sie die Konfigurationsdatei.
Sie können den Workflow der Konfigurationsschritte immer ändern, wenn der Standard Ihren Anforderungen nicht entspricht. Aktivieren oder deaktivieren Sie bestimmte Module im Workflow (oder fügen Sie eigene Workflows hinzu).
Um den Status eines Moduls im Firstboot-Workflow umzuschalten, gehen Sie wie folgt vor:
Öffnen Sie die Konfigurationsdatei
/etc/YaST2/firstboot.xml
.Ändern Sie den Wert für das
enabled
-Element vontrue
infalse
, um das Modul zu deaktivieren oder vonfalse
intrue
, um es erneut zu aktivieren.<module> <label>Time and Date</label> <enabled config:type="boolean">true</enabled> <name>firstboot_timezone</name> </module>
Wenden Sie Ihre Änderungen an und schließen Sie die Konfigurationsdatei.
Um dem benutzerdefinierten Modul einen Workflow hinzuzufügen, gehen Sie wie folgt vor:
Erstellen Sie Ihr eigenes YaST-Modul, und speichern Sie die Moduldatei
module_name.rb
in/usr/share/YaST2/clients
.Öffnen Sie die Konfigurationsdatei
/etc/YaST2/firstboot.xml
.Legen Sie fest, an welchem Punkt des Workflows Ihr neues Modul ausgeführt werden soll. Stellen Sie dabei sicher, dass sämtliche Abhängigkeiten zu anderen Schritten im Workflow berücksichtigt und aufgelöst werden.
Erstellen Sie im Container
modules
ein neuesmodule
-Element, und fügen Sie die entsprechenden Unterelemente hinzu:<modules config:type="list"> … <module> <label>my_module</label> <enabled config:type="boolean">true</enabled> <name>filename_my_module</name> </module> </modules>
Geben Sie die Kennung ein, die im
label
-Element auf Ihrem Modul angezeigt werden soll.Stellen Sie sicher, dass
enabled
auftrue
eingestellt ist, damit Ihr Modul in den Workflow aufgenommen wird.Geben Sie den Dateinamen Ihres Moduls in das Element
name
ein. Lassen Sie den vollständigen Pfad und das Suffix.rb
weg.
Wenden Sie Ihre Einstellungen an, und schließen Sie die Konfigurationsdatei.
Falls die Zielhardware mehrere Netzwerkschnittstellen besitzen könnte, fügen Sie das network-autoconfig
-Paket zum Anwendungs-Image hinzu. network-autoconfig
durchläuft alle verfügbaren Ethernet-Schnittstellen, bis eine erfolgreich per DHCP konfiguriert ist.
16.2.5 Konfigurieren von zusätzlichen Skripten #
Firstboot kann so konfiguriert werden, dass zusätzliche Skripten ausgeführt werden, nachdem der Firstboot-Workflow abgeschlossen wurde. Um der Firstboot-Sequenz zusätzliche Skripten hinzuzufügen, gehen Sie wie folgt vor:
Öffnen Sie die Konfigurationsdatei
/etc/sysconfig/firstboot
, und stellen Sie sicher, dass der fürSCRIPT_DIR
angegebene Pfad korrekt ist. Der Standardwert ist/usr/share/firstboot/scripts
.Erstellen Sie Ihr Shell-Skript, speichern Sie es in das angegebene Verzeichnis und wenden Sie die entsprechenden Dateiberechtigungen an.
16.2.6 Bereitstellen von Übersetzungen des Installations-Workflows #
Abhängig vom Endbenutzer könnten Übersetzungen des benutzerdefinierten Workflows gewünscht werden. Diese Übersetzungen könnten notwendig sein, wenn Sie den Workflow durch Ändern der Datei /etc/YaST2/firstboot.xml
wie in Abschnitt 16.2.4, „Anpassen des Workflows“ beschrieben angepasst haben.
Wenn Sie /etc/YaST2/firstboot.xml
geändert und Änderungen von Zeichenketten eingeführt haben, generieren Sie eine neue Übersetzungsvorlagendatei (.pot
-Datei), und verwenden Sie die Toolchain gettext
, um die Dateien zu übersetzen und diese anschließend in den YaST-Locale-Verzeichnissen (/usr/share/YaST2/locale
) als kompilierte .mo
-Dateien zu installieren. Führen Sie dazu die folgenden Schritte aus:
Ändern Sie beispielsweise die Einstellung
textdomain
von:<textdomain>firstboot</textdomain>
zu:
<textdomain>firstboot-oem</textdomain>
Extrahieren Sie mit
xgettext
die übersetzbaren Zeichenketten in die Übersetzungsvorlagendatei (.pot
-Datei), zum Beispiel infirstboot-oem.pot
:xgettext -L Glade -o firstboot-oem.pot /etc/YaST2/firstboot.xml
Starten Sie den Übersetzungsprozess. Verpacken Sie die übersetzten Dateien (
.LL_code.po
-Dateien) dann auf die gleiche Weise wie die Übersetzungen der anderen Projekte, und installieren Sie die kompiliertenfirstboot-oem.mo
-Dateien.
Falls Sie Übersetzungen für zusätzliche oder geänderte YaST-Module benötigen, stellen Sie die Übersetzungen in einem derartigen Modul selbst bereit. Wenn Sie ein vorhandenes Modul geändert haben, ändern Sie auf jeden Fall auch dessen Textdomain-Anweisung, um unerwünschte Nebeneffekte zu vermeiden.
Weitere Informationen zur YaST-Bereitstellung finden Sie in https://en.opensuse.org/openSUSE:YaST_development. Detaillierte Informationen über YaST Firstboot finden Sie unter https://doc.opensuse.org/projects/YaST/SLES11/tdg/bk09ch01s02.html.
16.3 Klonen der Master-Installation #
Klonen Sie die Festplatte des Master-Rechners mit einem verfügbaren Imaging-Mechanismus und führen Sie die Images auf den Zielrechnern ein. Weitere Informationen zum Imaging finden Sie unter https://doc.suse.com/kiwi/.
16.4 Anpassen der Installation #
Wenn das geklonte Festplatten-Image gestartet wird, startet firstboot, und die Installation fährt genauso fort wie in Abschnitt 16.2.4, „Anpassen des Workflows“ beschrieben. Nur die Komponenten werden gestartet, die in der Firstboot-Workflow-Konfiguration enthalten sind. Alle anderen Installationsschritte werden übersprungen. Der Endbenutzer passt Sprache, Tastatur, Netzwerk und Passworteinstellungen an, um den Arbeitsplatzrechner zu personalisieren. Nach Abschluss dieses Vorgangs verhält sich ein mit Firstboot installiertes System wie eine normale Instanz von SUSE Linux Enterprise Desktop.