mkisofs

Aus Foxwiki
Version vom 20. März 2023, 22:32 Uhr von Dirkwagner (Diskussion | Beiträge) (Textersetzung - „Linux:Befehl“ durch „Linux/Befehl“)


Beschreibung

Das Programm Mkisofs ("make ISO9660 filesystem") erstellt ausschließlich ISO-Images -- das aber gekonnt und mit vielen zusätzlichen Features. Der einfache Aufruf lautet:

mkisofs Parameter -o datei.iso /Verzeichnis/Daten

Über -o definieren Sie den Namen der Zieldatei. Dahinter geben Sie die Daten an, die ins Image wandern sollen. Als optionale Parameter teilen Sie Mkisofs beispielsweise über -r mit, dass Sie die Rockridge-Erweiterung wünschen. Alternativ darf hier auch -R stehen, um zusätzlich Rechte und Dateieigentümer zu setzen. Die Joliet-Erweiterung schalten Sie entsprechend über -J ein:

mkisofs -J -R -o datei.iso /Verzeichnis/Daten

Über den Parameter -V setzen Sie einen Namen (Volume-ID) für die spätere CD/DVD. Enthält dieser Leer- und Sonderzeichen, schließen Sie ihn in Hochkommata ein:

mkisofs -V "Backup 20060502" ...

Darf es hingegen etwas ausführlicher sein, schalten Sie mit -v ("verbose") auf eine lange Ausgabe um (Abbildung ((1))); mit -quiet hingegen stellen Sie das Programm ruhig. Wer die Statusmeldungen nicht im Terminal sehen will, dennoch aber nicht auf die Informationen verzichten möchte, leitet sie in ein Protokoll (hier: log.txt) um:

mkisofs ... -log-file log.txt ...

((1)) Mkisofs bei der Arbeit -- auf Wunsch zeigt das Tool genau an, was im Hintergrund passiert.

Ideal für Backups

  • Mkisofs bringt einige praktische Optionen für das regelmäßige Erstellen von Datensicherungen mit.
  • So schließen Sie beispielsweise über die Option -m gezielt Dateien vom Image aus.
  • Hinter dem Parameter geben Sie als weitere Argumente Namen an.
  • Dabei kann Mkisofs auch mit Wildcards umgehen und akzeptiert Mehrfachnennung.

Um etwa sämtliche HTML-Dateien nicht ins ISO-Image aufzunehmen, tippen Sie:

mkisofs ... -m *.html -m *.HTML -o backup.iso /home/huhn

Wildcards: Platzhalter, die Teile von Zeichenketten unbestimmt lassen. Ein Fragezeichen ? in einer Zeichenkette lässt nur denjenigen Buchstaben unbestimmt, an dem sich das Fragezeichen befindet, während ein * für beliebig viele verschiedene Zeichen steht.

Über die Option -x klammern Sie bei Bedarf ganze Verzeichnisse aus, falls nötig wiederum mit mehrfacher Angabe:

mkisofs ... -x /tmp -x /var -o backup.iso /

Achten Sie bei der Verwendung dieser beiden Parameter darauf, dass Sie bei der Angabe der zu sichernden Daten keine Wildcards verwenden. Das Kommando

mkisofs ... -m *.html -m *.HTML -o backup.iso *

führt beispielsweise dazu, dass die Shell die letzte Wildcard auflöst und so wieder alle Daten ins Image aufnimmt.

Wer Dateien mit typischen Backup-Endungen, wie z. B. ~, # oder .bak, ausklammern möchte, setzt hingegen einfach die Option -no-bak ein, und schlägt damit sämtliche Fliegen mit einer Klappe.

Erstellen von ISO-Images

Nachdem das Programm erfolgreich installiert wurde, kann es folgendermaßen verwendet werden

mkisofs -l -iso-level 4 -o "Name der ISO Datei" "Name der Quelldatei"

Ist die Quelldatei ein Verzeichnis wird aus dem gesamten Verzeichnis ein ISO-Image erstellt.Wer weitere Einstellmöglichkeiten benötigt kann sich diese über einen Aufruf von

mkisofs -help

in der Konsole anzeigen lassen.

Bootbar bitte!

Um bootbare Medien zu erstellen, greifen Sie beispielsweise auf den Isolinux-Bootloader zurück, der mit Mkisofs Hand in Hand arbeitet:

mkisofs -J -R -o bootcd.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table /Ordner/Daten 

Neben den schon bekannten Mkisofs-Optionen taucht hier einiges Neue auf: Hinter -b steht das eigentliche Boot-Image, und über -c geben Sie den Boot-Katalog an. Der Parameter -no-emul-boot weist das Programm an, bei einer Installation von dieser CD keine Emulation zu erstellen, sondern den Inhalt der Abbilddatei auf die Platte zu schreiben. Die Option -boot-load-size 4 definiert, dass das BIOS später vier Sektoren à 512 Bytes für die Boot-Datei bereitstellt. Schließlich erzwingt (-boot-info-table), dass beim Booten Informationen über das Layout des Mediums berücksichtigt werden. Beachten Sie, dass sich das Verzeichnis isolinux unterhalb von /Ordner/Daten befinden muss.

Images testen

Das Kommando Mount bietet eine praktische Option, um ISO-Images vor dem Brennen auf eventuelle Fehler zu überprüfen. Dazu hängen Sie die Abbilddatei unter Angabe des Parameters -o loop testweise ins Dateisystem ein:

mount -o loop datei.iso /mnt/tmp

Beachten Sie, dass der Mount-Punkt existieren muss; außerdem benötigen Sie für diesen Befehl Administratorrechte. Nach Abschluss des Tests hängen Sie das ISO-Image über den Befehl umount /mnt/tmp wieder aus.