Как создать ext4 раздел для всех пользователей?

Я знаю, что это походит на dublicate вопросы, но я попробовал следующее, и это не помогло:

Мой диск смонтирован под

/media/data

таким образом, я вошел

sudo chown -R :users /media/data

Однако я все еще не могу записать в тот раздел как пользователь. Я также пытался сделать запись в/etc/fstab

UUID=... /media/data ext4 rw,suid,dev,exec,auto,user,async 0 0

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

Мне установили Сервер Ubuntu 14.04. Раздел перечислен под /dev/nvmeOn1p1 и не появляется в /etc/fstab (см. рисунки ниже).

(устройством является "Intel DC P3700" 800 ГБ SSD),

Дополнительный Комментарий: Так как раздел пуст, я мог также отформатировать его и воссоздать его с помощью gparted, например. Существует ли путь в gparted или других gui программах, чтобы указать, что раздел должен быть применимым всеми пользователями?

4
задан 11 March 2015 в 22:11

3 ответа

Я наконец решил проблему. Я узнал, что у меня была опечатка в моем UUID. Таким образом, моя заключительная запись в fstab была:

UUID=... /media/data ext4 defaults 0 0

или еще лучше:

/dev/sdb1 /media/data ext4 defaults 0 0

я проверил его прежде, чем перезагрузить путем простого вызова:

sudo umount /media/data
sudo mount -a

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

Одна кошка делает

sudo chown -R UserNameOfSudo:users /media/data 
sudo chmod -R g+rw /media/data 

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

, Если Вы, ВґchownВґ гарантируют, что определенный пользователь является частью группы "пользователи" путем ввода:

sudo adduser yourSpecificUsername users

и выход из системы и вход в систему снова!

Редактирование
раздел после монтирования по умолчанию принадлежит корню. Это, кажется, препятствует тому, чтобы любой писал в раздел. Изменение владельца к "UserNameOfSudo" после монтирования как показано выше урожаев желаемое поведение.

Edit2
В случае совместного использования компьютера между локальными пользователями и пользователями LDAP решение состоит в том, чтобы дать все права всем:

sudo chmod 777 /media/data

и затем установить 'липкий бит', что означает только пользователя, который создал папку / файлу позволяют удалить ее. Который добавляет некоторую разумную безопасность:

sudo chmod o+t /media/data/
1
ответ дан 1 December 2019 в 09:23

Это является ручным - "Как создают раздел EXT4" https://superuser.com/questions/643765/creating-ext4-partition-from-console

После того, как можно добавить его на FSTAB. Добавьте следующий текст в конце файла/etc/fstab:

/dev/nvme0n1p1    /media/data    ext4    defaults    0    2

, Где /dev/nvme0n1p1 - Ваше физическое устройство, /media/data - Ваша точка монтирования.

После команды mount -a использования для монтирования всего раздела в FSTAB.

-1
ответ дан 1 December 2019 в 09:23

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

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

Так выполнение чего-то вроде этого не будет работать:

sudo mkfs.ext4 /dev/some/data
sudo mkdir /media/data
sudo chown -R :users /media/data
sudo chmod -R g+rw /media/data
sudo mount /dev/some/data /media/data

Правильный поступок, создают файловую систему, монтируют его и затем изменяют полномочия и владение на нем. Не имеет значения, что Вы делаете в/etc/fstab.

Правильный способ сделать это является этим:

sudo mkfs.ext4 /dev/some/data
sudo mkdir /media/data
sudo mount /dev/some/data /media/data
sudo chown -R :users /media/data
sudo chmod -R g+rw /media/data

Это должно ответить на Ваш вопрос. При необходимости в большем количестве деталей продолжать читать.


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

Создайте пустой файл, чтобы отформатировать и смонтировать использование fallocate -l 100MB /tmp/filesystem.img. Затем отформатируйте его как ext4 файловую систему с sudo mkfs.ext4 /tmp/filesystem.img (это не блочное устройство, но если Вы отвечаете на да, можно поместить работу ext4 файловая система на нем так или иначе), и создайте каталог для использования в качестве точки монтирования mkdir /tmp/experiment.

Теперь попытайтесь изменить владельца и полномочия на этом directoy с sudo chown -R :users /tmp/experiment и sudo chmod -R g+rw /tmp/experiment, и проверьте полномочия с ls -la /tmp/experiment. Вы получите что-то вроде этого:

 ls -la /tmp/experiment/
 total 0
 drwxrwx--x 2 gerlos users  40 feb 19 10:37 .
 drwxrwxrwt 8 root   root  180 feb 19 10:38 ..

Это говорит Вам, что/tmp/experiment принадлежит пользователю gerlos и групповым пользователям, и элементы группы могут читать, записать и выполниться на нем. Можно поместить файлы в него, например, с touch /tmp/experiment/somefile.

Теперь смонтируйте файловую систему на том каталоге с sudo mount /mnt/filesystem.img /tmp/experiment, и посмотрите снова на ls вывод:

$ ls -la /tmp/experiment/
total 13
drwxr-xr-x 3 root root  1024 feb 19 10:41 .
drwxrwxrwt 8 root root   180 feb 19 10:41 ..
drwx------ 2 root root 12288 feb 19 10:41 lost+found

Как Вы видите, теперь/tmp/experiment кажется принадлежавшим корню с различными полномочиями! Почему? Поскольку мы не смотрим на сам/tmp/experiment, но в корневом каталоге файловой системы, содержавшейся в/mnt/filesystem.img, смонтированном на/mnt/experiment.

Кроме того, Ваш обычный пользователь не сможет поместить файлы там с touch /tmp/experiment/anotherfile.

Если Вы теперь попробовали еще раз работать chown и chmod как выше, Вы измените владельца и полномочия не на точке монтирования, а в смонтированной файловой системе, и Ваши пользователи смогут использовать файловую систему. Для подтверждения этого взгляда ls производит в один прошлый раз:

$ ls -la /tmp/experiment/
total 13
drwxrwxr-x 3 root users  1024 feb 19 10:41 .
drwxrwxrwt 8 root root    180 feb 19 10:45 ..
drwxrw---- 2 root users 12288 feb 19 10:41 lost+found

Как Вы видите, теперь члены группы пользователей могут поместить файлы на файловую систему! На самом деле ничто не препятствует тому, чтобы Ваш обычный пользователь создал новый файл там с touch /tmp/experiment/myfile:

$ ls -la /tmp/experiment/
total 13
drwxrwxr-x 3 root   users   1024 feb 19 11:05 .
drwxrwxrwt 8 root   root     180 feb 19 11:02 ..
drwxrw---- 2 root   users  12288 feb 19 10:41 lost+found
-rw-rw---- 1 gerlos gerlos     0 feb 19 11:02 myfile

Миссия выполняется!:-)

6
ответ дан 1 December 2019 в 09:23

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

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