Дозволення групового читання-запису доступу до каталогу


40

У мене є два користувачі, user1 та user2, які є обома членами groupA. user2 має папку у своєму домашньому каталозі під назвою folderA. Якщо вони хочуть дозволити читання-запис-виконання дозволів для всіх членів групиA, як би вони це зробили?

Що робити, якщо папкаA містить багато файлів та додаткових папок, які також повинні мати дозвіл на читання-запис-виконання?

Інформація про групи є дещо «плямистою» в Інтернеті, тому я ставлю своє запитання тут, сподіваючись, що хтось опублікує чітку відповідь, яка може допомогти і іншим.

Спасибі!

Відповіді:


56

Спочатку FolderA повинен бути частиною groupA - власник папки або root може виконати цю операцію

chgrp groupA ./folderA

Тоді groupA знадобляться права доступу до папки

chmod g+rwx ./folderA

У командах chgrp та chmod є параметри для повторного переходу в каталог, якщо потрібно.


Примітка: ви повинні переконатися, що ви також можете отримати доступ до проміжних каталогів (+ х може бути достатньо).
jfs

Я спочатку намагався, chown :groupname ./folderі це не спрацювало - як в ній змінили групу, але не дали ефективних дозволів
user230910

3

Мій власний досвід у цій галузі тут. Оригінальна інструкція . Тестовано на Ubuntu 18.04.

Дозволити писати в системній папці

Надати дозвіл на запис у /etc/nginx/папку.

# Check 'webmasters' group doen't exist
cat /etc/group | grep webmasters
# Create 'webmasters' group
sudo addgroup webmasters
# Add users to 'webmasters' group
sudo usermod -a -G webmasters username
sudo usermod -a -G webmasters vozman
sudo usermod -a -G webmasters romanroskach

# Group assignment changes won't take effect
# until the users log out and back in.

# Create directory
sudo mkdir /etc/nginx/
# Check directory permissions
ls -al /etc | grep nginx
drwxr-xr-x   2 root root     4096 Dec  5 18:30 nginx

# Change group owner of the directory
sudo chgrp -R webmasters /etc/nginx/
# Check that the group owner is changed
ls -al /etc | grep nginx
drwxr-xr-x   2 root webmasters   4096 Dec  5 18:30 nginx

# Give write permission to the group
sudo chmod -R g+w /etc/nginx/
# Check
ls -al /etc | grep nginx
drwxrwxr-x   2 root webmasters   4096 Dec  5 18:30 nginx

# Try to create file
sudo -u username touch /etc/nginx/test.txt  # should work
sudo -u username touch /etc/test.txt  # Permission denied

Надати дозвіл на запис у /etc/systemd/system/папку.

# List ACLs
getfacl /etc/systemd/system

getfacl: Removing leading '/' from absolute path names
# file: etc/systemd/system
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

# Add 'webmasters' group to an ACL
sudo setfacl -m g:webmasters:rwx /etc/systemd/system

# Check
getfacl /etc/systemd/system

getfacl: Removing leading '/' from absolute path names
# file: etc/systemd/system
# owner: root
# group: root
user::rwx
group::r-x
group:webmasters:rwx
mask::rwx
other::r-x

sudo -u username touch /etc/systemd/system/test.txt  # should work
sudo -u username touch /etc/systemd/test.txt  # Permission denied
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.