2

Какие основные вещи происходят, когда вы монтируете диск. Даже если диск не смонтирован, он виден компьютеру (например, sudo fdisk -l / diskutil -list). Когда монтируется диск, происходит ли то, что ОС указывает путь к устройству или происходит какая-то "магия" файловой системы?

3 ответа3

0

Существует некоторая "волшебная" файловая система.

Это может помочь думать о вашей дисковой системе в слоях. Самый нижний уровень - это блочное устройство, затем разделы сверху, а затем файловая система сверху.

Когда диск монтируется, программа монтирования совместно с ядром и, возможно, /etc /fstab выясняет, какая файловая система находится на разделе, а затем реализует (посредством вызовов ядра) стандартные вызовы файловой системы, чтобы разрешить манипулирование файловой системой. включая чтение, письмо, листинг, разрешения и т. д.

На самом деле вы можете легко добавить дополнительные слои к этому, и все это работает одинаково. (Одним из распространенных является LVM, который расположен между разделом и файловыми системами и позволяет изменять размеры, добавлять и удалять диски даже в работающей файловой системе). Я упоминаю об этом, потому что это показывает, что есть нечто большее, чем просто указание пути к устройству.

Аналогично, разные ядра будут поддерживать разные файловые системы (например, некоторые могут включать ReiserFS, btrfs и т.д.). Также возможно реализовать файловую систему (которая все еще может быть смонтирована и размонтирована), используя файлы в "пространстве пользователя" (fuse). Это, например, позволит монтировать виртуальные файловые системы, которые не являются частью ядра, или даже виртуальные файловые системы - у меня есть, например, смонтированные каталоги FTP и даже удаленные пути по ssh как файловые системы (и, конечно, NFS и SAMBA), а также зашифрованные файлы и объединение нескольких каталогов для единой файловой системы - все это "виды магии", осуществляемые через ядро, обычно с помощью команды mount.

0

Когда файловая система монтируется с блочного устройства, будет сделано несколько приготовлений, включая

  • Чтение информации о файловой системе, такой как тип файловой системы, версия, параметры, объем свободного места ...
  • Проверка, была ли файловая система выключена (размонтирована) должным образом в прошлый раз
  • Проверка, является ли блокирующее устройство доступным только для чтения (переключатель дискеты /SD-карты, CDROM /DVD).
  • Воспроизведение операций, записанных в "журнале" файловой системы, если она есть.
0

когда вы монтируете файловую систему Linux, например ext2, ext3, ext4, .. копия суперблока файловой системы будет находиться в памяти для дальнейших действий

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .