GoGPT Best VPN GoSearch

OnWorks-Favicon

supermin – Online in der Cloud

Führen Sie supermin beim kostenlosen Hosting-Anbieter OnWorks über Ubuntu Online, Fedora Online, den Windows-Online-Emulator oder den MAC OS-Online-Emulator aus

Dies ist der Befehl supermin, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann

PROGRAMM:

NAME/FUNKTION


supermin – Tool zum Erstellen und Bauen von Supermin-Appliances

ZUSAMMENFASSUNG


supermin --prepare -o OUTPUTDIR PACKAGE [PAKET ...]

supermin --build -o OUTPUTDIR -f chroot|ext2 INPUT [INPUT ...]

BESCHREIBUNG


Supermin ist ein Werkzeug zum Bau von Supermin-Geräten. Dabei handelt es sich um Kleingeräte (ähnlich
zu virtuellen Maschinen), normalerweise etwa 100 KB groß, die vollständig auf dem Server instanziiert werden.
Fliegen Sie im Bruchteil einer Sekunde, wenn Sie eines davon starten müssen.

Dieses Programm hieß früher febootstrap. Diese Handbuchseite dokumentiert Supermin 5.x
ist eine komplette Neufassung und unterscheidet sich deutlich von febootstrap 2.x. Wenn Sie suchen
Wenn Sie die febootstrap 2.x-Tools verwenden, sind Sie hier nicht richtig.

BASIC OPERATION
Das Supermin-Tool kann in zwei Modi verwendet werden: Vorbereitung ein winziges Supermin-Gerät, das ist
erfolgt auf einem Build-System. Und Gebäude, das die Supermin-Appliance nimmt und a konstruiert
vollständige, bootfähige Appliance, die auf dem System des Endbenutzers erfolgt.

Supermin muss im Allgemeinen nicht als Root ausgeführt werden sollte nicht als Root ausgeführt werden. Es
hat keinen Einfluss auf das Hostsystem oder die auf dem Hostsystem installierten Pakete.

BEREITEN MODUS

--vorbereiten erstellt die winzige Supermin-Appliance im angegebenen Ausgabeverzeichnis. Du gibst es
eine Liste der Pakete, die Sie installieren möchten, und Supermin findet sie automatisch
Abhängigkeiten. Die Liste der Pakete muss auf dem Host-Computer installiert werden.

Beispielsweise:

supermin --prepare bash coreutils -o supermin.d

erstellt eine Supermin-Appliance, die die Pakete „bash“ und „coreutils“ enthält.
Insbesondere werden einige Dateien im Verzeichnis erstellt supermin.d. Dieses Verzeichnis is die
Supermin-Gerät. (Siehe „SUPERMIN-GERÄTE“ unten).

Es ist beabsichtigt, dass die --vorbereiten Schritt wird auf einer zentralen Build-Maschine durchgeführt und die
Supermin Appliance wird an Endbenutzer verteilt (was einfach ist, da Supermin Appliances
sind so klein).

BUILD MODUS

--bauen (zuvor ein separates Programm namens „supermin-helper“) erstellt die vollständige Appliance
von der Supermin-Appliance:

supermin --build --format ext2 supermin.d -o appliance.d

Dadurch werden Dateien mit dem Namen erstellt appliance.d/kernel, appliance.d/root usw., das ist alles
Größe einer bootfähigen Appliance.

Es ist beabsichtigt, dass die --bauen Der Schritt wird in letzter Sekunde auf dem Computer des Endbenutzers ausgeführt
bevor das Gerät benötigt wird. Die Pakete in der Supermin-Appliance (die angegebenen
(bei der Vorbereitung der Supermin-Appliance) muss auf dem Computer des Endbenutzers installiert werden.

Erstellen und zwischenspeichern

Normalerweise möchten Sie die Appliance nur bei Bedarf auf dem Endbenutzercomputer neu erstellen.
Supermin bietet einige zusätzliche Optionen, um dies zu vereinfachen:

supermin --build \
--if-newer --lock /run/user/`id -u`/supermin.lock \
--format ext2 supermin.d -o appliance.d

Wenn mehrere Programme diesen Befehl parallel ausführen, warten die Instanzen auf die Sperre
Datei. Die vollständige Appliance wird nur dann neu erstellt, wenn sie nicht existiert oder älter ist als die
Eingabedateien und Hostpaketdatenbank.

Beachten Sie, dass die Sperrdatei sollen nicht im Inneren aufbewahrt werden -o Verzeichnis.

PAKETE

Mit „Paket“ meinen wir das RPM-, Debian- (usw.) Paket, z. „coreutils“, „perl“.

In allen Fällen kann Supermin nur eine Supermin-Appliance erstellen, die in der Distribution identisch ist.
Version und Architektur an den Host weiter. Es tut nicht Machen Sie Cross-Builds.

OPTIONAL


--help
Zeigen Sie eine kurze Befehlszeilenverwendung an und beenden Sie den Vorgang.

--bauen
Erstellen Sie die vollständige Appliance aus der Supermin-Appliance. Früher war das ein separates
Programm namens „supermin-helper“.

--copy-kernel
(--bauen nur Modus)

Kopieren Sie den Kernel (und den Gerätebaum, falls erstellt), anstatt einen Symlink zum Kernel zu erstellen
/ boot.

Dies ist etwas langsamer, aber notwendig, wenn Sie die Berechtigungen ändern möchten oder
SELinux-Label im Kernel oder Gerätebaum.

--dtb Platzhalter
(--bauen nur Modus)

Falls angegeben, wird nach einem Gerätebaum gesucht, der mit dem ausgewählten Kernel kompatibel ist
und dessen Name mit dem angegebenen Platzhalter übereinstimmt. Sie können einen Platzhalter verwenden, z
„vexpress-*a9*.dtb“, was übereinstimmen würde vexpress-v2p-ca9.dtb.

Anmerkungen:

· Möglicherweise müssen Sie den Platzhalter in Anführungszeichen setzen, um zu verhindern, dass er von Ihnen erweitert wird
Schale.

· Wenn nein --dtb Wenn diese Option angegeben ist, wird kein Gerätebaum gesucht.

· Sie benötigen nur einen Gerätebaum auf Architekturen wie ARM und PowerPC, die verwenden
ihnen. Verwenden Sie diese Option auf anderen Architekturen nicht.

· Wenn Sie diese Option verwenden und kein kompatibler Gerätebaum gefunden werden kann, wird Supermin dies tun
mit einem Fehler beenden.

-f FORMAT
--Format FORMAT
(--bauen nur Modus)

Wählen Sie das Ausgabeformat für die vollständige Appliance aus.

Es gibt keinen Standardwert. Beim Benutzen --bauen Sie müssen das angeben --Format .

Mögliche Formate sind:

Chroot
Ein Verzeichnisbaum im Host-Dateisystem.

In den Dateisystembaum wird geschrieben OUTPUTDIR (dh die -o Möglichkeit).

Dies wird im wahrsten Sinne des Wortes „Chroot“ genannt Chroot(1) hinein
Verzeichnis anschließend, obwohl es eine bessere Idee ist, eine Container-Technologie zu verwenden
(LXC usw.).

In diesem Modus wird kein Kernel, keine Initrd oder DTB generiert, da davon ausgegangen wird, dass Sie
führt die Appliance mit dem Host-Kernel aus.

ext2
Ein Ext2-Dateisystem-Disk-Image.

In den Ausgabekernel wird geschrieben OUTPUTDIR/kernel, der Gerätebaum (falls verwendet) zu
OUTPUTDIR/dtb, ein kleines Initramfs, auf dem die Appliance gemountet werden kann
OUTPUTDIR/initrd, und das ext2-Dateisystem-Image zu OUTPUTDIR/root. (Wo
OUTPUTDIR wird durch die angegeben -o Möglichkeit).

Das Dateisystem (OUTPUTDIR/root) hat eine Standardgröße von 4 GB (siehe auch --Größe
Möglichkeit).

--host-cpu CPU
(--bauen nur Modus)

Geben Sie die Host-CPU an (z. B. „i686“, „x86_64“). Dies wird als Teilzeichenfolgenübereinstimmung verwendet, wenn
Suche nach kompatiblen Kerneln. Wenn nicht angegeben, wird standardmäßig die Host-CPU verwendet
Supermin wurde kompiliert.

--falls-neuer
(--bauen nur Modus)

Das Ausgabeverzeichnis wird überprüft und ist es nicht umgebaut werden, es sei denn, es muss sein.

Dies erfolgt durch Abfrage der Daten der Host-Paketdatenbank (/var/lib/rpm usw),
die Eingabe-Supermin-Dateien und das Ausgabeverzeichnis. Die Operation wird nur durchgeführt
wenn entweder die Host-Paketdatenbank oder die Eingabe-Supermin-Dateien neuer sind als die
Ausgabe Verzeichnis.

Web Link --sperren unten mit.

"--include-packagelist
(--bauen nur Modus)

Hinzufügen /Paketliste Datei im generierten Chroot- oder ext2-Dateisystem, die a enthält
sortierte Liste aller Pakete, die zum Erstellen der Appliance verwendet wurden.

Meistens nützlich zum Debuggen, da es einfacher ist herauszufinden, welche Version z. B. vorliegt
Ein Paket wurde in die Appliance kopiert.

--list-drivers
Listen Sie die in supermin kompilierten Paketmanager-Treiber auf und geben Sie an, ob die entsprechenden
Der Paketmanager wird auf dem aktuellen System erkannt.

--sperren LOCKDATEI
(--bauen nur Modus)

Wenn mehrere parallele Supermin-Läufe erforderlich sind, um eine vollständige Appliance zu erstellen, können Sie diese verwenden
die --sperren Option, um sicherzustellen, dass sie nicht aufeinander treten.

Die Sperrdatei wird verwendet, um einen gegenseitigen Ausschluss zu ermöglichen, sodass nur eine Instanz von supermin
wird jeweils ausgeführt.

Beachten Sie, dass die Sperrdatei sollen nicht im Ausgabeverzeichnis gespeichert werden.

-o OUTPUTDIR
Wählen Sie das Ausgabeverzeichnis aus.

Beim Benutzen --vorbereiten, dies ist das Verzeichnis, in dem sich die Supermin-Appliance befindet
geschrieben. Beim Benutzen --bauen, dies ist das Verzeichnis, in dem sich die vollständige Appliance, der Kernel, befindet
usw. werden geschrieben.

Jedes früher Inhalt of die Möglichkeiten für das Ausgangssignal: Verzeichnis sind gelöschtund ein neues Ausgabeverzeichnis
geschaffen.

Das Ausgabeverzeichnis wird (nahezu) atomar erstellt, indem ein temporäres Verzeichnis erstellt wird
Verzeichnis namens so etwas wie OUTPUTDIR.abc543und dann die alte Ausgabe umbenennen
Verzeichnis (falls vorhanden) und löschen Sie es und benennen Sie dann das temporäre Verzeichnis in um
OUTPUTDIR. Durch die Kombination dieser Option mit --sperren Sie können sicherstellen, dass mehrere parallel sind
Läufe von Supermin stehen nicht in Konflikt miteinander.

--packager-config KONFIGURATIONSDATEI
(--vorbereiten nur Modus)

Legen Sie die Konfigurationsdatei für den Paketmanager fest. Dadurch können Sie festlegen
alternative Software-Repositories.

Für ArchLinux wird hiermit die Pacman-Konfigurationsdatei festgelegt (Standard). /etc/pacman.conf).
Weitere Informationen finden Sie auch in den pacman.conf(5).

Für Yum/RPM-Distributionen legt dies die Yum-Konfigurationsdatei fest (Standard).
/etc/yum.conf). Sehen yum.conf(5).

--vorbereiten
Bereiten Sie das Supermin-Gerät vor.

--use-installed
(--vorbereiten nur Modus)

Wenn Pakete bereits installiert sind, verwenden Sie den Inhalt (aus dem lokalen Dateisystem).
anstatt sie herunterzuladen.

Beachten Sie, dass dies zu fehlerhaften Appliances führen kann, wenn lokale Dateien geändert wurden
was ursprünglich im Paket war. Dies ist insbesondere bei der Konfiguration ein Problem
Dateien.

Allerdings ist diese Option in manchen kontrollierten Situationen nützlich, zum Beispiel bei der Verwendung
supermin in einem frisch installierten Chroot oder wenn Sie währenddessen keinen Netzwerkzugriff haben
der Bau.

--Größe GRÖßE
(--bauen nur Modus)

Wählen Sie die Größe des ext2-Ausgabedateisystems aus, wobei die Größe mit angegeben werden kann
gebräuchliche Namen wie „32G“ (32 Gigabyte) usw.

Wenn die Größe nicht angegeben ist, wird eine Standardgröße von 4 GB verwendet.

Um die Größe in Byte anzugeben, muss der Zahl der Kleinbuchstabe folgen b, z.B:
"--Größe 10737418240b".

-v
- ausführlich
Aktivieren Sie ausführliche Nachrichten.

Sie können diese Option mehrmals angeben, um noch mehr Nachrichten zu aktivieren:

-v Debuggen von Gesamtphasen.

-v -v
Detaillierte Informationen zu jeder Phase.

-v -v -v
Riesige Mengen an Debugging (viel zu viel für den normalen Gebrauch, aber gut, wenn Sie es tun).
Ich versuche, einen Fehler in Supermin zu diagnostizieren.

-V
--Version
Geben Sie den Paketnamen und die Versionsnummer aus und beenden Sie den Vorgang.

SUPERMIN HAUSHALTSGERÄTE


Supermin-Appliances bestehen aus gerade genug Informationen, um eine Appliance bauen zu können
Enthält dasselbe Betriebssystem (Linux-Version, Distribution, Release usw.) wie das Host-Betriebssystem.
Da der Host und die Appliance viele gemeinsame Dateien gemeinsam nutzen, z / bin / bash und /lib/libc.so
Es gibt keinen Grund, diese Dateien in der Appliance zu versenden. Sie können einfach aus dem gelesen werden
Host bei Bedarf, wenn die Appliance gestartet wird. Aus Platzgründen speichern wir daher nur die
Namen der Pakete, die wir vom Host benötigen, und kopieren Sie diese (plus Abhängigkeiten) unter
Bauzeit.

Es gibt einige Dateien, die auf diese Weise nicht einfach vom Host kopiert werden können. Diese beinhalten
Konfigurationsdateien, die der Host-Administrator möglicherweise bearbeitet hat. Also zusammen mit der Liste von
Host-Dateien speichern wir auch ein Skelett-Basisbild, das diese Dateien und die Gliederung enthält
Verzeichnisaufbau.

Daher besteht die Supermin-Appliance normalerweise aus mindestens zwei Steuerdateien (Pakete
und base.tar.gz).

Pakete
Die Liste der Pakete, die vom Host kopiert werden sollen. Abhängigkeiten werden aufgelöst
automatisch.

Die Datei besteht aus reinem Text, ein Paketname pro Zeile.

base.tar
base.tar.gz
Diese TAR-Datei (die möglicherweise komprimiert ist) enthält das Grundgerüst des Dateisystems. Meistens
enthält Verzeichnisse und einige Konfigurationsdateien.

Alle Pfade in der TAR-Datei sollten relativ zum Stammverzeichnis der Appliance sein.

Hostdateien
Alle anderen Dateien, die vom Host kopiert werden sollen. Dies ist eine reine Textdatei mit
ein Pfadname pro Zeile.

Pfade können Platzhalter enthalten, die beim Erstellen der Appliance erweitert werden, z. B.:

/etc/yum.repos.d/*.repo

würde alles kopieren *.repo Dateien in die Appliance.

Jeder Pfadname in der Datei sollte mit einem „/“-Zeichen beginnen.

Supermin selbst erstellt keine Hostdateien (obwohl dies vor Version 5 der Fall war).
Hauptmechanismus, der zum Erstellen der vollständigen Appliance verwendet wird). Sie können jedoch einen oder mehrere fallen lassen
Kopieren Sie diese Dateien in das Supermin-Appliance-Verzeichnis, wenn Sie sie nach dem Zufallsprinzip kopieren möchten
entpackte Dateien in die vollständige Appliance.

Ausschlussdateien
Eine Liste von Dateinamen, Verzeichnisnamen oder Platzhaltern mit dem Präfix „-“, die ausgeschlossen sind
vom endgültigen Gerät.

Das ist ziemlich brutal, da es nur Dinge entfernt und möglicherweise Pakete zerstört.
Es kann jedoch als bequeme Möglichkeit genutzt werden, die Größe des Endprodukts zu minimieren
Gerät.

Supermin selbst erstellt keine Ausschlussdateien. Sie können jedoch eines oder mehrere davon fallen lassen
Kopieren Sie diese Dateien in das Supermin-Appliance-Verzeichnis, um zu verhindern, dass gepackte Dateien vorhanden sind
in die vollständige Appliance kopiert.

Beachten Sie, dass die oben genannten Namen nur Vorschläge sind. Sie können beliebige Namen verwenden, z
supermin erkennt den Inhalt jeder Datei, wenn es die Appliance rekonstruiert. Du kannst
haben auch mehrere von jedem Dateityp.

REKONSTRUKTURIEREN GERÄT
Der separate Modus „supermin --build“ wird verwendet, um eine Appliance aus dem Supermin zu rekonstruieren
Appliance-Dateien.

Tatsächlich iteriert dieses Programm rekursiv über die ihm übergebenen Dateien und Verzeichnisse. A
Das allgemeine Layout könnte so aussehen:

supermin.d/
supermin.d/base.tar.gz
supermin.d/extra.tar.gz
supermin.d/packages
supermin.d/zz-hostfiles

Auf diese Weise können der Appliance zusätzliche Dateien hinzugefügt werden, indem einfach eine weitere TAR-Datei erstellt wird
(extra.tar.gz im Beispiel oben) und Ablegen im Verzeichnis und weitere
Hostdateien können hinzugefügt werden (zz-hostfiles im Beispiel oben). Wenn das Gerät ist
Nach der Erstellung werden die zusätzlichen Dateien in der Appliance angezeigt.

MINIMIEREN SUPERMIN GERÄT
Möglicherweise möchten Sie die Supermin-Appliance „minimieren“, um bei der Installation Zeit und Platz zu sparen
wird instanziiert. Normalerweise möchten Sie möglicherweise Dokumentation, Infodateien und Manpages entfernen
und Orte.

Sie können dies tun, indem Sie eine Ausschlussdatei erstellen, die Dateien, Verzeichnisse oder Platzhalter auflistet
die Sie nicht einbeziehen möchten. Sie werden übersprungen, wenn die vollständige Appliance erstellt wird.

-/ boot /*
-/lib/modules/*
-/ usr / share / doc /*
-/usr/share/info/*
-/ usr / share / man /*

Seien Sie vorsichtig, was Sie entfernen, da möglicherweise Dateien für den ordnungsgemäßen Betrieb des erforderlich sind
Gerät.

KERN UND KERN MODULE
Normalerweise sind es der Kernel und die Kernelmodule nicht im Supermin-Gerät enthalten.

Wenn die vollständige Appliance erstellt wird, werden die Kernelmodule vom Host kopiert und erstellt
wird mit dem Host-Kernel gebootet.

VERWENDUNG A KUNDENSPEZIFISCH KERN UND KERN MODULE

Supermin ist in der Lage, den besten verfügbaren Host-Kernel zum Booten der Appliance auszuwählen. Jedoch
Sie können dies überschreiben, indem Sie Umgebungsvariablen festlegen (siehe „UMGEBUNGSVARIABLEN“).
unten).

Wenn Sie einen benutzerdefinierten Kernel erstellen (z. B. indem Sie Linux aus dem Quellcode kompilieren), sollten Sie dies tun
etwas wie das:

mkdir /tmp/kmods
bzImage erstellen
Module herstellen
make module_install INSTALL_MOD_PATH=/tmp/kmods

export SUPERMIN_KERNEL=/path/to/linux.git/arch/x86/boot/bzImage
export SUPERMIN_MODULES=/tmp/kmods/lib/modules/3.xx.yy

supermin --build -f ext2 [usw.]

STRIKT VERFÜGBARKEIT OF PAKETE
Supermin erstellt die Appliance, indem es die in aufgeführten Pakete kopiert Pakete. Dafür
Damit diese Pakete funktionieren, müssen sie verfügbar sein. Normalerweise erzwingen wir dies durch das Hinzufügen von Anforderungen
(z. B. RPM „Requires:“-Zeilen) auf dem Paket, das die Supermin-Appliance verwendet, damit
Das Paket kann nicht installiert werden, ohne die abhängigen Pakete einzulesen und somit sicherzustellen
Die Pakete werden für die Verwendung durch Supermin installiert.

VARIABLEN


SUPERMIN_KERNEL
Wenn diese Umgebungsvariable gesetzt ist, erfolgt die automatische Auswahl des Kernels
umgangen und dieser Kernel wird verwendet.

Die Umgebungsvariable sollte auf eine Kerneldatei verweisen, z. /boot/vmlinuz-3.0.x86_64

SUPERMIN_MODULES
Dies gibt das zu verwendende Kernel-Modulverzeichnis an.

Die Umgebungsvariable sollte auf ein Modulverzeichnis verweisen, z.
/lib/modules/3.0.x86_64/

SUPERMIN_DTB
Erzwingt die Verwendung der angegebenen Gerätebaumdatei.

SUPERMIN_KERNEL_VERSION
Auf Nicht-x86-Architekturen müssen Sie möglicherweise diese Umgebungsvariable festlegen, wenn supermin
Die Kernel-Version von „SUPERMIN_KERNEL“ kann nicht allein durch einen Blick auf die Datei ermittelt werden.

Nutzen Sie Supermin online über die Dienste von onworks.net


Kostenlose Server & Workstations

Laden Sie Windows- und Linux-Apps herunter

Linux-Befehle

Ad




×
Werbung
❤ ️Hier einkaufen, buchen oder kaufen – kostenlos, damit die Dienste kostenlos bleiben.