Права доступа для команды монтирования: ntfs и ntfs-3g

Права доступа для команды монтирования: ntfs и ntfs-3g

Я вижу множество примеров того, как монтировать ntfsраздел с помощью mountкоманды или записи в fstab. Во всех случаях указание ntfsв качестве файловой системы связано с указанием umask=0222, а указание ntsf-3gникогда не имеет umaskпараметра.

Пытаясь провести исследование umask, я наткнулся на многочисленные объяснения, такие какВот этот. Я не могу извлечь из этих объяснений понимание "0222", которое, помимо прочего, имеет на одну цифру больше, чем, кажется, описывает спецификация. Я понимаю, что это якобы уменьшает разрешения по сравнению с определением по умолчанию. Это тоже не особо помогает. Я предполагаю, что это относится к записи, поскольку в Linux ntfs-3gэто поддерживается, а по крайней мере несколько лет назад ntfsне поддерживалось.

Каковы разрешения по умолчанию (я предполагаю, что они относятся к каталогам и файлам и не зависят от файловой системы), и что делает с этим "0222"? Зачем это нужно? Это просто для того, чтобы избежать сообщения об ошибке при попытке записи в раздел, когда Linux его не поддерживает?

решение1

Я не знаю разницы между ntfs и ntfs-3g.

Что касается опции umask, она задает битовую маску, так что биты, установленные в umask, очищаются в разрешениях на доступ к файлу. Эти биты разрешений — RWXRWXRWX, где R — доступ на чтение, W — доступ на запись, а X — доступ на выполнение, при этом некоторые более высокие биты используются в особых случаях. Высокий уровень RWX предназначен для владельца файла, к которому осуществляется доступ, следующая группа RWX предоставляет доступ для группы файла, а последний — для всех. Поскольку эти разрешения поступают по три бита за раз, они традиционно представлены в восьмеричном формате. Начальный 0 может указывать как на восьмеричный формат, так и на 0 для некоторых битов специального случая, поскольку он традиционно представлен в восьмеричном формате в зависимости от контекста.

Таким образом, umask 222 или 0222, которые являются одним и тем же, поскольку число традиционно восьмеричное, в двоичном виде равен 010010010. Это означает, что бит W установлен для пользователя, группы и всех остальных. Установка этого бита в umask очищает бит W в разрешениях на доступ к файлу.

Это не для того, чтобы избежать сообщений об ошибках. Указание umask 222 делает файлы недоступными для записи кем бы то ни было, хотя в противном случае они могли бы быть доступны для записи.

решение2

Вот моя запись FSTAB. Обратите внимание на опцию exec:

UUID=66D6934FD6931DFD /mnt/SeagateExpansionDrive ntfs-3g auto,users,permissions,exec,x-gvfs-show 0 0

С помощью вышеизложенного я могу chown, chmod и exec скрипты оболочки. Я использую Ubuntu.

Связанный контент