предоставление разрешений на запись группе в папку

Как я могу предоставить разрешение на запись для 1 группы?
У меня есть 2 пользователя (alex и ben ). alex является членом группы alex и группы consult.
ben является членом группы ben и группы consult

Я хочу предоставить доступ на чтение для чтения как для alex и ben в папке consult_documents.

Если я создаю alex владелец каталога consult_documents, и я предоставляю 775 доступ к каталогу consult_documents, ben и alex, я думаю, будет иметь доступ к папке.

Но это разрешит доступ к ben в других папках? Если пользователь состоит из двух групп, означает ли это, что все члены обеих групп получают одинаковые разрешения для всех папок?

27 голосов | спросил anatak 20 FebruaryEurope/MoscowbThu, 20 Feb 2014 13:35:46 +0400000000pmThu, 20 Feb 2014 13:35:46 +040014 2014, 13:35:46

4 ответа


32

Предоставление 775 разрешений в каталоге автоматически не означает, что все пользователи в определенной группе получат доступ к нему rwx. Они должны либо быть владельцем каталога, либо принадлежать к группе каталогов:

$ ls -ld some_dir
drwxrwxr-x 2 alex consult 4096 Feb 20 10:10 some_dir/
              ^     ^
              |     |_____ directory's group
              |___________ directory's owner

Итак, чтобы позволить alex и ben иметь доступ на запись к some_dir, some_dir должен принадлежать группе consult. Если это не так, владелец каталога (alex в вашем примере) должен выполнить следующую команду:

$ chgrp consult some_dir/

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

$ chgrp -R consult some_dir/

Это будет работать, только если alex является членом группы consult, что похоже на ваш пример.

Это не позволит ben получить доступ ко всем каталогам alex по двум причинам:

  1. Не все каталоги alex будут принадлежать группе consult
  2. Некоторые из каталогов alex могут принадлежать группе consult, но alex, возможно, не выбрал, чтобы разрешить rwx для них.

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

Все это предоставляется, если вы не используете никаких дополнительных обязательного контроля доступа на вашем система.

ответил Joseph R. 20 FebruaryEurope/MoscowbThu, 20 Feb 2014 13:51:32 +0400000000pmThu, 20 Feb 2014 13:51:32 +040014 2014, 13:51:32
6

Это приведет к тому, что alex и ben будут разделяться друг с другом в этом каталоге, и они не могут взаимодействовать с другими Dir ..

Измените группу пользователей с помощью

# usermod -a -G alex,ben alex

Затем измените разрешение для папки

# chown alex:ben consult_documents

Проверить здесь, я работал над ним

$ sudo usermod -a -G alex,ben alex

$ sudo chown alex:ben consult_documents/

cd consult_documents/

$ touch babin

drwxrwxr-x 2 alex ben  4096 Feb 20 15:19 .
drwxr-xr-x 3 alex alex 4096 Feb 20 15:17 ..
-rw-rw-r-- 1 alex alex    0 Feb 20 15:19 babin

$ su - ben

cd /home/alex/consult_documents/

[email protected]:/home/alex/consult_documents$ touch babin1
[email protected]:/home/alex/consult_documents$ ls -la
total 8
drwxrwxr-x 2 alex ben  4096 Feb 20 15:19 .
drwxr-xr-x 3 alex alex 4096 Feb 20 15:17 ..
-rw-rw-r-- 1 alex alex    0 Feb 20 15:19 babin
-rw-rw-r-- 1 ben  ben     0 Feb 20 15:19 babin1
[email protected]:/home/alex/consult_documents$

Посмотрите здесь

ответил Babin Lonston 20 FebruaryEurope/MoscowbThu, 20 Feb 2014 13:42:16 +0400000000pmThu, 20 Feb 2014 13:42:16 +040014 2014, 13:42:16
5

Если я правильно понял ваш вопрос, ответ да.

Позвольте мне объяснить:

Права доступа к папке и файлу разделены на три категории:

xxxyyyzzz
xxx are access rights for the owner
yyy are access rights for the owner's group
zzz are the access rights for everyone else

Каждый файл и папка должны принадлежать пользователю.

Это означает, что если у вас есть папка с именем consult_documents, и вы хотите, чтобы она была доступна для всех групп Consult, у вас будет это (с правами доступа 755):

drwxrwxr-x Alex Consult [......]

Каталог принадлежит Alex, а группа - Consult. У Alex есть права доступа RWX. Group Consult имеет права доступа RWX на него. Другие пользователи имеют права на RX.

Поскольку у вашего пользователя Alex есть несколько групп, вы можете выбрать группу для обмена.

Например, если ваша папка принадлежит Alex из groupe Alex:

drwxrwxr-x Alex Alex [......]

Сделайте это:

chown Alex:Consult your_folder

Он станет следующим:

drwxrwxr-x Alex Consult [......]

И тогда каталог доступен для группы Consult.

Обратите внимание, что, насколько я знаю, вы можете добавить группу, которая не входит в группу владельца. Но я не уверен, если это рекомендуется (непонятно при чтении прав доступа).

ответил Laurent C. 20 FebruaryEurope/MoscowbThu, 20 Feb 2014 13:47:51 +0400000000pmThu, 20 Feb 2014 13:47:51 +040014 2014, 13:47:51
0

setfacl -m g: debian-transmission: rwx -R /mnt /sra

Нашел эту команду nice, вместо chown , которая полностью изменит владельца файла или каталога!

Вы увидите на «ls -Al», что будет добавлен знак + , чтобы показать, что существует более одного владельца!

  

drwxr-xr-x 2 корень root 4096 8 ноя 19:11 sdc1 /

     

drwxrwxr-x + 3 root root 4096 17 февраля 19:16 sra /

И затем вы можете использовать getfacl , чтобы узнать, кто может писать или читать файл или каталог!

  

# file: sra

     

# owner: root

     

# group: root user :: rwx

     

группа :: г-х

     

группа: Debian-передачи: RWX

     

маска :: RWX

     

прочие :: г-х

     

по умолчанию: пользователь :: RWX

     

по умолчанию: группа :: г-х

     

по умолчанию: Группа: Debian-передачи: RWX

     

по умолчанию: маска :: RWX

     

по умолчанию: другие :: г-х

ответил Marc Cabana 18 FebruaryEurope/MoscowbSun, 18 Feb 2018 03:57:43 +0300000000amSun, 18 Feb 2018 03:57:43 +030018 2018, 03:57:43

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

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132