Losetup: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „= Umgebungsvariablen =“ durch „= Umgebung =“
 
(40 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''losetup''' Loop-Geräte einrichten und steuern
{{DISPLAYTITLE:losetup}}


== Übersicht ==
'''losetup''' ('''lo'''op device '''setup''') ermöglicht den Zugriff auf Dateisysteme in Dateien


=== Informationen erhalten===
== Loop-Devices ==
* Um auf ein Dateisystem zugreifen zu können, muss dieses auf einem [[Hardware:Blockgerät Blockgerät]] verfügbar sein
* Ein '''loop device''' ist ein virtuelles Geräte, das als zugrundeliegenden Speicher eine Datei nutzt  <!-- FIXME: Fuse -->
* Damit können Dateisystem-Abbilder in das [[Linux/Dateisystem]] eingebunden werden, die als Datei vorliegen.
 
== Beispiele ==
=== Einhängen eines Festplattenabbilds ===
# Die Datei, die das Festplattenabbild enthält, wird mit einer Gerätedatei (device node) in /dev verknüpft
# Dieses loop device kann mit [[Linux/Befehl:mount|mount]] in den Dateibaum eingehängt werden
 
Diese beiden Schritte können entweder getrennt erfolgen oder durch Angabe entsprechender Optionen mit einem einzigen Aufruf des Dienstprogrammes [[Linux/Befehl:mount]] gemeinsam durchgeführt werden.
 
Der erste Schritt kann mit dem Kommando '''losetup'''ausgeführt werden.
 
Wenn <code>beispiel.img</code> eine normale Datei ist, die ein Abbild mit einem Dateisystem enthält, und <code>/mnt/verzeichnis</code> ein Verzeichnis auf einem Linux-Computer ist, kann der Systemverwalter ([[Root-Konto|Super user]]) folgende Kommandos ausführen:
losetup /dev/loop0 beispiel.img
mount /dev/loop0 /mnt/verzeichnis
 
Das erste Kommando verknüpft den Loop-Geräteknoten <code>/dev/loop0</code> mit der normalen Datei <code>beispiel.img</code>. Das zweite Kommando hängt dieses Pseudogerät an der Stelle <code>/mnt/verzeichnis</code> in den Dateibaum ein, so als wäre <code>/dev/loop0</code> eine ganz normale Festplatte oder ein Festplattenabschnitt ([[Partition (Informatik)|Partition]]).
 
Das Dienstprogramm <code>mount</code> ist in der Lage, die gesamte Prozedur in einem einzigen Schritt ausführen:
mount -o loop beispiel.img /mnt/verzeichnis
 
Ausgehängt werden kann das Gerät in beiden Fällen über den Befehl
umount /mnt/verzeichnis
 
== Anwendung ==
 
=== Informationen erhalten ===
* Ohne Optionen werden alle Loop-Geräte angezeigt.
* Wird nur <u>Loop-Gerät</u> als Argument angegeben, wird dessen Status angezeigt.
  '''losetup''' [<u>Loop-Gerät</u>]
  '''losetup''' [<u>Loop-Gerät</u>]
  '''losetup''' '''-l''' ['''-a''']
  '''losetup''' '''-l''' ['''-a''']
Zeile 11: Zeile 41:
  '''losetup''' '''-d''' <u>Loop-Gerät</u> …
  '''losetup''' '''-d''' <u>Loop-Gerät</u> …


=== Alle zugehörigen Loop-Geräte abhängen ===
=== Alle zugehörigen Loop-Geräte aushängen ===
  '''losetup''' '''-D'''
  '''losetup''' '''-D'''


=== Ein Loop-Gerät einrichten ===
=== Ein Loop-Gerät einrichten ===
  '''losetup''' ['''-o''' <u>Versatz</u>] ['''--sizelimit''' <u>Größe</u>] ['''--sector-size''' <u>Größe</u>] ['''-Pr'''] ['''--show'''] '''-f'''|<u>Loop-Gerät</u> <u>Datei</u>
  '''losetup''' ['''-o''' <u>Versatz</u>] ['''--sizelimit''' <u>Größe</u>] ['''--sector-size''' <u>Größe</u>] ['''-Pr'''] ['''--show'''] '''-f'''|<u>Loop-Gerät</u> <u>Datei</u>
* Es ist möglich, mehrere unabhängige Loop-Geräte für die gleiche zugrunde liegende Datei anzulegen. '''Diese''' '''Art''' '''der''' '''Einrichtung''' '''kann''' '''gefährlich''' '''sein,''' '''kann''' '''Datenverlust,''' '''Beschädigungen''' '''und''' '''Überschreibungen''' '''verursachen.''' Verwenden Sie während der Einrichtung '''--nooverlap''' mit '''--find''', um dieses Problem zu vermeiden.


=== Größe eines Loop-Geräts ändern ===
=== Größe eines Loop-Geräts ändern ===
  '''losetup''' '''-c''' <u>Loop-Gerät</u>
  '''losetup''' '''-c''' <u>Loop-Gerät</u>


== Beschreibung ==
=== Nutzung eines Loop-Geräts ===
* '''losetup''' wird zum Zuweisen von Loop-Geräten zu regulären Dateien oder blockorientierten Geräten, zum Abhängen von Loop-Geräten und zum Abfragen des Status eines Loop-Gerätes verwendet.
# '''dd if=/dev/zero of=[../../~/file.img ~/file.img] bs=1024k count=10'''
* Wenn nur das Argument <u>Loop-Gerät</u> angegeben ist, wird der Status des korrespondierenden Loop-Geräts angezeigt.  
# '''losetup --find --show [../../~/file.img ~/file.img]'''
* Falls keine Option angegeben ist, werden alle Loop-Geräte angezeigt.
/dev/loop0
* Beachten Sie, dass das alte Ausgabeformat (d.h. '''losetup''' '''-a''') mit durch Kommata getrennten Zeichenketten als veraltet markiert wurde und nun das Ausgabeformat mit '''--list''' bevorzugt wird.
# '''mkfs -t ext2 /dev/loop0'''
* Es ist möglich, mehrere unabhängige Loop-Geräte für die gleiche zugrunde liegende Datei anzulegen. '''Diese''' '''Art''' '''der''' '''Einrichtung''' '''kann''' '''gefährlich''' '''sein,''' '''kann''' '''Datenverlust,''' '''Beschädigungen''' '''und''' '''Überschreibungen''' '''verursachen.'''  
# '''mount /dev/loop0 [../../mnt /mnt]'''
* Verwenden Sie während der Einrichtung '''--nooverlap''' mit '''--find''', um dieses Problem zu vermeiden.
 
=== Feigabe eines Loop-Geräts ===
# '''umount /dev/loop0'''
# '''losetup --detach /dev/loop0'''
 
=== Image verwenden ===
Imagedatei auf das Gerät loop0 legen
losetup /dev/loop0 Imagedatei
Dateisystem einbinden
mount /dev/loop0 Mountpunkt
 
== Umgebung ==
LOOPDEV_DEBUG=all
* Debug-Ausgabe aktivieren


== Optionen ==
== Optionen ==
Zeile 78: Zeile 122:
|-
|-
|}
|}
=== Multiplikatoren ===
=== Multiplikatoren ===
Den Argumenten <u>Größe</u> und <u>Versatz</u> können die multiplikativen Suffixe KiB (=1024), MiB (=1024*1024) und so weiter für GiB, TiB, PiB, EiB, ZiB und YiB folgen (das »iB« ist optional, zum Beispiel ist »K« gleichbedeutend mit »KiB«) oder die Suffixe KB (=1000), MB (=1000*1000) und so weiter für GB, TB, PB, EB, ZB und YB.
Den Argumenten <u>Größe</u> und <u>Versatz</u> können die multiplikativen Suffixe KiB (=1024), MiB (=1024*1024) und so weiter für GiB, TiB, PiB, EiB, ZiB und YiB folgen (das »iB« ist optional, zum Beispiel ist »K« gleichbedeutend mit »KiB«) oder die Suffixe KB (=1000), MB (=1000*1000) und so weiter für GB, TB, PB, EB, ZB und YB.
== Verschlüsselung ==
'''Cryptoloop''' '''wird''' '''zugunsten''' '''von''' '''dm-crypt''' '''nicht''' '''mehr''' '''unterstützt.''' '''Für''' '''weitere''' '''Details''' '''siehe''' [http://manpages.ubuntu.com/manpages/focal/de/man8/cryptsetup.8.html cryptsetup](8).'''


== Rückgabewert ==
== Rückgabewert ==
'''losetup''' gibt 0 im Erfolgsfall und einen von 0 verschiedenen Wert bei einem Fehlschlag zurück. Wenn '''losetup''' den Status eines Loop-Geräts anzeigt, wird 1 zurückgegeben, falls das Gerät nicht eingerichtet ist und 2, falls ein Fehler aufgetreten ist, der die Statusermittlung des Geräts verhindert hat.
* '''losetup''' gibt 0 im Erfolgsfall und einen von 0 verschiedenen Wert bei einem Fehlschlag zurück.  
* Zeigt '''losetup''' den Status eines Loop-Geräts an, wird
** 1 zurückgegeben, falls das Gerät nicht eingerichtet ist und  
** 2, falls ein Fehler aufgetreten ist, der die Statusermittlung des Geräts verhindert hat.


== Dateien ==
== Dateien ==
<u>/dev/loop[0..N]</u>
<u>/dev/loop[0..N]</u>: Loop-Blockgeräte
Loop-Blockgeräte
<u>/dev/loop-control</u>: Loop-Steuergerät
 
<u>/dev/loop-control</u>
Loop-Steuergerät
 
== Beispiel ==
Die folgenden Befehle können als Beispiel für die Nutzung eines Loop-Geräts verwendet werden.
# dd if=/dev/zero of=[../../~/file.img ~/file.img] bs=1024k count=10
# losetup --find --show [../../~/file.img ~/file.img]
/dev/loop0
# mkfs -t ext2 /dev/loop0
# mount /dev/loop0 [../../mnt /mnt]
# umount /dev/loop0
# losetup --detach /dev/loop0
 
== Umgebungsvariablen ==
LOOPDEV_DEBUG=all
*aktiviert die Debug-Ausgabe.
 
== VERFÜGBARKEIT ==
Der Befehl '''losetup''' ist Teil des Pakets util-linux, welches auf https://www.kernel.org/pub/linux/utils/util-linux/ verfügbar ist.
 
== ÜBERSETZUNG ==
Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann <[mailto:mario.blaettermann@gmail.com mario.blaettermann@gmail.com]> erstellt.


Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
== Links ==
=== Interne Links ===
# TODO


Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <[mailto:debian-l10n-german@lists.debian.org debian-l10n-german@lists.debian.org]>.
=== Weblinks ===
 
# [http://bochs.sourceforge.net/doc/docbook/user/loop-device-usage.html Mounting a disk image using the loop device] aus dem Benutzerhandbuch zu [[Bochs]]
---
# [http://osforensics.com/tools/mount-disk-images.html OSFMount - Mount Raw Disk Images in Windows]
 
# [https://www.kernel.org/pub/linux/utils/util-linux/ util-linux]
Ein vorhandenes Image verwenden
losetup /dev/loop0 Imagedatei
wird die angegebene Imagedatei auf das Gerät loop0 gelegt. Mit
mount /dev/loop0 Mountpunkt
lässt sich das Dateisystem dann einbinden.


[[Kategorie:Linux:Storage]]
[[Kategorie:Linux/Storage]]
[[Kategorie:Linux/Befehl]]
{{DEFAULTSORT:losetup}}

Aktuelle Version vom 8. September 2024, 10:28 Uhr


losetup (loop device setup) ermöglicht den Zugriff auf Dateisysteme in Dateien

Loop-Devices

  • Um auf ein Dateisystem zugreifen zu können, muss dieses auf einem Hardware:Blockgerät Blockgerät verfügbar sein
  • Ein loop device ist ein virtuelles Geräte, das als zugrundeliegenden Speicher eine Datei nutzt
  • Damit können Dateisystem-Abbilder in das Linux/Dateisystem eingebunden werden, die als Datei vorliegen.

Beispiele

Einhängen eines Festplattenabbilds

  1. Die Datei, die das Festplattenabbild enthält, wird mit einer Gerätedatei (device node) in /dev verknüpft
  2. Dieses loop device kann mit mount in den Dateibaum eingehängt werden

Diese beiden Schritte können entweder getrennt erfolgen oder durch Angabe entsprechender Optionen mit einem einzigen Aufruf des Dienstprogrammes Linux/Befehl:mount gemeinsam durchgeführt werden.

Der erste Schritt kann mit dem Kommando losetupausgeführt werden.

Wenn beispiel.img eine normale Datei ist, die ein Abbild mit einem Dateisystem enthält, und /mnt/verzeichnis ein Verzeichnis auf einem Linux-Computer ist, kann der Systemverwalter (Super user) folgende Kommandos ausführen:

losetup /dev/loop0 beispiel.img
mount /dev/loop0 /mnt/verzeichnis

Das erste Kommando verknüpft den Loop-Geräteknoten /dev/loop0 mit der normalen Datei beispiel.img. Das zweite Kommando hängt dieses Pseudogerät an der Stelle /mnt/verzeichnis in den Dateibaum ein, so als wäre /dev/loop0 eine ganz normale Festplatte oder ein Festplattenabschnitt (Partition).

Das Dienstprogramm mount ist in der Lage, die gesamte Prozedur in einem einzigen Schritt ausführen:

mount -o loop beispiel.img /mnt/verzeichnis

Ausgehängt werden kann das Gerät in beiden Fällen über den Befehl

umount /mnt/verzeichnis

Anwendung

Informationen erhalten

  • Ohne Optionen werden alle Loop-Geräte angezeigt.
  • Wird nur Loop-Gerät als Argument angegeben, wird dessen Status angezeigt.
losetup [Loop-Gerät]
losetup -l [-a]
losetup -j Datei [-o Versatz]

Ein Loop-Gerät abhängen

losetup -d Loop-Gerät

Alle zugehörigen Loop-Geräte aushängen

losetup -D

Ein Loop-Gerät einrichten

losetup [-o Versatz] [--sizelimit Größe] [--sector-size Größe] [-Pr] [--show] -f|Loop-Gerät Datei
  • Es ist möglich, mehrere unabhängige Loop-Geräte für die gleiche zugrunde liegende Datei anzulegen. Diese Art der Einrichtung kann gefährlich sein, kann Datenverlust, Beschädigungen und Überschreibungen verursachen. Verwenden Sie während der Einrichtung --nooverlap mit --find, um dieses Problem zu vermeiden.

Größe eines Loop-Geräts ändern

losetup -c Loop-Gerät

Nutzung eines Loop-Geräts

# dd if=/dev/zero of=[../../~/file.img ~/file.img] bs=1024k count=10
# losetup --find --show [../../~/file.img ~/file.img]
/dev/loop0
# mkfs -t ext2 /dev/loop0
# mount /dev/loop0 [../../mnt /mnt]

Feigabe eines Loop-Geräts

# umount /dev/loop0
# losetup --detach /dev/loop0

Image verwenden

Imagedatei auf das Gerät loop0 legen

losetup /dev/loop0 Imagedatei

Dateisystem einbinden

mount /dev/loop0 Mountpunkt

Umgebung

LOOPDEV_DEBUG=all

  • Debug-Ausgabe aktivieren

Optionen

-a, --all zeigt den Status aller Loop-Geräte an. Beachten Sie, dass gewöhnliche Benutzer nicht auf alle Informationen zugreifen können. Siehe auch --list. Das frühere Format (wie es ohne --list ausgegeben wird) ist veraltet.
-d, --detach Loop-Gerät hängt die Datei oder das Gerät aus, das dem oder den angegebenen Loop-Gerät(en) zugeordnet ist. Beachten Sie, dass der Kernel seit Linux v3.7 die »lazy device destruction« (lockere Gerätezerstörung) verwendet. Der Abhängevorgang gibt keinen EBUSY-Fehler mehr zurück, falls das Gerät aktiv vom System verwendet wird, aber es wird mit einer »autoclear«-Markierung versehen und später zerstört.
-D, --detach-all hängt alle zugehörigen Loop-Geräte ab.
-f, --find [Datei] sucht nach dem ersten ungenutzten Loop-Gerät. Wenn ein Datei-Argument vorhanden ist, wird das gefundene Gerät als Loop-Gerät verwendet. Anderenfalls wird einfach dessen Name ausgegeben.
--show zeigt den Namen des zugehörigen Loop-Geräts an, wenn die Option -f und das Argument Datei vorhanden sind.
-L, --nooverlap prüft auf Konflikte zwischen Loop-Geräten, um die Situation zu vermeiden, bei der die gleiche zugrunde liegende Datei von mehreren Loop-Geräten gemeinsam verwendet wird. Wenn die Datei bereits von einem anderen Gerät verwendet wird, dann wird das Gerät erneut verwendet, anstatt ein neues zu einzurichten. Diese Option ist nur zusammen mit --find sinnvoll.
-j, --associated Datei -o Versatz zeigt den Status aller Loop-Geräte an, die der angegebenen Datei zugeordnet sind.
-o, --offset Versatz verschiebt den Start der Daten um den angegebenen Versatz in Byte in der Datei oder dem angegebenen Gerät. Dem Versatz dürfen multiplikative Suffixe folgen; siehe oben.
--sizelimit Größe setzt das Ende der Daten auf nicht mehr als die angegebene Größe in Byte nach dem Anfang der Daten. Dem Versatz dürfen multiplikative Suffixe folgen; siehe oben.
-b, --sector-size Größe legt die logische Sektorengröße des Loop-Geräts in Bytes fest (seit Linux 4.14). Die Option darf sowohl beim Erstellen neuer Loop-Geräte als auch als einzelner Befehl zum Ändern der Sektorengröße eines bereits existierenden Loop-Geräts verwendet werden.
-c, --set-capacity Loop-Gerät zwingt den Loop-Treiber, die Größe der Datei neu einzulesen, der das angegebene Loop-Gerät zugeordnet ist.
-P, --partscan zwingt den Kernel, die Partitionstabelle auf einem neu erstellten Loop-Gerät einzulesen. Beachten Sie, dass das Einlesen der Partitionstabelle von den Sektorengrößen abhängt. Die standardmäßige Sektorengröße ist 512 Byte, anderenfalls müssen Sie die Option --sector-size zusammen mit --partscan verwenden.
-r, --read-only richtet ein schreibgeschütztes Loop-Gerät ein.
--direct-io=on/off aktiviert oder deaktiviert die direkten Ein-/Ausgaben für die zugrunde liegende Datei. Das optionale Argument kann entweder on oder off sein. Wird kein Argument angegeben, ist on die Vorgabe.
-v, --verbose aktiviert den ausführlichen Modus.
-l, --list Falls ein Loop-Gerät oder die Option -a angegeben ist, werden die Standardspalten für entweder das angegebene Loop-Gerät oder alle Loop-Geräte ausgegeben; die Vorgabe ist die Ausgabe von Informationen zu allen Geräten. Siehe auch --output,--noheadings, --raw und --json.
-O, --output Spalte[,Spalte] … gibt an, welche Spalten mit --list ausgegeben werden sollen. Mit --help erhalten Sie eine Liste aller unterstützten Spalten.
--output-all gibt alle verfügbaren Spalten aus.
-n, --noheadings zeigt bei der Ausgabe mit --list keine Überschriften an.
--raw verwendet das Rohformat für die Ausgabe mit --list.
-J, --json verwendet das JSON-Format für die Ausgabe mit --list.
-V, --version zeigt Versionsinformationen an und beendet das Programm.
-h, --help zeigt einen Hilfetext an und beendet das Programm.

Multiplikatoren

Den Argumenten Größe und Versatz können die multiplikativen Suffixe KiB (=1024), MiB (=1024*1024) und so weiter für GiB, TiB, PiB, EiB, ZiB und YiB folgen (das »iB« ist optional, zum Beispiel ist »K« gleichbedeutend mit »KiB«) oder die Suffixe KB (=1000), MB (=1000*1000) und so weiter für GB, TB, PB, EB, ZB und YB.

Rückgabewert

  • losetup gibt 0 im Erfolgsfall und einen von 0 verschiedenen Wert bei einem Fehlschlag zurück.
  • Zeigt losetup den Status eines Loop-Geräts an, wird
    • 1 zurückgegeben, falls das Gerät nicht eingerichtet ist und
    • 2, falls ein Fehler aufgetreten ist, der die Statusermittlung des Geräts verhindert hat.

Dateien

/dev/loop[0..N]: Loop-Blockgeräte
/dev/loop-control: Loop-Steuergerät

Links

Interne Links

  1. TODO

Weblinks

  1. Mounting a disk image using the loop device aus dem Benutzerhandbuch zu Bochs
  2. OSFMount - Mount Raw Disk Images in Windows
  3. util-linux