11 Anpassen von Installations-Images mit mksusecd #
mksusecd
ist ein nützliches Tool zum Erstellen eines angepassten Installations-Image. Bearbeiten Sie damit die normalen Installations-Images für SUSE Linux Enterprise, um Dateien hinzuzufügen und zu entfernen, ein minimales Netzwerkinstallations-Image zu erstellen, Boot-Optionen oder Software-Repositorys anzupassen und ein minimales Boot-Image als Alternative zum Booten eines Systems von einem PXE-Server aus zu erstellen.
11.1 Installieren von mksusecd #
In SLE 15 befindet sich mksusecd
im Modul Development
Tools
. Falls dieses Modul nicht aktiviert ist, müssen Sie es zuerst aktivieren. Finden Sie den genauen Modulnamen und das SUSEConnect
-Aktivierungskommando mit zypper
:
>
zypper search-packages mksusecd
Following packages were found in following modules:
Package Module or Repository
-------------------- -------------------------------------------------------------------
---------------------- -----------------------------------------------------------------
mksusecd Development Tools Module (sle-module-development-tools/15.4/x86_64)
SUSEConnect --product sle-module-development-tools/15.4/x86_64
To activate the respective module or product, use SUSEConnect --product.
Use SUSEConnect --help for more details.
Aktivieren Sie das Modul mit SUSEConnect:
>
sudo
SUSEConnect --product sle-module-development-tools/15.4/x86_64
Installieren mksusecd
:
>
sudo
zypper in mksusecd
Führen Sie mksusecd --help
aus, um eine vollständige Liste der Kommandos anzuzeigen.
Nach dem Erstellen eines benutzerdefinierten Image brennen Sie es mit Ihrem bevorzugten Brennprogramm auf CD/DVD oder erstellen Sie ein bootfähiges USB-Flash-Laufwerk mit dem Kommando dd
. Vergewissern Sie sich, dass das Gerät nicht eingehängt ist und führen Sie dann folgendes Kommando aus:
#
dd
if=myinstaller.iso of=/dev/SDB bs=4M
Danach ist Ihr neues bootfähiges Gerät betriebsbereit.
11.2 Erstellen eines minimalen Boot-Image #
Erstellen Sie mit mksusecd
ein minimales Boot-Image zum Starten von Client-Rechnern von CD/DVD oder einem USB-Flash-Laufwerk statt von einem PXE-Boot-Server. Das minimale Boot-Image startet den Kernel und initrd. Danach werden die verbleibenden Installationsdateien von einem lokalen NFS-Server abgerufen (weitere Informationen finden Sie in Abschnitt 13.1, „Einrichten eines Installationsservers mithilfe von YaST“).
Führen Sie zum Erstellen des minimalen ISO-Image folgendes Kommando aus:
>
sudo
mksusecd
--create min-install.iso \ --net=nfs://192.168.1.1:/srv/install/ARCH/OS_VERSION/SP_VERSION/cd1 \ /srv/tftpboot/EFI/ARCH/boot
Ersetzen Sie die NFS-Server-Adresse durch Ihre Adresse. Ersetzen Sie ARCH durch das entsprechende Verzeichnis für die Zielsystemarchitektur. Ersetzen Sie auch OS_version und SP_VERSION (Service-Pack) entsprechend Ihren Pfaden in Abschnitt 13.1, „Einrichten eines Installationsservers mithilfe von YaST“.
11.3 Festlegen von standardmäßigen Kernel-Boot-Parametern #
Konfigurieren Sie Ihre benutzerdefinierten Kernel-Boot-Parameter in einem benutzerdefinierten mksusecd
-Image anstatt auf eine Boot-Eingabeaufforderung zu warten:
>
sudo
mksusecd --create install.iso \ --boot "textmode=1 splash=silent mitigations=auto"
Überprüfen Sie durch Abfragen von /proc
, ob Ihre benutzerdefinierten Parameter nach dem Start korrekt geladen wurden:
>
cat /proc/cmdline
11.4 Module, Erweiterungen und Repositorys anpassen #
SUSE Linux Enterprise 15 unterstützt Module (nicht zu verwechseln mit Kernel-Modulen) und Erweiterungen für verschiedene Produktkomponenten. Dies sind Add-Ons zum Standard-Basesystem
, z. B. Development
Tools
, Desktop Applications
und SUSE Linux Enterprise Live Patching
. Weitere Informationen finden Sie im Handbuch „Modules and Extensions Quick Start“ (Kurzanleitung zu Modulen und Erweiterungen).
Mit mksusecd
erstellen Sie ein Installations-Image, das alle gewünschten zusätzlichen Module und Erweiterungen enthält. Beginnen Sie mit der Abfrage bestehender Images wie bei diesem Beispiel für SUSE Linux Enterprise 15 SP6:
>
sudo
mksusecd --list-repos SLE-15-SP6-Full-ARCH-GM-media1.iso Repositories: Basesystem-Module [15.6-0] SUSE-CAP-Tools-Module [15.6-0] Containers-Module [15.6-0] Desktop-Applications-Module [15.6-0] Development-Tools-Module [15.6-0] HPC-Module [15.6-0] Legacy-Module [15.6-0] Live-Patching [15.6-0] Public-Cloud-Module [15.6-0] Python2-Module [15.6-0] SAP-Applications-Module [15.6-0] Server-Applications-Module [15.6-0] Transactional-Server-Module [15.6-0] Web-Scripting-Module [15.6-0] SLEHA15-SP6 [15.6-0] SLE-15-SP6-HPC [15.6-0] SLED15-SP6 [15.6-0] SLES15-SP6 [15.6-0] SLE-15-SP6-SAP [15.6-0] SLEWE15-SP6 [15.6-0] [...]
Erstellen Sie ein neues Installations-Image, das aus den ausgewählten Modulen, Erweiterungen und Repositorys besteht, und aktivieren Sie es automatisch:
>
sudo
mksusecd --create myinstaller.iso --enable-repos auto \ --include-repos Basesystem-Module,Desktop-Applications-Module \ SLE-15-SP6-Full-ARCH-GM-media1.iso
In diesem Beispiel wird ein Image für die Installation aus dem Internet erstellt. Wenn Sie ein Image für die Offline-Installation erstellen möchten, fügen Sie zusätzlich das Repository des Basisprodukts hinzu, zum Beispiel SLES15-SP6
für SUSE Linux Enterprise Server.
>
sudo
mksusecd --create myinstaller.iso --enable-repos auto \ --include-repos SLES15-SP6,Basesystem-Module,Desktop-Applications-Module \ SLE-15-SP6-Full-ARCH-GM-media1.iso
Ersetzen Sie --enable-repos auto
durch --enable-repos ask
, damit das Installationsprogramm ein Dialogfeld zur Auswahl von Modulen anzeigt.
Wenn Sie die Option --enable-repos
verwenden, fügt mksusecd
dem neuen Image eine Datei add_on_products.xml
zur Verwendung mit AutoYaST hinzu. Die Module in dieser Datei müssen nicht in der Steuerdatei von AutoYaST aufgeführt sein.
11.5 Erstellen einer minimalen Netzinstallations-ISO #
Mit der Option --nano
können Sie ein minimales Installations-Image zum Starten einer Netzwerkinstallation erstellen:
>
sudo
mksusecd --create netinstall.iso \ --nano SLE-15-SP6-Online-ARCH-GM-media1.iso
11.6 Standard-Repository ändern #
Mit der Option --net
legen Sie ein anderes Repository fest, beispielsweise ein eigenes lokales:
>
sudo
mksusecd --create localinstall.iso \ --net "https://example.com/local" SLE-15-SP6-Online-ARCH-GM-media1.iso