что такое «петлевое устройство» при монтаже?

<p>я монтирую файл iso и смотрю на <a href="https://www.cyberciti.biz/tips/how-to-mount-iso-image-under-linux.html">это руководство</a> . они используют команду:</p><pre><code>$ mount -o loop disk1.iso /mnt/disk </code></pre><p>я пытаюсь понять использование <code>-o loop</code>. у меня есть два вопроса:</p><ol> <li> <p>когда я просматриваю длинную справочную страницу для mount, требуется время, чтобы найти <code>-o</code> вариант. если я сделаю <code>man mount | grep "-o"</code> я получаю сообщение об ошибке, и когда я просматриваю файл, я не вижу никакой информации о том, что "loop" - это текст команды для опции <code>-o</code>. где это задокументировано?</p> </li> <li> <p>кроме того, какова концепция "петлевого устройства" для монтажа?</p> </li> </ol>

<p>устройство loop - это псевдо ("фальшивое") устройство (фактически просто файл), которое действует как блочное устройство. вы хотите смонтировать файл (disk1.iso), который будет действовать как целая файловая система, поэтому вы используете цикл.</p><p>-o происходит из -опций.</p><p>и последнее, если вы хотите найти "-o", вам нужно экранировать "-". пытаться:</p><pre><code>man mount | grep "\-o" </code></pre>

<p>традиционно системы unix имели различные типы узлов в своих файловых системах:</p><ul> <li>каталог</li> <li>файл</li> <li>символическая</li> <li>блочное устройство</li> <li>символьное устройство</li> <li>fifo</li> <li>сокет домена unix</li> </ul><p>хотя теперь есть исключения, в каталогах обычно монтируются блочные устройства, содержащие файловые системы.</p><p>поскольку вы хотите смонтировать файл, вы должны сначала создать блочное устройство <code>loop</code>, которое поддерживается файлом. это можно сделать с помощью <code>losetup</code>, но <code>mount -o loop</code> это ярлык, который обрабатывает это за кулисами.</p>

<p>loop device - это драйвер устройства, который позволяет монтировать файл, выступающий в роли блочного устройства (на самом деле устройство loop не является типом устройства. это обычный файл). например: файл: demo.img</p><pre><code>mount -o loop demo.img /mnt/demo/ ls -l /mnt/demo/ </code></pre><p>теперь вы можете посмотреть на <code>/mnt/demo</code> подкаталог для содержимого демо</p>