Arbeiten mit CD- und DVD-Abbildern

Aus EasyLinux 02/2011

Arbeiten mit CD- und DVD-Abbildern

© Sergey Galushko, 123RF

CDs und DVDs in der Shell

ISO-Images mit Linux-Distributionen, die Sie aus dem Internet herunterladen, brennen Sie mit K3b oder einem anderen Brennprogramm auf einen DVD-Rohling. Doch Sie können auch mit Shell-Befehlen auf die Images zugreifen und eigene erstellen.

ISO-Images sind Abbilddateien von CDs oder DVDs: Ihren Namen haben sie vom Dateisystem ISO-9660, in dem diese Scheiben “formatiert” sind. Darum tragen Image-Dateien auch meist die Dateiendung .iso. Wir zeigen Ihnen in diesem Artikel, wie Sie mit den Kommandozeilenbefehlen mount auf die Images zugreifen, mit mkisofs selbst welche erzeugen und mit isoinfo Informationen über ein Image ausgeben.

Image einbinden

Wenn Sie eine hypothetische Image-Datei easylinux.iso aus dem Internet heruntergeladen haben, müssen Sie diese nicht extra auf einen Rohling brennen, um einen Blick auf den Inhalt zu werfen: Ein einziger Kommandozeilenbefehl reicht aus, um die im Image gespeicherten Dateien in das Linux-Dateisystem einzubinden. Sie benötigen dazu Administratorrechte.

Für den folgenden Befehl gehen wir davon aus, dass es auf Ihrem Rechner das Verzeichnis /mnt gibt und dort kein anderes Medium eingebunden ist. Wenn die Datei easylinux.iso direkt in Ihrem Home-Verzeichnis (/home/benutzername/) liegt, öffnen Sie mit [Alt]+[F2] und Eingabe von konsole ein Terminalfenster und geben darin den folgenden Befehl ein:

sudo mount -o loop easylinux.iso /mnt

Liegt die ISO-Datei an einem anderen Ort, geben Sie den vollen Pfad an, z. B. /tmp/easylinux.iso. Das war es schon: Ab sofort können Sie über den Pfad /mnt/ auf die Dateien aus dem Image zugreifen – eine Datei index.html, die sich im Wurzelverzeichnis des Images befindet, würden Sie dann z. B. über /mnt/index.html erreichen. Sie können auch einen grafischen Dateimanager wie Dolphin verwenden, um in diesen Ordner zu schauen.

Solange das ISO-Image auf diese Weise eingebunden ist, können Sie auch Dateien vom Image herunter ins normale Dateisystem (also meist in Ihr Home-Verzeichnis) kopieren. Was nicht möglich ist, ist das Löschen von Dateien im Image: Der Zugriff ist nur lesend. Wollen Sie ein Image verändern, haben Sie nur die Möglichkeit, zunächst alle Dateien in einen neuen Ordner zu kopieren, dort die Änderungen vorzunehmen und schließlich ein neues Image zu erstellen.

Wollen Sie die Einbindung des Images wieder aufheben, geben Sie den Befehl

sudo umount /mnt

ein – das setzt voraus, dass Sie beim Einhängen das Verzeichnis /mnt/ als Mountpoint verwendet haben.

ISO-Image erstellen

Das Programm, mit dem Sie auf der Kommandozeile neue Images bauen können, heißt – je nach Linux-Distribution – entweder mkisofs oder genisoimage; wir gehen hier davon aus, dass Sie das Tool über den Namen mkisofs erreichen können. Beide Tools verwenden dieselben Optionen.

Haben Sie in einem Unterordner Ihres Home-Verzeichnisses die Dateien (und Unterverzeichnisse) versammelt, die in das Image wandern sollen, erzeugt das folgende Kommando ein ISO-Image:

mkisofs -J -r -o Dateiname.iso Ordner

Dabei spielt es keine Rolle, ob Sie ein CD- oder ein DVD-Image erzeugen möchten; beide Datenträgertypen verwenden dasselbe Dateiformat namens ISO-9660. Im DVD-Umfeld gibt es außerdem noch das UDF-Format (Universal Disk Format), das Sie aber für Daten-DVDs nicht benötigen; Video-DVDs sind UDF-formatiert.

Was bedeuten die Optionen im Detail?

  • Mit -o Dateiname.iso legen Sie den Namen für die Ausgabedatei fest. Sie können hier auch einen vollen Pfad angeben, wenn Sie das Image z. B. im Ordner /tmp/ speichern möchten.
  • Über -r weisen Sie das Programm an, so genannte RockRidge-Extensions zu erzeugen. Das ist u. a. nötig, damit Sie unter Linux die Dateinamen in voller Länge sehen. Es gibt noch eine groß geschriebene Variante (-R), die Sie alternativ zu -r nutzen können: Das ist dann sinnvoll, wenn Sie Dateien archivieren möchten. Bei -R bleiben Zugriffsrechte und die “Besitzverhältnisse” der Dateien erhalten, während -r diese so anpasst, dass das Image (oder die damit gebrannte DVD) auf jedem Rechner lesbar ist.
  • Mit -J erzeugen Sie schließlich die so genannten Joliet-Extensions. Sie haben eine ähnliche Aufgabe wie die RockRidge-Extensions, sind aber für Windows-Systeme gedacht. Wenn Sie wissen, dass Sie das Image nur auf Linux-PCs nutzen werden, können Sie diese Option weglassen.

Das Programm mkisofs erzeugt sehr viele Ausgaben, u. a. listet es sämtliche Dateien, bei denen es Anpassungen an den Dateinamen vorgenommen hat: Das liegt daran, dass das ISO-9660-Dateisystem nur kurze Dateinamen unterstützt (eine Einschränkung, welche die Joliet- und RockRidge-Extensions aufheben); aus Kompatibilitätsgründen wird aber für jede Datei auch ein Kurzname erzeugt. Außerdem sehen Sie den Fortschritt in Prozent. Am Ende gibt das Tool eine Zusammenfassung aus:

[...]
 99.03% done, estimate finish Thu Mar 17 23:48:31 2011
Total translation table size: 0
Total rockridge attributes bytes: 6598
Total directory bytes: 0
Path table size(bytes): 10
Max brk space used 0
45448 extents written (88 MB)

Die letzte Zeile verrät dabei die Größe des erstellten Images.

Ein so erzeugtes Image können Sie mit K3b (über den Menüpunkt Extras / ISO-Abbild brennen) auf eine CD oder DVD brennen, oder Sie können das Image auf einen Webserver hochladen und anderen Personen zur Verfügung stellen.

Informationen

Unter OpenSuse und Ubuntu verwenden Sie das Programm isoinfo, um Details zu einem auf der Platte liegenden ISO-Image anzeigen zu lassen. Sie geben dabei zwei Parameter an: Mit -i Dateiname geben Sie den Namen der Image-Datei an, und -d fordert das Tool auf, die verfügbaren Informationen auszugeben. Listing 1 zeigt eine beispielhafte Ausgabe für ein ISO-Image der EasyLinux-Jahres-DVD 2009.

Listing 1

Ausgabe von “isoinfo -d”

[esser@quad:~]$ isoinfo -d -i /mnt/windows/ISO/EL-JCD2009.iso 
CD-ROM is in ISO 9660 format
System id: LINUX
Volume id: EasyLinux 2009
Volume set id:
Publisher id: Linux New Media AG
Data preparer id: Hans-Georg Esser <h.g.esser@easylinux.de>
Application id: GENISOIMAGE ISO 9660/HFS FILESYSTEM CREATOR (C) 1993 E.YOUNGDALE (C) 1997-2006 J.PEARSON/J.SCHILLING (C) 2006-2007 CDRKIT TEAM
Copyright File id:
Abstract File id:
Bibliographic File id:
Volume set size is: 1
Volume set sequence number is: 1
Logical block size is: 2048
Volume size is: 2296916
El Torito VD version 1 found, boot catalog is in sector 3962
Joliet with UCS level 3 found
Rock Ridge signatures version 1 found
Eltorito validation header:
    Hid 1
    Arch 0 (x86)
    ID 'Linux New Media AG'
    Key 55 AA
    Eltorito defaultboot header:
        Bootid 88 (bootable)
        Boot media 0 (No Emulation Boot)
        Load segment 0
        Sys type 0
        Nsect 4
        Bootoff F7B 3963

Die umfangreiche Ausgabe verrät viel über die Image-Datei; manches davon wird nur Experten interessieren. In der dritten Ausgabezeile sehen Sie die Volume id (deutsch: Datenträgerbezeichnung), die hier EasyLinux 2009 lautet. Sie gibt oft einen Hinweis darauf, welche Inhalte im Image stecken.

Die Felder Publisher id und Data preparer id geben Auskunft darüber, welches Unternehmen und welcher Mitarbeiter den Datenträger “gemastert”, also das ISO-Image erstellt hat. In vielen Images sind diese Felder allerdings leer.

Die beiden Zeilen, die mit Joliet und Rock Ridge signatures beginnen, weisen darauf hin, dass dieses Image kompatibel zu Windows- und Linux-Systemen ist, also die weiter oben erwähnten Joliet- und RockRidge-Extensions enthält.

Die Zeile mit El Torito VD version 1 found zeigt an, dass das Image boot-fähig ist: Wenn Sie es auf eine DVD brennen und damit den Rechner booten, startet also ein Betriebssystem von der DVD.

Interessieren Sie sich für die im Image abgelegten Dateien, führen die isoinfo-Optionen -l -J dazu, dass Sie eine Liste aller Dateinamen und Dateigrößen erhalten (Abbildung 1).

Fazit

Für die Arbeit mit ISO-Images müssen Sie nicht unbedingt auf grafische Tools zurückgreifen – wer sich eh in der Shell zu Hause fühlt, kann mit mount, mkisofs und isoinfo manche Arbeiten an den Images beschleunigen.

Abbildung 1: Das Programm "isoinfo" kann auch eine Liste aller Dateien auf dem ISO-Image anzeigen.

Abbildung 1: Das Programm “isoinfo” kann auch eine Liste aller Dateien auf dem ISO-Image anzeigen.

EasyLinux 02/2011 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben