NAME
Tazlito — SliTaz Live Tool.
SYNTAX
tazlito [command] [list|iso|flavor] [dir]
BESCHREIBUNG
Tazlito ist ein kleines Programm zum Extrahieren eines Direktstart-ISO-Abbildes, Neuerstellen des ISO-Abbildes und regenerieren des Wurzel-Dateisystems eines Direktstart-ISO-Abbildes. Mit Tazlito kann auch anhand einer Liste vorher transferierter Pakete eine Distribution erzeugt werden. Tazlito liest die Konfigurationsdatei /etc/tazlito/tazlito.conf oder eine (leicht zu erstellende) eigene Konfigurationsdatei tazlito.conf im Arbeitsverzeichnis. Darin werden der Name des ISO-Abbildes, der Kennsatz für das ISO-Abbild, der Name des Betreuers und die Pfade der Paketdateien und des zu erzeugenden ISO-Abbildes festgelegt. Tazlito kann auch zusätzliche Dateien aus einem Verzeichnis in das ISO-Abbild übernehmen.
Tazlito wird unter der freien GNU-Lizenz GPL v.3 verbreitet und ist standardmäßig auf SliTaz installiert. Ebenso wurde es erfolgreich auf Debian GNU/Linux getestet. Weitere Informationen finden Sie im Handbuch.
KOMMANDOS
usage
Mit dem Kommando usage
wird eine Übersicht der verfügbaren Kommandos mitsamt
einer Kurzbeschreibung ausgegeben:
# tazlito usage
stats
Mit dem Kommando stats
werden die Konfigurationsvariablen, die Pfade verschiedener
Dateien und Verzeichnisse sowie Informationen über das ISO-Abbild ausgegeben:
# tazlito stats
gen-config
Mit dem Kommando gen-config
wird eine Konfigurationsdatei erstellt,
die dann modifiziert werden kann. Standardmäßig wird diese Datei im Arbeitsverzeichnis erstellt,
es kann aber auch ein anderes Verzeichnis angegeben werden:
# tazlito gen-config # tazlito gen-config /path/to/distro
configure
Mit dem Kommando configure
kann die globale Konfigurationsdatei oder eine
Konfigurationsdatei im Arbeitsverzeichnis modifiziert werden:
# tazlito configure
gen-iso
Mit dem Kommando gen-iso
kann ein neues Direkstart-ISO-Abbild unter
Berücksichtigung von Änderungen und zusätzlichen Dateien für das Wurzel-Dateisystem erzeugt werden.
Damit dies funktioniert, muss der Verzeichnisbaum eines Direkstartsystems zugreifbar sein.
Dieser Verzeichnisbaum kann leicht mit dem Kommando
extract-distro
erstellt werden. Nach Änderungen darin
wird ein neues ISO-Abbild erzeugt mit:
# tazlito gen-iso
gen-initiso
Mit dem Kommando gen-initiso
wird dasselbe erreicht wie mit
gen-iso
, nur dass zunächst initramfs neu erstellt wird.
initramfs enthält das Wurzel-Dateisystem und muss nach jeder Änderung neu erstellt werden:
# tazlito gen-initiso
list-flavors
Mit dem Kommando list-flavors
wird eine Liste verfügbarer
Varianten (falls erforderlich) transferiert und angezeigt.
Mit der Option --recharge
wird die Liste in jedem Fall transferiert:
# tazlito list-flavors # tazlito list-flavors --recharge
get-flavor
Mit dem Kommando get-flavor
werden die Dateien zum Erstellen einer Variante
mit gen-distro
(falls erforderlich) transferiert und
vorbereitet:
# tazlito get-flavor particular-flavor
show-flavor
Mit dem Kommando show-flavor
wird die Beschreibung einer Variante und deren
Größe nach Neuerstellung angezeigt. Mit den Optionen --brief
und
--noheader
wird der Umfang der Ausgabe reduziert:
# tazlito show-flavor particular-flavor # tazlito show-flavor particular-flavor --brief # tazlito show-flavor particular-flavor --brief --noheader
gen-flavor
Mit dem Kommando gen-flavor
wird eine Datei mit der Beschreibung einer neuen
Variante aus den Ergebnissen der Erzeugung einer Distribution
(mit gen-distro
) erstellt. Die Datei .flavor
kann dann an slitaz.org gesendet werden:
# tazlito gen-flavor new-flavor
gen-liveflavor
Mit dem Kommando gen-liveflavor
wird eine Datei mit der Beschreibung einer neuen
Variante aus den Ergebnissen der Erzeugung einer Distribution basierend auf dem laufenden System erstellt.
Die Option --help
liefert weitere Informationen:
# tazlito gen-liveflavor # tazlito gen-liveflavor --help
upgrade-flavor
Mit dem Kommando upgrade-flavor
aktualisiert eine Datei .flavor, indem
in die Paketliste die neuesten verfügbaren Versionen eingetragen werden:
# tazlito upgrade-flavor this-flavor
extract-flavor
Mit dem Kommando extract-flavor
wird eine Variante in eine leicht zu modifizierende
Baumstruktur in /home/slitaz/VERSION/flavors konvertiert, die mit mercurial verwaltet
werden kann:
http://hg.slitaz.org/flavors. Für z.B.
cooking wird das Arbeitsverzeichnis in /home/slitaz/cooking sein.
# tazlito extract-flavor this-flavor
pack-flavor
Mit dem Kommando pack-flavor
wird eine Baumstruktur aus
/home/slitaz/VERSION/flavors in eine Datei .flavor konvertiert.
Dies ist die umgekehrte Funktion von
tazlito extract-flavor
:
# tazlito pack-flavor this-flavor
extract-distro
Mit dem Kommando extract-distro
werden Dateien aus einem ISO-Abbild für einen
Direktstart-Datenträger extrahiert, um die Wurzelverzeichnisse des optischen Datenträgers
und des Systems zu erzeugen. Darin können dann die gewünschten Änderungen oder
Erweiterungen vorgenommen werden und das ISO-Abbild mit
gen-iso
oder
gen-initiso
neu erstellt werden. Beispiel:
# tazlito extract-distro slitaz-cooking.iso
gen-distro
Mit dem Kommando gen-distro
kann der Verzeichnisbaum einer Distribution und
ein ISO-Abbild gemäß einer Paketliste erzeugt werden. Hierzu wird eine Paketliste, ein
Verzeichnis, das alle Pakete (.tazpkg) aus der Liste enthält und ein Verzeichnis
für die Erstellung der Distribution benötigt. Die Paketliste kann aus der Variante
mit dem Kommando get-flavor
extrahiert werden.
Wenn ein optischer Datenträger mit einem Direktstartsystem verwendet wird,
ermöglichen die Optionen --cdrom
und --iso=
die
Wiederherstellung von Paketen, die Dateien im Verzeichnis /boot ablegen, ohne dass
diese von einem Depot transferiert werden müssen und stellt die zusätzlichen Dateien des optischen
Datenträgers wieder her.
Die Pfade der verschiedenen Verzeichnisse sind in der Konfigurationsdatei festgelegt und
Pakete können von SliTaz-Depots transferiert werden oder mit Cookutils erstellt werden.
Eine Distribution erzeugen:
# tazlito gen-distro # tazlito gen-distro --cdrom # tazlito gen-distro --iso=slitaz.iso # tazlito gen-distro package-list
clean-distro
Mit dem Kommando clean-distro
werden alle erzeugten und aus dem ISO-Abbild
extrahierten Dateien gelöscht:
# tazlito clean-distro
check-distro
Mit dem Kommando check-distro
wird geprüft, ob mit den Paketen installierte
Dateien vorhanden sind:
# tazlito check-distro
writeiso
Mit dem Kommando writeiso
wird das aktuelle Dateisystem in ein cpio-Archiv
(rootfs.gz) gepackt und anschließend ein urladefähiges ISO-Abbild erzeugt. Writeiso kann sowohl
in einem auf Platte installierten SliTaz als auch in einem Direktstartsystem verwendet werden.
Auch das aktuelle Verzeichnis /home wird in das Archiv übernommen.
Damit ist es auf einfache Weise möglich, ein eigenes, angepasstes ISO-Abbild für optische Datenträger
zu erstellen. Einfach ein SliTaz-System laden, irgendwelche Dateien ändern und dann:
# tazlito writeiso [gzip|lzma|none] # tazlito writeiso gzip # tazlito writeiso gzip image-name
check-list
Mit dem Kommando check-list
wird geprüft, ob die Datei distro-packages.list die
aktuellen Paketversionen enthält:
# tazlito check-list
repack
Mit dem Kommando repack
wird das Wurzel-Dateisystem (rootfs) mit der höchstmöglichen
Kompressionsrate neu komprimiert:
# tazlito repack slitaz.iso
merge
Mit dem Kommando merge
werden verschiedene Varianten wie russische Puppen verschachtelt.
Jedes Wurzel-Dateisystem ist eine Teilmenge des vorherigen.
Das erste Wurzel-Dateisystem wird von dem ISO-Abbild im dritten Argument extrahiert.
Dann wird in Abhängigkeit vom verfügbaren Arbeitsspeicher die entsprechende Variante zum Laden ausgewählt.:
# tazlito merge 160M slitaz-core.iso 96M rootfs-justx.gz 32M rootfs-base.gz
build-loram
Mit dem Kommando build-loram
wird aus einem ISO-Abbild ein ISO-Abbild
für Rechner mit kleinem Arbeitsspeicher erzeugt. Es kann eine Variante erzeugt werden,
bei der das Dateisystem / sich stets im Arbeitsspeicher befindet oder wo es
sich auf dem optischen Datenträger befindet:
# tazlito build-loram slitaz.iso loram.iso # tazlito build-loram slitaz.iso loram-cdrom.iso cdrom
emu-iso
Mit dem Kommando emu-iso
wird der Emulator Qemu zum Laden von
SliTaz verwendet. Qemu kann verwendet werden, um ein neu erstelltes ISO-Abbild zu testen,
ohne dass es auf optischen Datenträger geschrieben werden muss oder dass eine
sparsame Installation vorgenommen werden muss:
# tazlito emu-iso # tazlito emu-iso path/to/image.iso
burn-iso
Mit dem Kommando burn-iso
wird ein optisches Laufwerk ermittelt und seine
Geschwindigkeit festgestellt. Dann wird mit wodim (Bestandteil von cdrkit) das ISO-Abbild auf
einen optischen Datenträger geschrieben. Das Standard-ISO-Abbild ist das aus der
aktuellen Konfigurationsdatei, aber es kann auch ein anderes angegeben werden:
# tazlito burn-iso # tazlito burn-iso slitaz-hacked.iso
VARIANTEN
Eine Datei .flavor enthält lediglich einige wenige KB Informationen, die zum (Wieder-)Erstellen eines angepassten SliTaz-Direkstart-ISO-Abbildes für optischen Datenträger benötigt werden.
Eine Variante erstellen
Aus den vorhandenen Varianten kann eine zum (Wieder-)Erstellen ausgewählt werden:
# tazlito list-flavors List of flavors ================================================================================ Name ISO Rootfs Description ================================================================================ base 6.9M 13.1M Minimal set of packages to boot core-3in1 31.5M 105.6M SliTaz core system with justX and base alternatives core 31.5M 104.6M SliTaz core system eeepc 31.2M 105.4M SliTaz eeepc system justX 16.1M 51.2M SliTaz with a minimal X environment
Wir beginnen mit der (Wieder-)Erstellung der Variante eeepc, die 105,4 MB Arbeitsspeicher benötigt und auf dem Datenträger 31,2 MB belegt:
# tazlito clean-distro # tazlito get-flavor eeepc # tazlito gen-distro
Eine Variante erzeugen
Um eine Variante zu erzeugen, muss:
- Entweder ein ISO-Abbild mit
tazlito gen-distro
erzeugt werden und dann eine Datei .flavor mittazlito gen-flavor
- Oder direkt eine Baumstruktur erzeugt werden, die eine Variante definiert
(siehe
tazlito extract-flavor
) und dann eine Datei .flavor mittazlito pack-flavor
- Oder der "online builder" verwendet werden
Eine Variante veröffentlichen
Da eine Datei .flavor nur einige wenige KB groß ist, kann sie einfach über die "mailing list" verbreitet werden.
Die Ergebnisse von tazlito extract-flavor
können auch in das
"mercurial repository" transferiert werden. Dieses Verfahren ist
vorzuziehen, da der Baum direkt im
"mercurial web interface" sichtbar wird.
Dieser Baum enthält:
- Eine Datei receipt, die die Variante über die folgenden Variablen beschreibt:
- FLAVOR: Der Name der Variante.
- SHORT_DESC: Kurzbeschreibung.
- VERSION: Freies Format.
- MAINTAINER: Email-Adresse des Betreuers.
- FRUGAL_RAM: Mindestgröße des benötigten Arbeitsspeichers (optional).
- ROOTFS_SIZE: Größe des entpackten rootfs.gz im Arbeitsspeicher (optional).
- INITRAMFS_SIZE: Größe von rootfs.gz auf dem Datenträger (optional).
- ISO_SIZE: Größe des ISO-Abbildes auf dem Datenträger (optional).
- ROOTFS_SELECTION: Optional, siehe Meta-Variante unten.
- Die Datei packages.list, die die Liste der Pakete ohne Versionsangabe enthält (tazlito verwendet die neueste verfügbare). Diese Datei fehlt, wenn ROOTFS_SELECTION im Rezept angegeben ist.
- Die optionale Datei mirrors, die eine Liste inoffizieller (undigest) Depots enthält, aus denen persönliche Pakete installiert werden können.
- Das optionale Verzeichnis rootfs, das den Baum enthält, der dem Wurzel-Dateisystem rootfs.gz hinzugefügt werden soll (üblicherweise Konfigurationsdateien).
- Das optionale Verzeichnis rootcd , das den Baum enthält, der dem Wurzel-Dateisystem des optischen Datenträgers hinzugefügt werden soll.
Eine Variante anpassen
Es ist meist einfacher, eine vorhandene Variante zu modifizieren als eine Variante von Grund auf neu zu erstellen. Im folgenden Beispiel wird die Variante eeepc angepasst:
# tazpkg get-install mercurial # cd /home/slitaz # hg clone http://hg.slitaz.org/flavors # cd flavors # cp -a eeepc myslitaz
Dann können Dateien im Verzeichnis myslitaz geändert werden und mit
# tazlito pack-flavor myslitaz
wird eine neue Variante erzeugt.
Tipp: Die Installation von mercurial wie im vorherigen Beispiel ist nicht erforderlich. Es genügen die Kommandos:
# tazlito get-flavor eeepc # tazlito extract-flavor eeepc.flavor # cd /home/slitaz/flavors # cp -a eeepc myslitaz
Meta-Variante
Eine Meta-Variante enthält mehrere verschachtelte Varianten, wie russische Puppen. Es wird
die Variante geladen, für die genügend Arbeitsspeicher vorhanden ist.
Die Variable ROOTFS_SELECTION legt die Mindestgrößen an Arbeitsspeicher für die entsprechenden
Varianten fest,
ROOTFS_SELECTION="160M core 96M justX 32M base"
Eine Meta-Variante enthält keine Paketliste (packages.list). Meta-Varianten werden von SliTaz-Kernen vor Version 2.6.30 nicht unterstützt.
BETREUER
Christophe Lincoln <pankso at slitaz.org>
Pascal Bellard <pascal.bellard at slitaz.org>