J'ai un fichier iso nommé ubuntu.iso
.
Je peux mount
avec la commande: mount ubuntu.iso /mnt
. Après le montage, je peux voir de la outout de la commande df -h
: /dev/loop0 825M 825M 0 100% /mnt
.
Cependant, si j'exécute la commande mount -o loop ubuntu.iso /mnt
, j'obtiendrai le même résultat.
Comme je le sais, le périphérique en boucle nous permet de visiter le fichier iso en tant que périphérique, je pense que c'est pourquoi nous ajoutons l'option -o loop
. Mais je peux visiter mon fichier iso même si je ne fais qu'exécuter mount ubuntu.iso /mnt
.
Je ne vois donc pas la différence entre mount
et mount -o loop
.
mount
loop-device
Yves
la source
la source
mount ubuntu.iso /mnt
il ne configure pas de périphérique de bouclage en lecture seule, etmount /image.squashfs /mnt
il ne configure pas de périphérique de bouclageDIO
(losetup --direct-io=on
).Réponses:
Les deux versions utilisent des périphériques en boucle et produisent le même résultat; la version courte repose sur "l'intelligence" ajoutée à
mount
ces dernières années.mount -o loop
indiquemount
explicitement d'utiliser un périphérique de boucle; il laisse le périphérique de boucle lui-mêmemount
, qui recherchera un périphérique disponible, le configurera et l'utilisera. (Vous pouvez également spécifier l'appareil avec, par exemplemount -o loop=/dev/loop1
.)L'astuce est que, quand on lui donne un fichier à monter,
mount
il utilisera automatiquement un périphérique de boucle pour le monter si nécessaire - c'est-à - dire que le système de fichiers n'est pas spécifié, oulibblkid
détermine que le système de fichiers n'est pris en charge que sur les périphériques de bloc (et donc un périphérique de boucle est nécessaire pour traduire le fichier en périphérique bloc).La section de périphérique de boucle de la
mount
page de manuel contient plus de détails.la source
util-linux
2.11 soutenumount -o loop
en 2001, et je pense que 2.10 l'avait aussi, au moins un an plus tôt.-o loop
été ajouté entreutil-linux
2.4 et 2.5j; Debian 1.1 avait cette dernière version et a été publiée en juin 1996. Cette option est donc disponible dans les distributions depuis plus de vingt ans.mount
sera en mesure de basculer vers ce mécanisme de manière transparente (au moins pendant les 15 premières minutes jusqu'à ce qu'elle s'avère qu'il a brisé le script de quelqu'un et que tout le monde doit revenir aux périphériques de boucle) , contrairement àmount -o loop
ce qui demande toujours explicitement l'ancien mécanisme (actuel).L'
loop
appareil est principalement contrôlé par lalosteup
commande.losetup -a
Vous donne donc un aperçu des périphériques de boucle utilisés et des fichiers joints. Lamount
commande peut uniquement monter le périphérique de bloc . Le périphérique de boucle peut créer le périphérique de bloc virtuel à partir d'un fichier (périphérique de caractères).En fait, il y a une grande différence entre ces commandes, car sur les anciens systèmes Linux, elles
mount
ne pouvaient pas reconnaître le fichier comme le bon périphérique à monter, mais pendant le temps où la commande de montage était terminée avec beaucoup de fonctionnalités, elle peut désormais décider de essayez d'appeler la commande losetup et montez le résultat. Mais si vous avez une image disque entière non au format iso mais par exemple avec MBR au début, la commande de montage ne pourrait pas la reconnaître et vous devez trouver la partition utilisable (par exemple avec laparted disk_image.raw unit B print
commande) yoursef et la monter avec l'option de montage complète comman comme:Dans cette syntaxe, le périphérique de boucle n'a pas été spécifié et il est supposé que le système choisit le premier gratuit (
/dev/loop0
,/dev/loop1
etc.) Parmi les autres nouvelles fonctionnalités de la commande mount, vous n'avez pas besoin de spécifier le type de système de fichiers du périphérique de bloc monté (dans votre cas-t iso9660
) si le support du système de fichiers a été installé.la source
Il n'y a aucune différence entre
mount ubuntu.iso /mnt
etmount -o loop ubuntu.iso /mnt
.Le premier est traité de manière transparente comme si vous aviez utilisé le second.
la source