Permitir un acceso de lectura y escritura grupal a un directorio

40

Tengo dos usuarios, user1 y user2, que son miembros del grupo A. user2 tiene una carpeta en su directorio de inicio llamada folderA. Si desean permitir permisos de lectura-escritura-ejecución para todos los miembros del grupo A, ¿cómo lo harían?

¿Qué sucede si la carpeta A contiene muchos archivos y carpetas adicionales que también necesitan tener permiso de lectura-escritura-ejecución?

La información sobre los grupos es un poco 'irregular' en la web, por lo que pongo mi pregunta aquí con la esperanza de que alguien publique una respuesta clara que también pueda ayudar a otros.

¡Gracias!

WxPilot
fuente

Respuestas:

56

La carpeta A primero deberá formar parte del grupo A: el propietario o la raíz de la carpeta puede realizar esta operación

chgrp groupA ./folderA

Entonces el grupo A necesitará permisos rwx de la carpeta

chmod g+rwx ./folderA

Hay opciones en los comandos chgrp y chmod para recurrir al directorio si es necesario.

Charles Green
fuente
nota: debe asegurarse de que también puede acceder a directorios intermedios (+ x podría ser suficiente).
jfs
Originalmente intenté chown :groupname ./foldery eso no funcionó, ya que cambió el grupo, pero no dio ningún permiso efectivo
usuario230910
3

Mi propia experiencia en esta área aquí. Cómo hacerlo original . Probado en Ubuntu 18.04.

Permitir escribir en la carpeta del sistema

Dar permiso de escritura a la /etc/nginx/carpeta.

# 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

Dar permiso de escritura a la /etc/systemd/system/carpeta.

# 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
FooBar167
fuente