Монтирование файловой системы со специальным набором идентификаторов пользователя

Я хочу смонтировать устройство /dev/sda3 в каталог /foo/bar/baz. После монтирования в каталоге должен быть указан uid пользователя johndoe. Итак, я сделал:

sudo -u johndoe mkdir /foo/bar/baz
stat -c %U /foo/bar/baz
johndoe

и добавил следующую строку в мой /etc/fstab:

/dev/sda3 /foo/bar/baz ext4 noexec,noatime,auto,owner,nodev,nosuid,user 0 1

Когда я делаю сейчас sudo -u johndoe mount /dev/sda3, команда stat -c %U /foo/bar/baz приводит к root а не johndoe. Каков наилучший способ монтировать эту файловую систему ext4 с помощью набора uid johndoe?

19
задан 8 April 2011 в 11:33

3 ответа

Невозможно принудительно установить владельца на диск с файловой системой ext4. Только файловые системы, которые не поддерживают разрешения Linux, такие как fat, имеют атрибут владения / группового доступа: uid=value и gid=value. См. Справочную страницу по креплению .

Вы должны изменить владельца в смонтированной файловой системе следующим образом:

sudo chown johndoe /foo/bar/baz

Если вам нужно рекурсивно изменить разрешения:

sudo chown -R johndoe /foo/bar/baz

... и если группе нужны также следует изменить на johndoe:

sudo chown -R johndoe: /foo/bar/baz
0
ответ дан 8 April 2011 в 11:33

bindfs является ответом. Он возьмет уже смонтированную файловую систему и предоставит ее для просмотра в зависимости от того, что вам нужно:

sudo apt-get install bindfs
mkdir ~/myUIDdiskFoo
sudo bindfs -u $(id -u) -g $(id -g) /media/diskFoo ~/myUIDdiskFoo
0
ответ дан 8 April 2011 в 11:33

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


Чтобы узнать идентификатор группы файла, используйте ls -n. Пример вывода:

drwxr-xr-x 1 1000 1000  550 Jul  9 11:08 Desktop/

Вы хотите четвертое поле для GID, которое в моем случае является вторым 1000.

sudo addgroup --gid GID foobar; sudo usermod `whoami` -aG foobar

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

Как отмечалось в другом ответе, касающемся прав доступа пользователя, если вам нужно исправить группу для некоторых файлов, запустите один из них:

sudo chown -R :foobar ./
sudo chgrp -R  foobar ./
0
ответ дан 8 April 2011 в 11:33

Другие вопросы по тегам:

Похожие вопросы: