Как смонтировать раздел NTFS с правом записи для пользователя, не являющегося root?

Вопрос или проблема

Я использую Debian 8.8 и использую ntfs-3g для монтирования NTFS-раздела в /etc/fstab. Вот моя запись:

/dev/sdc1  /mnt/data_backup  ntfs-3g  rw,uid=1000,gid=1000,dmask=0002,fmask=0003  0  0

Для моей учетной записи userA нормально читать и записывать на раздел. Однако мой рабочий стол доступен другому пользователю userB, который не входит в группу root. Есть ли способ сделать раздел записываемым для пользователя userB, не имеющего прав root? И лучший результат будет в том, что userB сможет только добавлять, но не сможет удалять файлы в разделе. Также приемлемо решение через FTP. Спасибо!

Я потратил некоторое время на изучение концепции пользователей и групп, что помогло мне понять механизм модуля ntfs-3g. Вот мое решение:

  1. Создайте группу ntfs и добавьте в группу userA и userB.
  2. Измените gid в /etc/fstab на gid=ntfs. Тогда маска означает, что все пользователи в группе могут записывать на раздел.

@Seven Спасибо!

Спросили 4 года, 10 месяцев назад

текущая дата 2022-05-11

Я использую RHEL/CentOS 7.9 и использую ntfs-3g-2021.8.22-2.el7.x86_64.rpm и ntfs-3g-libs-2021.8.22-2.el7.x86_64.rpm, которые, как я полагаю, поступили из репозитория EPEL, у меня нет проблем с монтированием NTFS-раздела как записываемого. На самом деле, используя эту последнюю версию ntfs-3g, мне даже не нужно использовать опцию -t ntfs-3g для команды монтирования. Однако мои NTFS файловые системы имеют rwxrwxrwx для всего на них при монтировании в Linux.

Когда я использовал ntfs-3g, например, версию 2019 года, это работало, но мне пришлось использовать опцию -t ntfs-3g при монтировании, среди других нюансов.

Таким образом, текущий ответ на этот вопрос, основанный на моем опыте, и я использую USB-портативный диск, отформатированный в NTFS под Windows 10, для передачи данных между моим ПК с Windows и серверами Linux… все время в последние пару лет… У меня нет проблем с монтированием NTFS-раздела в Linux и с возможностью записи в него независимо от пользователя Linux. Поэтому используйте последнюю версию ntfs-3g.

Но если вы хотите смонтировать NTFS-раздел с помощью ntfs-3g и иметь разумную политику разрешений для пользователя/группы, это другая история.

Ответ или решение

Чтобы смонтировать NTFS-раздел с возможностью записи для пользователя, не обладающего правами root, особенно в среде Debian 8.8, следует внимательно рассмотреть настройки монтирования. Использование ntfs-3g предоставляет вам нужные инструменты для работы с NTFS-файловыми системами, так как данный драйвер обеспечивает полноценную поддержку чтения и записи.

Шаг 1: Создание группы

Первоначально создайте группу, в которую будут включены пользователи, имеющие доступ к разделу. Это позволит контролировать права доступа на уровне группы.

sudo groupadd ntfs
sudo usermod -aG ntfs userA
sudo usermod -aG ntfs userB

Шаг 2: Настройка параметров в /etc/fstab

Теперь вам нужно изменить запись монтирования в файле /etc/fstab. Откройте его с помощью текстового редактора:

sudo nano /etc/fstab

Замените вашу запись на следующую, чтобы задать правильный идентификатор группы и контроль доступа:

/dev/sdc1  /mnt/data_backup  ntfs-3g  rw,uid=1000,gid=<gid_группы>,dmask=0007,fmask=0007  0  0

Вместо <gid_группы> подставьте идентификатор (GID) созданной группы ntfs. Чтобы узнать GID, выполните команду:

getent group ntfs

Вывод будет типа следующего:

ntfs:x:1001:

В данном примере GID равен 1001, тогда запись в /etc/fstab будет выглядеть так:

/dev/sdc1  /mnt/data_backup  ntfs-3g  rw,uid=1000,gid=1001,dmask=0007,fmask=0007  0  0

Шаг 3: Открытие доступа

Теперь необходимо смонтировать раздел, чтобы изменения вступили в силу:

sudo umount /mnt/data_backup
sudo mount -a

Шаг 4: Настройка прав доступа

Убедитесь, что права доступа правильно настроены. После монтирования раздела выполните следующую команду, чтобы изменить режим доступа:

sudo chmod 770 /mnt/data_backup

Теперь userA и userB, как члены группы ntfs, смогут создать и редактировать файлы на разделе. Однако стоит учесть, что по умолчанию все пользователи группы смогут удалять или изменять файлы.

Реализация только для добавления файлов

Если вы хотите, чтобы userB мог только добавлять файлы, но не удалять или модифицировать существующие, вам придется использовать несколько иной подход, поскольку файловая система NTFS и ntfs-3g не поддерживают такие специфические разрешения на уровне файлов. Хотя можно рассмотреть альтернативные пути, например, использование FTP-сервера для загрузки данных, что позволит более тонкую настройку прав доступа.

Альтернативный подход: FTP

Если FTP-сервер является приемлемым решением, вы можете установить vsftpd или proftpd. Это позволит userB передавать файлы на сервер, куда будет смонтирован NTFS-раздел. Идея заключается в предоставлении доступа к разделу только через FTP, что даст вам полный контроль над правами доступа.

sudo apt-get install vsftpd

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

Заключение

Таким образом, предоставление прав записи для непривилегированных пользователей на NTFS-раздел возможно через правильную настройку группы и параметров монтирования. Для добавления, но не удаления или изменения файлов вам может потребоваться использовать FTP, чтобы обеспечить более строгий контроль доступа.

Оцените материал
Добавить комментарий

Капча загружается...