Cambiar Permisos por Comandos en Linux con chmod
Tabla de contenido:
- Sintaxis del comando
chgrp
- Cómo cambiar la propiedad del grupo de archivos
- Cómo cambiar la propiedad del grupo de enlaces simbólicos
- Cómo cambiar recursivamente la propiedad del grupo
- Conclusión
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.
El comando
chgrp
cambia la propiedad del grupo de los archivos dados.
Esta guía explica cómo usar
chgrp
.
Sintaxis del comando
chgrp
El comando
chgrp
toma la siguiente forma:
chgrp GROUP FILE..
-
GROUP
, nombre del nuevo grupo o el ID del grupo (GID). El GID numérico debe tener como prefijo el símbolo+
.FILE..
, nombre de uno o más archivos.
A diferencia del comando
chown
que le permite cambiar la propiedad del usuario y del grupo,
chgrp
solo cambia la propiedad del grupo.
Para saber a qué grupo pertenece el archivo, use el
ls -l
.
Solo la raíz o el usuario con privilegios de sudo pueden cambiar la propiedad del grupo de un archivo.
Cómo cambiar la propiedad del grupo de archivos
Para cambiar la propiedad del grupo de un archivo o directorio, invoque el comando
chgrp
seguido del nuevo nombre del grupo y el archivo de destino como argumentos.
Por ejemplo, para cambiar el grupo del
filename
del archivo a
www-data
, ejecutaría:
chgrp www-data filename
También puede pasar varios archivos como argumentos al comando
chgrp
:
chgrp www-data file1 file2 dir1
Use la opción
-v
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
lugar de
-v
.
El ID de grupo numérico (GID) se puede usar en lugar del nombre de usuario. El siguiente ejemplo cambia la propiedad del grupo del archivo a un nuevo grupo con GID de 1000:
Cómo cambiar la propiedad del grupo de enlaces simbólicos
Cuando no funciona de forma recursiva, el comportamiento predeterminado del comando
chgrp
es cambiar la propiedad del grupo de los objetivos del enlace simbólico, no los enlaces simbólicos en sí.
Por ejemplo, si intenta cambiar el grupo del enlace simbólico enlace simbólico1 que apunta a
/opt/file1
chgrp
,
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 un error "no se puede desreferenciar 'symlink1': Permiso denegado".
El error ocurre porque, por defecto, en la mayoría de las distribuciones de Linux, los enlaces simbólicos están protegidos, y no puede operar en archivos de destino. Esta opción se especifica en
/proc/sys/fs/protected_symlinks
.
1
significa habilitado y
0
deshabilitado. Recomendamos no deshabilitar la protección de enlace simbólico.
Para cambiar la propiedad del grupo del enlace simbólico, use la opción
-h
:
Cómo cambiar recursivamente la propiedad del grupo
Para cambiar recursivamente la propiedad del grupo de todos los archivos y directorios en un directorio dado, use la opción
-R
.
Por ejemplo, el siguiente comando cambiará la propiedad de todos los archivos y directorios del directorio
/var/www
al grupo
www-data
:
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 la opción
-h
:
chgrp -hR www-data /var/www
Otras opciones que se pueden usar al cambiar recursivamente la propiedad del grupo son
-H
y
-L
.
Si el argumento pasado al comando
chgrp
es un enlace simbólico, la opción
-H
hará que el comando lo atraviese.
-L
le dice a
chgrp
que atraviese cada enlace simbólico a un directorio que se encuentre. En la mayoría de los casos, no debe usar estas opciones porque podría dañar su sistema o crear un riesgo de seguridad.
Conclusión
chgrp
cambia la propiedad del grupo de archivos, directorios y enlaces simbólicos.
Aunque puede usar el comando
chown
más popular para cambiar el grupo,
chgrp
tiene una sintaxis simple que es fácil de recordar.
Para obtener más información sobre el comando
chgrp
, visite la página de
man chgrp
o escriba
man chgrp
en su terminal.
Comando cd en linux (cambiar directorio)
El comando cd (cambiar directorio) se usa para cambiar el directorio de trabajo actual en Linux y otros sistemas operativos similares a Unix. En este tutorial, le mostraremos cómo usar el comando cd para navegar por el árbol de directorios de su sistema.
Cambiar el nombre del comando en Linux (cambiar el nombre de varios archivos)
El comando rename cambia el nombre de los archivos dados reemplazando la expresión de búsqueda en su nombre con el reemplazo especificado.
Su comando en Linux (cambiar de usuario)
El comando su (abreviatura de sustituto o cambio de usuario) le permite ejecutar la utilidad con los privilegios de otro usuario, por defecto el usuario root. En este tutorial, explicaremos cómo usar el comando su.