desarrollo-web-br-bd.com

otorgar permisos de escritura a un grupo a una carpeta

¿Cómo puedo otorgar permiso de escritura a 1 grupo?
Tengo 2 usuarios (alex y ben).
alex es miembro del grupo alex y del grupo consult.
ben es miembro del grupo ben y del grupo consult.

Quiero otorgar acceso de lectura y escritura a ambos alex y ben en la carpeta consult_documents.

Si hago alex el propietario del directorio consult_documents y concedo 775 acceso al directorio consult_documents, ben y alex podrán acceder a la carpeta, creo.

¿Pero esto también permitirá el acceso de ben a las otras carpetas de alex? Si un usuario está en dos grupos, ¿eso significa que todos los miembros de ambos grupos obtienen los mismos permisos en todas las carpetas?

35
anatak

Otorgar permisos 775 en un directorio no significa automáticamente que todos los usuarios de un determinado grupo obtendrán rwx acceso a él. Deben ser el propietario del directorio o pertenecer al grupo del directorio:

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

Entonces, para permitir que tanto alex como ben tengan acceso de escritura a some_dir, la some_dir el directorio en sí debe pertenecer al grupo consult. Si ese no es el caso, el propietario del directorio (alex en su ejemplo), debe emitir el siguiente comando:

$ chgrp consult some_dir/

o para cambiar la propiedad grupal de todo dentro del directorio:

$ chgrp -R consult some_dir/

Esto solo funcionará si alex es miembro del grupo consult, que parece ser el caso en su ejemplo.

Esto no permitirá que ben acceda a todos los directorios de alex por dos razones:

  1. No todos los directorios de alex pertenecerán al grupo consult
  2. Algunos de los directorios de alex pueden pertenecer al grupo consult pero es posible que alex no haya elegido permitir el acceso del grupo rwx a ellos.

En resumen, la respuesta depende tanto de la propiedad del grupo como de los bits de permiso del grupo establecidos para el directorio.

Todo esto se proporciona si no utiliza ninguna medida adicional control de acceso obligatorio en su sistema.

42
Joseph R.

Esto hará que alex y ben se colaboren entre sí en este directorio, y no pueden colaborar en otro directorio.

Modificar el grupo de usuarios usando

# usermod -a -G alex,ben alex

Luego cambie el permiso para la carpeta

# chown alex:ben consult_documents

Mira aquí, lo he solucionado

$ 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$

Have a look here

7
Babin Lonston

Si entendí correctamente su pregunta, la respuesta es sí.

Dejame explicar:

Sus derechos de acceso a carpetas y archivos se dividen en tres categorías:

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

Todos los archivos y carpetas deben ser propiedad de un usuario.

Lo que significa que, si tiene una carpeta llamada consult_documents, y desea que sea accesible desde todos los miembros del grupo Consult, tendrá esto (con 755 derechos de acceso):

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

El directorio es propiedad de Alex y el grupo es Consult. Alex tiene derechos de acceso RWX sobre él. Group Consult tiene derechos de acceso RWX en él. Otros usuarios tienen derechos de RX.

Como su usuario Alex tiene varios grupos, puede elegir el grupo para compartir.

Por ejemplo, si su carpeta es propiedad de Alex del grupo Alex:

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

Hazlo:

chown Alex:Consult your_folder

Se convertirá:

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

Y luego el directorio está disponible para el grupo Consult.

Tenga en cuenta que, que yo sepa, puede agregar un grupo que no pertenezca al grupo del propietario. Pero no estoy seguro de si se recomienda (no está claro al leer los derechos de acceso).

6
Laurent C.

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

¡Encontré este comando Nice, en lugar de chown que cambiará completamente el propietario del archivo o directorio!

Verá en un 'ls -Al' que se agregará un signo + para mostrar que hay más de un propietario.

drwxr-xr-x 2 root root 4096 8 de noviembre 19:11 sdc1 /

drwxrwxr-x + 3 root root 4096 17 de febrero 19:16 sra /

¡Y luego puede usar getfacl para ver quién puede escribir o leer el archivo o directorio!

# file: sra

# propietario: root

# grupo: usuario root :: rwx

grupo :: r-x

grupo: debian-transmission: rwx

máscara :: rwx

otro :: r-x

predeterminado: usuario :: rwx

predeterminado: grupo :: r-x

predeterminado: grupo: debian-transmission: rwx

predeterminado: máscara :: rwx

predeterminado: otro :: r-x

3
Marc Cabana