Что такое «mount» [duplicate]

6

что такое «монтирование»? У меня есть ощущение, что это означает «сделать доступным хранилище данных», но что это значит? Пожалуйста, укажите случаи, когда «диск доступен» и «диск установлен» различны ».

    
задан user480468 09.12.2015 в 01:02
источник

4 ответа

3

Хорошо, давайте вернемся к основам:

  • Когда вы подключаете устройство памяти, такое как флеш-накопитель, ядро ​​Linux создает для него специальный файл в каталоге / dev. Все ваши устройства представлены одним из этих файлов.

  • Если это устройство не установлено, вы не можете получить / прочитать / записать его. Это похоже на режим «stand-by», он готов к использованию, но еще не используется.

  • Когда вы монтируете устройство, вы должны указать точку монтирования. Это очень запутанная концепция для пользователей, поступающих из Windows. В Windows каждое устройство памяти имеет свой собственный корень. В Linux они всегда монтируются внутри одного единственного корня.

  • Установка устройства памяти в основном «включает его» из режима «stand-by». Он доступен через указанную точку монтирования.

  • Каталог / mnt существует, поэтому вы можете монтировать в нем вещи. В некоторых дистрибутивах (например, Ubuntu) для этой же цели также есть каталог / media.

ответ дан Eduardo Cola 09.12.2015 в 01:25
2

Для простоты я ограничу этот ответ обычными устройствами хранения, такими как диски и флешки.

Когда вы подключаете свое устройство, его драйвер делает его доступным как узел устройства, который для пользовательских программ выглядит как файл: например. %код%. Теперь доступен диск уже . Вы можете читать и писать. Вот пример того, как вы можете посмотреть его MBR (первые 512 байт) в шестнадцатеричной форме + ASCII:

sudo head -c 512 /dev/sda | xxd -g1

Но если у вас есть файлы на этом устройстве, и вы хотите получить к ним доступ, этот низкоуровневый внешний вид не совсем удовлетворительный. Вы хотите включить драйвер файловой системы . Для этого вы монтируете устройство, используя утилиту /dev/sda . Чтобы сделать его более очевидным, я буду явно указывать файловую систему в следующей команде (предполагая, что я сделал правильный выбор mount , а если нет, то ext4 скажет вам):

sudo mount /dev/sda1 /mnt/ -t ext4

После этого ваше устройство будет отображаться в mount в формате, который пользовательские программы ожидают: файлы и каталоги - вместо простых секторов.

Вы можете задаться вопросом, почему я использовал /mnt/ вместо sda1 в приведенной выше команде. Это связано с тем, что между уровнем файловой системы и равными секторами существует небольшой слой разбиения , и здесь sda обозначает первый раздел на device sda1 .

    
ответ дан Ruslan 09.12.2015 в 08:37
0

Когда вы монтируете «то, что вы помещаете в файловую систему, содержащуюся в вашей структуре корневой файловой системы. Эффективное предоставление файлам места. Это похоже на метки диска C: / D: в окнах.

Установка / dev / sdb1 в / mnt / disk1 помещает все файлы и папки, содержащиеся в устройстве standard disk B partition 1 , в каталог /mnt/disk1 , где вы можете получить к ним доступ.

Современные системы имеют способы автоматического монтирования дисков, так как окна автоматически монтируют диски для ввода букв, но система установки местоположения в Unix намного более гибкая. И размонтирование, очевидно, является удалением доступа к этим файлам / папкам из этого местоположения. Вы можете узнать, какие файловые системы установлены, выполнив команду:

mount

Участвующие части: mount, umount, fstab (для фиксированных монтировок), udev, gvfs (для автоматического монтажа)

    
ответ дан zed Blackbeard 09.12.2015 в 06:21
0

Насколько вы знакомы с Windows (или - ugh! - DOS)? Если вы достигли абсолютного статуса новичка на любом из них, вы знаете, что ваше основное системное запоминающее устройство (жесткий диск или SSD) называется C: . (Для простоты, Я предполагаю, что компьютер имеет только одно вторичное запоминающее устройство, и что он имеет только один раздел.) Корневой каталог C:\ и содержит другие каталоги C:\Intel , C:\Program Files , C:\Users и C:\Windows . Они могут содержать еще один слой каталогов; например., C:\Program Files\Oracle , C:\Users\your_name и т. д.

  • Но если вы вставляете оптический диск (CD или DVD) в соответствующий диск, он становится D: . И он также имеет корневой каталог, D:\ и обычно подчиненные каталоги, такие как D:\Install .
  • И если вы помните дискеты («флоппи-диски») вы помните, что они были диском A: (и, в действительно старые дни, вы могли бы иметь второй, который, естественно, назывался B: ). И применяется тот же шаблон: корневой каталог A:\ может содержать папки, такие как A:\GAMES и A:\WORK .
  • Другие съемные диски (например, USB-накопители) имеют буквы дисков за пределами D (возможно, F ), и корневой каталог F:\ может содержать папки, такие как F:\Project1 .
  • И если у вас есть сетевые диски, у них могут быть буквы букв ближе к концу алфавита (возможно, Z ), и корневой каталог Z:\ может содержать папки, такие как Z:\Project2 .

Итак, весь каталог вашего компьютера выглядел примерно так:

     A:\                          C:\                             D:\        F:\        Z:\
    ⋰ ⋱                     ⋰  ⋰  ⋱  ⋱                       ⋰         ⋰          ⋰
   ⋰   ⋱               ⋰     ⋰      ⋱     ⋱                 ⋰         ⋰          ⋰
  ⋰     ⋱         ⋰        ⋰          ⋱        ⋱           ⋰         ⋰          ⋰
GAMES   WORK    Intel   Program Files   Users    Windows    Install    Project1    Project2
                             ⋰          ⋰
                           ⋰          ⋰
                         ⋰          ⋰
                     Oracle     user480468

Таким образом, вы могли бы, в принципе, до 26 независимых каталогов каталогов файловой системы, каждый со своим корневым каталогом. И я полагаю, что это работает достаточно хорошо, особенно теперь, когда Windows связывает их все вместе в Computer (ранее известная как My Computer ) суперпапка. (Но опять же, посмотрите, как сложно устанавливать программы на диске, отличном от C: , или для перемещения вашего каталога пользователя с C: .) И обратите внимание, что Computer - псевдо-папка - вы не можете создавать файлы или каталоги в Computer .

Unix имеет философию , которая включает концепцию Сделайте одно дело и сделайте это хорошо . (Даже имя «Unix» происходит от префикса "un-" или " уни-», что означает «один» .) Поэтому неудивительно, что дизайнеры Unix решил иметь дерево каталогов файловой системы single ; вы, вероятно, знакомы с ним:

                                        /
                               ⋰ ⋰ ⋰  ⋮  ⋱ ⋱ ⋱
                         ⋰   ⋰   ⋰    ⋮    ⋱   ⋱   ⋱
                   ⋰     ⋰     ⋰      ⋮      ⋱     ⋱     ⋱
             ⋰       ⋰       ⋰        ⋮        ⋱       ⋱       ⋱
       ⋰         ⋰         ⋰          ⋮          ⋱         ⋱         ⋱
 ⋰           ⋰           ⋰            ⋮            ⋱            ⋱            ⋱
bin         dev          etc           home           mnt          tmp          usr    …
                                       ⋰                                       ⋰⋱
                                     ⋰                                       ⋰    ⋱
                                   ⋰                                       ⋰        ⋱
                              user48046                                   bin         lib

Красота заключается в том, что вы (в роли системного администратора) может помещать все в один раздел, или поместите /home в один раздел и /usr в другой, и вы (в своей роли пользователя) можете забыть об этом. Вам не нужно знать, какой диск (раздел) /usr включен; он появляется под единственным корнем файловой системы ( / ) независимо. Мягкий недостаток заключается в том, что вы (в своей роли силового пользователя) должен поддерживать это унифицированное дерево каталогов файловой системы при добавлении (и удалять) компоненты хранения. Когда вы вставляете компакт-диск или флешку, это всего лишь запись в /dev , которые вы, вероятно, не должны возиться со слишком много. Вы можете сделать что-то с узлом устройства, например, запустить fsck или fdisk ; или, возможно, настроить его как специальное хранилище данных (например, для Oracle), поскольку доступен доступ к диску . Но вы не можете получить доступ к файлам (и каталогам) на нем, потому что они еще не находятся в файловой системе - потому что диск не установлен .

TL; DR

И вот здесь приходит mount . mount - это команда, которая прикрепляет файловую систему a (например, на съемном устройстве) в файловую систему (тот, который начинается с / ). 1 Вы увидите, что существует каталог /mnt в каталоге / . Обычно, переходные (съемные) устройства хранения файловой системы монтируются на каталоги в /mnt ; то есть они прикреплены к файловой системе. И на некоторых системах, некоторые устройства автоматически монтируются, когда они обнаруживаются. Но, теоретически, вы можете установить файловую систему a в любом месте в файловой системе .

ответ дан G-Man 09.12.2015 в 09:47