-
Notifications
You must be signed in to change notification settings - Fork 59
Building MiniOS de
Diese Anleitung beschreibt den vollständigen Prozess zum Erstellen von MiniOS, einschließlich System-Builds, Modulentwicklung und erweiterten Konfigurationsoptionen.
MiniOS verwendet ein modulares Build-System, bei dem das Betriebssystem aus einzelnen Modulen im SquashFS-Format zusammengesetzt wird. Jedes Modul enthält spezifische Softwarepakete oder Komponenten und wird in einer festgelegten Reihenfolge geladen, um das vollständige System zu bilden.
- Neueste Version von Debian oder Ubuntu zum Erstellen
- Ausreichend freier Speicherplatz (empfohlen: 20GB+)
- Internetverbindung zum Herunterladen von Paketen
- Benötigte Pakete, aufgelistet in
linux-live/prerequisites.list
Die Datei prerequisites.list verwendet das condinapt-Format mit bedingten Markierungen. Installieren Sie die benötigten Pakete manuell:
sudo apt-get update
sudo apt-get install sudo binutils debootstrap squashfs-tools xz-utils lz4 zstd xorriso mtools rsync curl
sudo apt-get install grub-efi-amd64-bin grub-pc-binAlternativ können Sie condinapt verwenden, um die Voraussetzungenliste zu verarbeiten, falls dies auf Ihrem System verfügbar ist.
MiniOS stellt zwei Hauptwerkzeuge für den Build-Prozess bereit:
Ein Kommandozeilen-Tool, das die Konfiguration und den Start des Build-Prozesses vereinfacht. Es bietet eine benutzerfreundliche Oberfläche zur Einstellung verschiedener Build-Parameter:
- Ziel-Distribution (buster, bookworm, trixie, etc.)
- Architektur (amd64, i386)
- Desktop-Umgebung (core, flux, xfce, lxqt)
- Paketvariante (minimum, standard, toolbox, ultra)
- Kernel-Optionen
- Locale- und Zeitzoneneinstellungen
Verwendung:
<a id="build-with-default-configuration"></a>
# Build with default configuration
minios-cmd -d bookworm -a amd64 -de xfce -pv standard
<a id="build-with-custom-options"></a>
# Build with custom options
minios-cmd -d bookworm -a amd64 -de xfce -pv toolbox -c zstd -l en_US -tz "Europe/Prague"Detaillierte Informationen zur Nutzung finden Sie in der minios-cmd Dokumentation.
Das zentrale Build-Skript, das den schrittweisen Build-Prozess steuert:
- Aufbau der Build-Umgebung
- Installation des Basissystems
- Integration der gewählten Desktop-Umgebung
- Erstellung des SquashFS-Dateisystems
- Konfiguration des Boot-Prozesses
- Generierung des bootfähigen ISO-Abbilds
Verwendung:
<a id="complete-build"></a>
# Complete build
./minios-live -
<a id="specific-stages"></a>
# Specific stages
./minios-live build-bootstrap
./minios-live build-chroot - build-liveDetaillierte Informationen zur Nutzung finden Sie in der minios-live Dokumentation.
Das MiniOS-Build-System ist wie folgt organisiert:
minios-live/
├── linux-live/ # Core scripts and build libraries
│ ├── bootfiles/ # Files and templates for booting (GRUB, ISOLINUX, EFI, etc.)
│ ├── environments/ # Environment descriptions and settings
│ ├── initramfs/ # Scripts for creating initramfs
│ ├── scripts/ # Module scripts and templates
│ ├── build-initramfs # Script for separate initramfs build
│ ├── build.conf # Main build configuration file
│ ├── condinapt # Script/tool for working with package lists
│ ├── install-chroot # Script for installing into the chroot environment
│ ├── minioslib # Core Bash function library
│ └── prerequisites.list # List of required packages for installation on the host for building
├── tools/ # Auxiliary build scripts
├── minios-cmd # CLI utility for setting build parameters
└── minios-live # Main script for building MiniOS
Der Build-Prozess folgt einer strukturierten Abfolge von Phasen:
flowchart TD
Start([Start Build]) --> Choice{Choose Tool}
Choice -->|Easy Setup| A([minios-cmd<br/>Configure Parameters])
Choice -->|Advanced Control| B([minios-live<br/>Direct Execution])
A --> A1[Generate build.conf]
A1 --> B
B --> PreCheck{🌐 Internet Check<br/>Network Required}
PreCheck -->|❌ No Internet| NetworkFail[❌ Build Cannot Start<br/>• Check network connection<br/>• Verify DNS resolution<br/>• Configure proxy if needed]
PreCheck -->|✅ Connected| C1
NetworkFail --> PreCheck
C1[build-bootstrap<br/>📦 Create Base System<br/>• Run debootstrap<br/>• Install core packages<br/>• Setup chroot environment]
C1 --> C2[build-chroot<br/>🔧 Configure System<br/>• Install base packages<br/>• Configure settings<br/><br/>]
C2 --> C3[build-live<br/>🗜️ Create Core SquashFS<br/>• Compress base system<br/>• Create 00-core.sb module<br/>• Prepare live environment]
C3 --> C4[build-modules<br/>📚 Build Environment Modules<br/>• Process linked modules<br/>• Create SquashFS files<br/>• Apply conditional packages]
C4 --> C5[build-boot<br/>🥾 Prepare Boot System<br/>• Setup GRUB & ISOLINUX<br/>• Create initramfs<br/>• Configure boot parameters]
C5 --> C6[build-config<br/>⚙️ Generate Boot Configs<br/>• Create menu entries<br/>• Configure live options<br/><br/>]
C6 --> C7[build-iso<br/>💿 Create Final ISO<br/>• Combine all components<br/>• Generate bootable image<br/><br/>]
C7 --> Success([✅ Final ISO Ready<br/>📁 build/iso/])
%% Alternative paths
C1 -.->|Skip to specific stage| C4
C3 -.->|Rebuild modules only| C4
C4 -.->|Update boot only| C5
C6 -.->|Repack ISO only| C7
%% Error handling
C1 --> Error1{Bootstrap Failed?}
Error1 -->|Yes| Fix1[Check network<br/>Verify repositories<br/>Install prerequisites<br/><br/>]
Error1 -->|No| C2
Fix1 --> C1
C4 --> Error2{Module Build Failed?}
Error2 -->|Yes| Fix2[Check package availability<br/>Verify conditions<br/>Review install scripts<br/><br/>]
Error2 -->|No| C5
Fix2 --> C4
%% Styling
classDef processBox fill:#e1f5fe,stroke:#0277bd,stroke-width:2px
classDef choiceBox fill:#fff3e0,stroke:#f57c00,stroke-width:2px
classDef errorBox fill:#ffebee,stroke:#d32f2f,stroke-width:2px
classDef successBox fill:#e8f5e8,stroke:#388e3c,stroke-width:2px
classDef criticalBox fill:#fce4ec,stroke:#c2185b,stroke-width:3px
class C1,C2,C3,C4,C5,C6,C7 processBox
class Choice,PreCheck,Error1,Error2 choiceBox
class Fix1,Fix2 errorBox
class Success successBox
class NetworkFail criticalBox
-
build-bootstrap– Erstellt das minimale Basissystem mit debootstrap -
build-chroot– Installiert Pakete und konfiguriert das System in der chroot-Umgebung -
build-live– Erstellt das Haupt-SquashFS-Image mit dem Kernsystem -
build-modules– Baut zusätzliche SquashFS-Module für weitere Software -
build-boot– Bereitet Bootloader- und Kernel-Dateien vor -
build-config– Generiert Boot-Konfigurationsdateien -
build-iso– Erstellt das finale bootfähige ISO-Abbild
<a id="full-automated-build"></a>
# Full automated build
./minios-live -
<a id="or"></a>
# or
./minios-live build-bootstrap - build-iso<a id="run-only-bootstrap-stage"></a>
# Run only bootstrap stage
./minios-live build-bootstrap
<a id="run-from-chroot-to-live-stages"></a>
# Run from chroot to live stages
./minios-live build-chroot - build-live
<a id="run-from-modules-to-completion"></a>
# Run from modules to completion
./minios-live build-modules -
<a id="build-only-iso-from-existing-data"></a>
# Build only ISO from existing data
./minios-live build-isoDies ist die primäre Konfigurationsdatei, die Folgendes definiert:
- Distributions-Einstellungen: Ziel-Distribution (buster, bookworm, trixie, sid)
- Architektur: amd64, i386, i386-pae (nur bookworm und älter; trixie und sid unterstützen nur amd64)
- Desktop-Umgebung: core, flux, xfce, lxqt
- Paketvariante: minimum, standard, toolbox, ultra
- Kompression: xz, lzo, gz, lz4, zstd
- Kernel-Einstellungen: Typ, AUFS-Unterstützung, DKMS-Kompilierung
- Locale-Einstellungen: Sprache, Zeitzone, Tastaturbelegung
Wird während des Build-Prozesses automatisch generiert und enthält laufzeitspezifische Einstellungen für die chroot-Umgebung.
MiniOS unterstützt verschiedene Paketvarianten, die bestimmen, welche Software enthalten ist:
- minimum: Nur essentielle Pakete
- standard: Standard-Desktop-Anwendungen
- toolbox: Entwicklungswerkzeuge und erweiterte Utilities
- ultra: Vollständige Software-Suite mit zusätzlichen Anwendungen
Die Paketauswahl wird mithilfe von bedingten Markierungen in den packages.list-Dateien gesteuert:
<a id="install-only-in-toolbox-and-ultra-variants"></a>
# Install only in toolbox and ultra variants
firefox +pv=toolbox +pv=ultra
<a id="install-only-in-minimum-variant"></a>
# Install only in minimum variant
basic-tool +pv=minimum
Das Build-System verwendet eine nummerierte Modulstruktur, die sich in linux-live/scripts/ befindet:
00-core/ # Base system packages
01-kernel/ # Linux kernel
02-firmware/ # Hardware firmware
03-gui-base/ # Basic GUI libraries
04-xfce-desktop/ # Desktop environment
05-apps/ # Desktop applications
10-example/ # Example module template
Jedes Modulverzeichnis enthält:
-
packages.list: Liste der zu installierenden Pakete mit bedingten Markierungen -
install: Bash-Skript, das während des Modul-Builds ausgeführt wird -
rootcopy-install/: Dateien, die während des Builds ins System kopiert werden -
rootcopy-postinstall/: Dateien, die nach der Paketinstallation kopiert werden -
skip_conditions.conf: Bedingungen zum Überspringen des Modul-Builds -
patches/: Vor dem Build angewendete Patches (nicht verfügbar für 00-core)
Das 10-example/ Modul dient als Vorlage zur Erstellung neuer Module. Es enthält:
- Eine vollständige
packages.listmit Beispielen für bedingte Markierungen - Ein einfaches
install-Skript, das die korrekte Verwendung von condinapt zeigt - Beispielverzeichnisse
rootcopy-install/undrootcopy-postinstall/ - Dokumentationskommentare, die jede Komponente erklären
Um ein neues Modul zu erstellen: Kopieren Sie das Verzeichnis 10-example und passen Sie es nach Ihren Bedürfnissen an:
cp -r linux-live/scripts/10-example linux-live/scripts/06-my-moduleDiese Vorlage wird in dieser Dokumentation verwendet und bietet den besten Ausgangspunkt für eigene Module.
Das Modulsystem funktioniert über Umgebungskonfigurationen in linux-live/environments/. Jedes Umgebungsverzeichnis enthält symbolische Links zu den Modulen, die für die jeweilige Desktop-Umgebung und Paketvariante eingebunden werden sollen.
linux-live/environments/
├── core/ # Core system (no desktop)
├── flux/ # Flux desktop environment
├── lxqt/ # LXQt desktop environment
├── xfce/ # XFCE desktop environment
└── xfce-debug/ # XFCE with debug modulesJedes Umgebungsverzeichnis enthält symbolische Links zu Modulverzeichnissen in linux-live/scripts/:
<a id="example-xfce-environment"></a>
# Example: XFCE environment
linux-live/environments/xfce/
├── 01-kernel -> ../../scripts/01-kernel
├── 02-firmware -> ../../scripts/02-firmware
├── 03-gui-base -> ../../scripts/03-gui-base
├── 04-xfce-desktop -> ../../scripts/04-xfce-desktop
├── 05-apps -> ../../scripts/05-apps
└── 06-firefox -> ../../scripts/10-firefoxUm Module zu bauen, verwenden Sie den Befehl build-modules:
<a id="build-all-unbuilt-modules-for-the-current-environment"></a>
# Build all unbuilt modules for the current environment
./minios-live build-modules
<a id="this-will-build-all-modules-that"></a>
# This will build all modules that:
<a id="1-are-linked-in-the-current-environment-directory"></a>
# 1. Are linked in the current environment directory
<a id="2-havent-been-built-yet"></a>
# 2. Haven't been built yet
<a id="3-meet-the-skip-conditions-if-any"></a>
# 3. Meet the skip conditions (if any)Das install-Skript in jedem Modul:
- Lädt
/minioslibfür gemeinsame Funktionen - Lädt
/minios_build.conffür die Build-Konfiguration - Setzt debconf-Auswahlen für die automatisierte Paketkonfiguration
- Führt individuelle Konfigurationen und Dateianpassungen durch
- Verwendet Konsolenfarben für die Ausgabeformatierung
Beispielstruktur:
#!/bin/bash
set -e # exit on error
set -o pipefail # exit on pipeline error
set -u # treat unset variable as error
. /minioslib
. /minios_build.conf
SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
console_colors
<a id="debconf-pre-configurations"></a>
# Debconf pre-configurations
DEBCONF_SETTINGS=(
"package-name package-name/option boolean true"
)
<a id="apply-debconf-settings"></a>
# Apply debconf settings
for SETTING in "${DEBCONF_SETTINGS[@]}"; do
echo "${SETTING}" | debconf-set-selections -v
done
<a id="custom-installation-and-configuration-logic"></a>
# Custom installation and configuration logic
<a id="section"></a>
# ...CondinAPT ist das System von MiniOS für die bedingte Paketinstallation und steuert die Paketauswahl basierend auf Build-Parametern wie Desktop-Umgebung, Distribution und Paketvariante.
Jedes Modul enthält eine packages.list-Datei mit bedingten Paketspezifikationen:
<a id="basic-syntax-examples"></a>
# Basic syntax examples
package-name # Always install
package-name +pv=toolbox # Install only for toolbox variant
package-name +de=xfce # Install only for XFCE desktop
package-name -pv=minimum # Install except for minimum variant
preferred-pkg || fallback-pkg # Try first, use second if unavailableStandardmäßige Nutzung in Modul-Installationsskripten:
<a id="load-minios-library-and-install-packages"></a>
# Load MiniOS library and install packages
. /minioslib || exit 1
/linux-live/condinapt \
-l "$CWD/packages.list" \
-c /linux-live/build.conf \
-m /linux-live/condinapt.mapUmfassende CondinAPT-Dokumentation inklusive erweiterter Syntax, Filter, Prioritätswarteschlangen, Debug-Modi und Praxisbeispielen finden Sie unter: CondinAPT.md
-
+pv=variant– Paketvariante (minimum, standard, toolbox, ultra) -
+d=distribution– Distribution (bookworm, trixie, jammy, noble) -
+de=desktop– Desktop-Umgebung (core, flux, xfce, lxqt) -
+da=architecture– Architektur (amd64, i386) -
+dt=type– Distributionstyp (debian, ubuntu)
- Repository klonen und vorbereiten:
git clone https://github.com/minios-linux/minios-live.git
cd minios-live- Voraussetzungen installieren:
sudo apt-get update
sudo apt-get install sudo binutils debootstrap squashfs-tools xz-utils lz4 zstd xorriso mtools rsync grub-efi-amd64-bin grub-pc-bin- Build mit minios-cmd (empfohlen):
./minios-cmd -d bookworm -a amd64 -de xfce -pv standard- Oder Build mit minios-live:
./minios-live -- Konfiguration kopieren und bearbeiten:
cp linux-live/build.conf linux-live/build-custom.conf
<a id="edit-build-customconf-with-your-preferences"></a>
# Edit build-custom.conf with your preferences- Build mit eigener Konfiguration:
BUILD_CONF=linux-live/build-custom.conf ./minios-live -Sie können komplett neue Desktop-Umgebungen erstellen, indem Sie ein neues Umgebungsverzeichnis anlegen und die passenden Module konfigurieren. Beispiel für die Erstellung einer GNOME-Umgebung:
- Umgebungsverzeichnis erstellen:
mkdir -p linux-live/environments/gnome- Basis-Desktop-Modul erstellen (04-gnome-desktop):
<a id="start-with-the-example-template-for-a-clean-base"></a>
# Start with the example template for a clean base
cp -r linux-live/scripts/10-example linux-live/scripts/04-gnome-desktop
<a id="configure-gnome-specific-packages"></a>
# Configure GNOME-specific packages
cat > linux-live/scripts/04-gnome-desktop/packages.list << EOF
<a id="base-gnome-desktop-packages"></a>
# Base GNOME desktop packages
gdm3
gnome-shell
gnome-session
gnome-settings-daemon
gnome-control-center
nautilus
gnome-terminal
<a id="standard-gnome-applications"></a>
# Standard GNOME applications
gnome-calculator +pv=standard +pv=toolbox +pv=ultra
gnome-text-editor +pv=standard +pv=toolbox +pv=ultra
eog +pv=standard +pv=toolbox +pv=ultra
evince +pv=standard +pv=toolbox +pv=ultra
<a id="additional-gnome-tools"></a>
# Additional GNOME tools
gnome-tweaks +pv=toolbox +pv=ultra
gnome-extensions-app +pv=toolbox +pv=ultra
dconf-editor +pv=toolbox +pv=ultra
EOF
<a id="create-a-custom-install-script-for-gnome-specific-configuration"></a>
# Create a custom install script for GNOME-specific configuration
cat > linux-live/scripts/04-gnome-desktop/install << 'EOF'
#!/bin/bash
set -e
set -o pipefail
set -u
. /minioslib
. /minios_build.conf
SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
<a id="install-packages-using-condinapt"></a>
# Install packages using condinapt
/condinapt -l "${SCRIPT_DIR}/packages.list" -c "${SCRIPT_DIR}/minios_build.conf" -m "${SCRIPT_DIR}/condinapt.conf"
if [ $? -ne 0 ]; then
echo "Failed to install packages."
exit 1
fi
<a id="set-gnome-as-default-session"></a>
# Set GNOME as default session
echo 'gnome' > /etc/skel/.dmrc
echo '[Desktop]' > /etc/skel/.dmrc
echo 'Session=gnome' >> /etc/skel/.dmrc
EOF
chmod +x linux-live/scripts/04-gnome-desktop/install- GNOME-Anwendungsmodul erstellen (05-gnome-apps):
cp -r linux-live/scripts/10-example linux-live/scripts/05-gnome-apps
cat > linux-live/scripts/05-gnome-apps/packages.list << EOF
<a id="gnome-applications"></a>
# GNOME Applications
gnome-software +pv=standard +pv=toolbox +pv=ultra
gnome-system-monitor +pv=standard +pv=toolbox +pv=ultra
gnome-disk-utility +pv=standard +pv=toolbox +pv=ultra
gnome-screenshot +pv=standard +pv=toolbox +pv=ultra
gnome-calendar +pv=toolbox +pv=ultra
gnome-weather +pv=toolbox +pv=ultra
gnome-maps +pv=ultra
rhythmbox +pv=toolbox +pv=ultra
totem +pv=toolbox +pv=ultra
EOF
<a id="create-a-custom-install-script-for-gnome-applications"></a>
# Create a custom install script for GNOME applications
cat > linux-live/scripts/05-gnome-apps/install << 'EOF'
#!/bin/bash
set -e
set -o pipefail
set -u
. /minioslib
. /minios_build.conf
SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
<a id="install-packages-using-condinapt-1"></a>
# Install packages using condinapt
/condinapt -l "${SCRIPT_DIR}/packages.list" -c "${SCRIPT_DIR}/minios_build.conf" -m "${SCRIPT_DIR}/condinapt.conf"
if [ $? -ne 0 ]; then
echo "Failed to install packages."
exit 1
fi
<a id="configure-default-applications-for-gnome"></a>
# Configure default applications for GNOME
mkdir -p /etc/skel/.config
<a id="set-default-applications"></a>
# Set default applications
cat > /etc/skel/.config/mimeapps.list << 'MIME_EOF'
[Default Applications]
text/plain=gnome-text-editor.desktop
image/jpeg=eog.desktop
image/png=eog.desktop
application/pdf=evince.desktop
video/mp4=totem.desktop
audio/mpeg=rhythmbox.desktop
MIME_EOF
EOF
chmod +x linux-live/scripts/05-gnome-apps/install- Module mit der GNOME-Umgebung verknüpfen:
<a id="link-base-system-modules-same-for-all-environments"></a>
# Link base system modules (same for all environments)
ln -s ../../scripts/01-kernel linux-live/environments/gnome/01-kernel
ln -s ../../scripts/02-firmware linux-live/environments/gnome/02-firmware
ln -s ../../scripts/03-gui-base linux-live/environments/gnome/03-gui-base
<a id="link-gnome-specific-modules"></a>
# Link GNOME-specific modules
ln -s ../../scripts/04-gnome-desktop linux-live/environments/gnome/04-gnome-desktop
ln -s ../../scripts/05-gnome-apps linux-live/environments/gnome/05-gnome-apps
<a id="link-additional-modules-as-needed"></a>
# Link additional modules as needed
ln -s ../../scripts/10-firefox linux-live/environments/gnome/06-firefox- Build für GNOME-Umgebung konfigurieren:
<a id="copy-and-modify-build-configuration"></a>
# Copy and modify build configuration
cp linux-live/build.conf linux-live/build-gnome.conf
sed -i 's/DESKTOP_ENVIRONMENT=".*"/DESKTOP_ENVIRONMENT="gnome"/' linux-live/build-gnome.conf
sed -i 's/PACKAGE_VARIANT=".*"/PACKAGE_VARIANT="standard"/' linux-live/build-gnome.conf
<a id="build-the-gnome-system"></a>
# Build the GNOME system
BUILD_CONF=linux-live/build-gnome.conf ./minios-live -Beim Erstellen eigener Umgebungen gilt:
- Basismodule (01–03): In der Regel in allen Umgebungen identisch
- Desktop-Modul (04): Enthält die Kernpakete und Konfiguration der Desktop-Umgebung
- Apps-Modul (05): Desktop-spezifische Anwendungen
- Optionale Module (06+): Zusätzliche Softwarepakete
Namenskonvention für Module:
- Verwenden Sie das Format
04-{desktop}-desktopfür das Haupt-Desktop-Modul - Verwenden Sie
05-{desktop}-appsoder05-appsfür Anwendungen - Nummerieren Sie weitere Module fortlaufend (06, 07, 08, usw.)
Konfigurationshinweise:
- Jede Umgebung benötigt passende Skip-Bedingungen in den Modulen
- Desktop-spezifische Pakete sollten
+de={environment}-Bedingungen nutzen - Testen Sie gründlich mit verschiedenen Paketvarianten (minimum, standard, toolbox, ultra)
- Neues Modul mit der Vorlage erstellen:
cp -r linux-live/scripts/10-example linux-live/scripts/06-custom-module- Die packages.list bearbeiten:
<a id="edit-linux-livescripts06-custom-modulepackageslist"></a>
# Edit linux-live/scripts/06-custom-module/packages.list
<a id="add-your-packages-with-appropriate-conditional-markers"></a>
# Add your packages with appropriate conditional markers- Das Installationsskript anpassen:
<a id="edit-linux-livescripts06-custom-moduleinstall"></a>
# Edit linux-live/scripts/06-custom-module/install
<a id="add-custom-configuration-and-setup-commands"></a>
# Add custom configuration and setup commands- Das Modul mit Ihrer Umgebung verknüpfen:
ln -s ../../scripts/06-custom-module linux-live/environments/xfce/06-custom-module- Module bauen:
./minios-live build-modules-
Build startet nicht – Internetverbindung erforderlich:
-
Problem:
minios-liveführt beim Start einen obligatorischen Internetverbindungs-Check durch - Lösung: Stellen Sie vor dem Start des Builds eine stabile Internetverbindung sicher
-
Prüfung: DNS-Auflösung testen:
nslookup deb.debian.org - Proxy: Proxy-Einstellungen konfigurieren, falls Sie sich hinter einer Unternehmensfirewall befinden
- Hinweis: Der Build kann ohne Internetzugang nicht fortgesetzt werden
-
Problem:
-
Build schlägt beim Bootstrap fehl:
- Überprüfen, ob die Ziel-Repositorys der Distribution verfügbar sind
- Sicherstellen, dass alle Voraussetzungen installiert sind
- Test:
wget -q --spider http://deb.debian.org
-
Fehler beim Modul-Build:
- Paketverfügbarkeit in der Ziel-Distribution prüfen
- Syntax der Bedingungsmarker überprüfen
- Installationsskript auf Fehler kontrollieren
-
Fehlende Pakete:
- Condinapt-Bedingungen prüfen
- Paketnamen für die Ziel-Distribution verifizieren
- Einstellungen der Paketvarianten überprüfen
-
Boot-Probleme:
- GRUB-Konfiguration prüfen
- Kernel- und initramfs-Erstellung verifizieren
- Bootloader-Dateien kontrollieren
Aktivieren Sie die Debug-Ausgabe, indem Sie das Detaillevel in Ihrer Build-Konfiguration einstellen:
Option 1: build.conf bearbeiten
<a id="edit-linux-livebuildconf-and-set"></a>
# Edit linux-live/build.conf and set:
VERBOSITY_LEVEL=2 # Very verbose output with detailed tracing
<a id="or-1"></a>
# or
VERBOSITY_LEVEL=1 # Verbose output (default)
<a id="or-2"></a>
# or
VERBOSITY_LEVEL=0 # Minimal outputOption 2: Eigene Konfiguration mit Debug-Einstellungen erstellen
cp linux-live/build.conf linux-live/build-debug.conf
sed -i 's/VERBOSITY_LEVEL=.*/VERBOSITY_LEVEL=2/' linux-live/build-debug.conf
<a id="enable-additional-debug-options"></a>
# Enable additional debug options
sed -i 's/DEBUG_SSH_KEYS="false"/DEBUG_SSH_KEYS="true"/' linux-live/build-debug.conf
sed -i 's/DEBUG_SET_ROOT_PASSWORD="false"/DEBUG_SET_ROOT_PASSWORD="true"/' linux-live/build-debug.conf
<a id="build-with-debug-configuration"></a>
# Build with debug configuration
BUILD_CONF=linux-live/build-debug.conf ./minios-live -Detailstufen:
-
0: Minimale Ausgabe – nur essentielle Meldungen -
1: Ausführliche Ausgabe – Standard-Build-Informationen (Standard) -
2: Sehr ausführliche Ausgabe – detailliertes Tracing mit aktiviertem Bash-Debugging
Build-Logs werden gespeichert unter:
-
build/log/– Allgemeine Build-Protokolle
- Das offizielle Wiki durchsuchen
- Bestehende Issues auf GitHub prüfen
- Der Community im Forum auf minios.dev beitreten
- Module erstellen – Erfahren Sie, wie Sie eigene SquashFS-Module mit zusätzlicher Software erstellen
-
ISO neu erstellen – Ihr laufendes Live-System mit
sb2isoin eine bootfähige ISO umwandeln - CondinAPT – Das bedingte Paketmanagementsystem für Builds verstehen
🌐 Languages
📋 About MiniOS
🚀 Installation
⚙️ Configuration
🛡️ Administration
🛠️ Development
📋 Über MiniOS
🚀 Installation
- Schnellstartanleitung
- Hardware-Kompatibilität
- MiniOS Installation
- MiniOS Installer
- USB-Erstellungstools
⚙️ Konfiguration
🛡️ Administration
🛠️ Entwicklung
📋 Acerca de MiniOS
🚀 Instalación
- Guía de Inicio Rápido
- Compatibilidad de Hardware
- Instalando MiniOS
- Instalador de MiniOS
- Herramientas para Crear USB
⚙️ Configuración
- Menús de Arranque
- Parámetros de Arranque
- Archivo de Configuración
- Parámetros de live-config
- Gestión de Sesiones
🛡️ Administración
- Lista de Paquetes
- Gestión del Kernel
- Endurecimiento de Seguridad
- Optimización de Rendimiento
- Virtualización
🛠️ Desarrollo
📋 À propos de MiniOS
🚀 Installation
- Guide de démarrage rapide
- Compatibilité matérielle
- Installation de MiniOS
- Programme d’installation MiniOS
- Outils de création USB
⚙️ Configuration
- Menus de démarrage
- Paramètres de démarrage
- Fichier de configuration
- Paramètres live-config
- Gestion de session
🛡️ Administration
- Liste des paquets
- Gestion du noyau
- Renforcement de la sécurité
- Optimisation des performances
- Virtualisation
🛠️ Développement
📋 Tentang MiniOS
🚀 Instalasi
- Panduan Mulai Cepat
- Kompatibilitas Perangkat Keras
- Menginstal MiniOS
- Installer MiniOS
- Alat Pembuatan USB
⚙️ Konfigurasi
🛡️ Administrasi
🛠️ Pengembangan
📋 Informazioni su MiniOS
🚀 Installazione
- Guida Rapida
- Compatibilità Hardware
- Installazione di MiniOS
- Installatore MiniOS
- Strumenti per Creare USB
⚙️ Configurazione
🛡️ Amministrazione
- Elenco Pacchetti
- Gestione Kernel
- Rafforzamento della Sicurezza
- Ottimizzazione Prestazioni
- Virtualizzazione
🛠️ Sviluppo
📋 Sobre o MiniOS
🚀 Instalação
- Guia de Início Rápido
- Compatibilidade de Hardware
- Instalando o MiniOS
- Instalador do MiniOS
- Ferramentas de Criação de USB
⚙️ Configuração
- Menus de Boot
- Parâmetros de Boot
- Arquivo de Configuração
- Parâmetros live-config
- Gerenciamento de Sessão
🛡️ Administração
- Lista de Pacotes
- Gerenciamento de Kernel
- Reforço de Segurança
- Otimização de Desempenho
- Virtualização
🛠️ Desenvolvimento
📋 О MiniOS
🚀 Установка
- Краткое руководство
- Совместимость с оборудованием
- Установка MiniOS
- Установщик MiniOS
- Инструменты для создания USB
⚙️ Конфигурация
🛡️ Администрирование
🛠️ Разработка