Quellpfad des Loop-Geräts


8

Aus Neugier möchte ich wissen, ob es eine Möglichkeit gibt, die Quelle der gemounteten Partition herauszufinden.

Zum Beispiel ist die Ausgabe von df -h:

/ dev / loop1 3M 3M 0 100% / media / loop

Von diesem Ausgang weiß ich, dass ein Loop-Gerät von 3M an montiert ist /media/loop, aber ich habe keine Ahnung, um den genauen Standort des /dev/loop1Geräts zu bestimmen .

root@SHW:~# mount -o loop /home/SHW/Downloads/TinyCore-current.iso
/mnt/loop mount: block device /home/SHW/Downloads/TinyCore-current.iso is write-protected, mounting read-only
root@SHW:~# tail -n1 /proc/mounts
/dev/loop1 /mnt/loop iso9660 ro,relatime 0 0

Wie finde ich den absoluten Pfad von /dev/loop1f heraus, von dem ich nicht weiß, wer diese Partitionen gemountet hat? (In diesem Fall ist der Pfad /home/SHW/Downloads/TinyCore-current.iso.)

Antworten:


10

Verwenden Sie losetupdie --listOption :

$ losetup --list /dev/loop0
NAME       SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE
/dev/loop0         0      0         0  0 /tmp/backing-file

Wenn Sie nur die Datei möchten, verwenden Sie die -OOption, um die Spalte auszuwählen:

$ losetup --list --noheadings -O BACK-FILE /dev/loop0
/tmp/backing-file

Diese Option ist Teil der neuesten Versionen von util-linux. Frühere Versionen unterstützen nur die -aOption, mit der alle aktiven Geräte in einem schwieriger zu verarbeitenden Format aufgelistet werden:

$ losetup -a
/dev/loop0: []: (/tmp/backing-file)

In jedem Fall ist es nicht zu mühsam zu verarbeiten, wie Sie möchten.


Man kann es auch einfach benutzen losetup /dev/(target).
NeverMind9

0

Um den Pfad der Sicherungsdatei zu erhalten, verwenden Sie:

cat /sys/block/loop1/loop/backing_file

-2

Ich habe keine Ahnung, wie genau sich das Gerät / dev / loop1 befindet.

Was meinst du mit dem genauen Standort des /dev/loop1Geräts? /dev/loop*Dabei ist * eine Zahl für Loopback-Geräte (virtuelle Geräte), mit denen Dateisysteme bereitgestellt werden, die sich nicht auf anderen Blockgeräten befinden, z. B. Festplatten. Mit dem mountBefehl können Sie sie auflisten und sehen, wo sie bereitgestellt sind, und mit dem Befehl eine neue losetupeinrichten.

Wenn Sie wissen möchten, an welches physische Gerät ein /dev/Knoten angeschlossen ist, gibt es verschiedene Möglichkeiten. Sie können verwenden udevadm, um udev abzufragen. Auf meinem System geben die folgenden Befehle weitere Informationen zur sdaFestplatte:

$ udevadm info --query=path --name=sda
/devices/pci0000:00/0000:00:1f.2/ata4/host3/target3:0:0/3:0:0:0/block/sda
$ udevadm info --query=symlink --name=sda
disk/by-id/ata-ST3500418AS_6VMD78AY disk/by-id/wwn-0x5000c500224ac74f

Darüber hinaus können Sie lspciweitere Informationen darüber abrufen, wo das Gerät physisch angeschlossen ist. Ist auf meinem System /dev/sdaan den SATA-Controller angeschlossen:

$ lspci
[snip]
00:1f.2 SATA controller: Intel Corporation 7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
[snip]
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.