En Linux, cada archivo está asociado con un propietario y un grupo y tiene permisos que determinan qué usuarios pueden leer, escribir o ejecutar el archivo.
Este artículo explica cómo usar chgrp
Comando para cambiar la propiedad del grupo de archivos dados.
chgrp
Sintaxis del comando #
El chgrp
comando toma la siguiente forma:
chgrp [OPTIONS] GROUP FILE..
GROUP
, nombre del nuevo grupo o ID de grupo (GID). El GID numérico debe tener el prefijo+
símbolo.FILE..
, nombre de uno o más archivos.
A diferencia del chown
comando que le permite cambiar la propiedad del usuario y del grupo, chgrp
cambia solo la propiedad del grupo.
Para averiguar a qué grupo pertenece el archivo, use ls -l
comando.
Los usuarios normales pueden cambiar el grupo del archivo solo si son propietarios del archivo y solo a un grupo del que son miembros. Los usuarios administrativos pueden cambiar la propiedad del grupo de todos los archivos.
Cómo cambiar el número de propiedad del grupo de archivos
Para cambiar la propiedad del grupo de un archivo o directorio, invoque chgrp
seguido del nuevo nombre del grupo y el archivo de destino como argumentos.
Por ejemplo, para cambiar el grupo del archivo filename
a www-data
ejecutarías:
chgrp www-data filename
Si ejecuta el comando con un usuario sin privilegios, obtendrá un error de "Operación no permitida". Para suprimir el mensaje de error, invoque el comando con -f
opción. Por defecto, en caso de éxito, chgrp
no produce ningún resultado y devuelve cero.
También puede pasar varios archivos como argumentos a chgrp
comando:
chgrp www-data file1 file2 dir1
Usa el -v
opción para obtener información sobre los archivos que se están procesando:
chgrp www-data file1 file2
changed group of 'file1' from nginx to www-data
group of 'file2' retained as www-data
Para imprimir información solo sobre aquellos archivos cuyo grupo realmente cambia, use -c
en lugar de -v
.
El ID de grupo numérico (GID) se puede utilizar en lugar del nombre de usuario. El siguiente ejemplo cambia la propiedad del grupo del archivo a un nuevo grupo con GID de 1000:
chgrp +1000 filename
Cómo cambiar el número de propiedad del grupo de enlaces simbólicos
Cuando no opera recursivamente, el comportamiento predeterminado de chgrp
El comando es cambiar la propiedad del grupo de los objetivos del enlace simbólico, no los enlaces simbólicos mismos.
Por ejemplo, si intenta cambiar el grupo del enlace simbólico symlink1
que apunta a /opt/file1
, chgrp
cambiará la propiedad del archivo o directorio al que apunta el enlace simbólico:
chgrp www-data symlink1
Lo más probable es que, en lugar de cambiar el grupo objetivo, obtenga el mensaje de error "no se puede eliminar la referencia a 'enlace simbólico1':permiso denegado".
El error ocurre porque, de manera predeterminada, en la mayoría de las distribuciones de Linux, los enlaces simbólicos están protegidos y no puede operar en los archivos de destino. Esta opción se especifica en /proc/sys/fs/protected_symlinks
. 1
significa habilitado y 0
desactivado. Recomendamos no deshabilitar la protección de enlaces simbólicos.
Para cambiar la propiedad del grupo del enlace simbólico en sí, use -h
opción:
chgrp -h www-data symlink1
Cómo cambiar recursivamente el número de propiedad del grupo
Para cambiar recursivamente la propiedad del grupo de todos los archivos y directorios en un directorio determinado, use -R
opción.
Por ejemplo, el siguiente comando cambiará la propiedad de todos los archivos y directorios bajo /var/www
directorio al www-data
grupo:
chgrp -R www-data /var/www
Cuando se especifica la opción recursiva chgrp
no atravesará los enlaces simbólicos y no realizará cambios en los enlaces simbólicos. Para cambiar la propiedad del grupo de los enlaces simbólicos, pase -h
opción:
chgrp -hR www-data /var/www
Otras opciones que se pueden usar cuando se cambia recursivamente la propiedad del grupo son -H
y -L
.
Si el argumento pasó a chgrp
el comando es un enlace simbólico, el -H
La opción hará que el comando la atraviese. -L
le dice a chgrp
para atravesar cada enlace simbólico a un directorio que se encuentra. En la mayoría de los casos, no debe usar estas opciones porque podría estropear su sistema o crear un riesgo de seguridad.
Conclusión #
chgrp
cambia la propiedad del grupo de archivos, directorios y enlaces simbólicos.
Aunque puedes usar el chown
más popular comando para cambiar el grupo, chgrp
tiene una sintaxis simple que es fácil de recordar.
Para obtener más información sobre el chgrp
comando, visite la página de manual de chgrp o escriba man chgrp
en tu terminal.
Si tiene alguna pregunta o comentario, no dude en dejar un comentario.