Измените запись fstab, чтобы все пользователи могли читать и писать на том EXT4.

44

У меня есть Ubuntu 10.04 с разделом EXT4. Этот раздел настроен на автоматическое подключение /etc/fstab. Для целей этого поста, мы будем называть его: /media/foo.

К сожалению, только rootмогут создавать / удалять файлы / каталоги в корневой файловой системе foo. Чтобы другие пользователи могли выполнять файл / io на этом томе, rootнеобходимо создать каталог и chmodразрешения для других.

Я хотел бы, чтобы установить объем такого , что кто -то будет иметь возможность чтения / записи в объем без необходимости rootв chmod.

Ниже моя fstabзапись:

/dev/sda8    /media/foo    ext4    rw,user,exec 0 0

Запись изначально была defaultsвместо rw,user,exec. Я добавил дополнительные записи, а именно, rwчтобы любой пользователь мог читать / писать.

К сожалению, fstabзапись не работает. Он прекрасно работает, но все равно требует rootвмешательства.

И, на всякий случай, кто-нибудь спросит, просто работает: chmod -R 777 *на /media/fooкак rootне работает.

Phanto
источник

Ответы:

45

Опция монтирования userпозволяет монтировать файловую систему только любому пользователю. rwОпция делает файловую систему не только для чтения. Вы должны будете использовать разрешения, чтобы сделать родительский каталог доступным для записи.

chmod 777 /media/foo

chmodКоманды вы показываете влияет только на существующие файлы в пределах /media/foo .

Приостановлено до дальнейшего уведомления.
источник
2
Какое лучшее место в Ubuntu, чтобы добавить эту команду при запуске?
Иван Балашов
@IvanBalashov: Вы можете использовать @rebootзапись /etc/crontabсреди других возможностей.
Приостановлено до дальнейшего уведомления.
3
@DennisWilliamson Спасибо. Я положил это, /etc/rc.localесли это имеет какое-либо значение. Что в целом меня беспокоит, так это то, что он действительно должен быть настроен в fstab. Если нет, точка монтирования может измениться, и сценарии также должны измениться, ад обслуживания.
Иван Балашов
Вау, я должен начать угадывать эти вещи: D Большое спасибо.
erm3nda
1
Согласитесь с chmod, но добавьте: chmod + t / media / foo, чтобы пользователи могли создавать свои собственные подкаталоги
user1251840
25

Я думаю, что было бы проще изменить запись fstab на:

/dev/sda8    /media/foo    ext4    rw,user,exec,umask=000 0 0

umask=000означает, что любой может прочитать, написать или выполнить любой файл или каталог в foo. Обычное значение по умолчанию - 022, что означает, что пользователи не могут писать.

кто-то
источник
32
umask - это опция только для разделов ntfs / vfat. mount не понравится umask в файловой системе ext.
Даниэль
8

У меня была такая же проблема на openSUSE, но я думаю, что решение может быть применимо и к этому. Все пользователи, которых я хочу использовать для подключения смонтированной файловой системы, принадлежат к одной основной группе: пользователи

У меня есть следующая строка в моем Fstab:

/dev/<partition> <mount_point>          ext4       rw,acl       0 0

и я выполнил следующие команды:

sudo chgrp -R users <mount_point>
sudo setfacl -d -m g::rwx <mount_point>

так что вновь созданные файлы или каталоги получают эти разрешения. Это означает, что у вас установлен пакет acl.

Dario
источник
Если это зашифрованный каталог, скажите, /homeбудет ли он монтироваться в /etc/crypttab?
Джордж Удосен
2

Ну, во-первых, вы хотите убедиться, что каталог / media / foo сам по себе доступен для записи. Если это не так, выполните следующую команду:

chmod +w /media/foo

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

Хотей
источник
1

Пытаться,

sudo setfacl -R -d -m u::rwx,g::rwx,o::rwx <mount_point>
user247046
источник
0

Несколько лет назад я установил группу точек монтирования в группу plugdev, добавил пользователя в эту группу. Таким образом, создавая новые группы, можно давать разрешения для каждого пользователя. Для домашнего использования достаточно установить разрешения для точки монтирования другим пользователям: чтение / запись / выполнение, как написано выше.

Я сделал это с помощью 'sudo nautilus &' в терминале и щелкнул правой кнопкой мыши -> свойства -> права, но любой другой файловый менеджер, работающий от имени пользователя root, подойдет.

Doom3d
источник