Chemin source du périphérique de boucle

8

Par curiosité, j'aimerais savoir s'il existe un moyen de connaître la source de la partition montée?

Par exemple, la sortie de df -hest:

/ dev / loop1 3M 3M 0100% / media / loop

De cette sortie, je sais qu'un périphérique de boucle de 3M est monté sur /media/loop, mais je n'ai aucune idée pour déterminer l'emplacement exact de l' /dev/loop1appareil.

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

Comment savoir le chemin absolu de /dev/loop1f Je ne sais pas qui a monté ces partitions? (Dans ce cas, le chemin est /home/SHW/Downloads/TinyCore-current.iso.)

SHW
la source

Réponses:

10

Utilisez losetupl' --listoption de :

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

Si vous ne voulez que le fichier, utilisez l' -Ooption pour sélectionner la colonne:

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

Cette option fait partie des versions récentes de util-linux. Les versions antérieures ne prennent en charge que l' -aoption, qui répertorie tous les périphériques actifs dans un format plus difficile à traiter:

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

Quoi qu'il en soit, ce n'est pas trop onéreux à traiter comme vous le souhaitez.

Michael Homer
la source
On peut aussi simplement utiliser losetup /dev/(target).
neverMind9
0

Pour obtenir le chemin du fichier de sauvegarde, utilisez:

cat /sys/block/loop1/loop/backing_file
Nahuel Greco
la source
-2

Je n'ai aucune idée pour déterminer l'emplacement exact du périphérique / dev / loop1.

Qu'entendez-vous par l'emplacement exact de l' /dev/loop1appareil? /dev/loop*où * est un nombre sont des périphériques de bouclage (virtuels), qui sont utilisés pour monter des systèmes de fichiers qui ne se trouvent pas sur d'autres périphériques de bloc, tels que les disques durs. Vous pouvez les énumérer et voir où ils sont montés, à l'aide de la mountcommande et vous pouvez en configurer un nouveau à l'aide de la losetupcommande.

Si vous souhaitez savoir à quel périphérique physique un /dev/nœud est connecté, il existe des moyens de le faire. Vous pouvez utiliser udevadmpour interroger udev. Sur mon système, les commandes suivantes donnent plus d'informations sur le sdadisque:

$ 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

En plus de cela, vous pouvez utiliser lspcipour obtenir plus d'informations sur l'endroit où le périphérique est physiquement connecté. Sur mon système, /dev/sdaest attaché au contrôleur sata:

$ lspci
[snip]
00:1f.2 SATA controller: Intel Corporation 7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
[snip]
NlightNFotis
la source