CHMOD(1)

NOMBRE
chmod - modifica los permisos de archivos

SINOPSIS
chmod [OPCIÓN]... MODO[,MOD=]... FICHERO...
chmod [OPCIÓN]... MODO-OCTAL FICHERO...
chmod [OPCIÓN]... --reference=FICHERO-R FICHERO...

DESCRIPCIÓN
Esta página de manual describe la versión GNU de chmod. chmod modifica los permisos de acceso de cada archivo conforme a modo, que puede ser una representación simbólica de dichas modificaciones o un número octal que representa el patrón de bits para el nuevo modo.

El formato del modo simbólico es [ugoa...][[-+=][perms...]...], donde perms consta de cero o más letras de entre rwxXst, o una sola letra de entre ugo. Se pueden dar varios modos simbólicos, separados entre si mediante comas.

Una combinación de las letras ugoa controla el acceso del que dispondrán los usuarios al archivo sobre el que se aplique: el usuario que lo posee (u), otros usuarios del mismo grupo (g), otros usuarios que no están en el grupo del archivo (o) o todos los usuarios (a). Si no se especifica ninguno, se sobreentiende (a), pero los permisos establecidos por la máscara (umask) no se ven afectados.

El operador + se emplea para añadir un determinado modo al archivo, - se usa para quitarlo y = se usa para añadir los modos que se especifiquen eliminando los demás salvo que se trate de SETUID o SETGID.

Las letras rwxXstZ seleccionarán los permisos del usuario afectado: lectura (r), escritura (w), ejecución o permiso de búsqueda si se trata de un directorio (x), ejecución/búsqueda solo si se trata de un directorio o ya tiene permiso de ejecución para algún usuario (X), SETUID o SETGID en la ejecución (s), borrado restringido o "sticky bit" (t). En lugar de escribir una o más letras, puede indicar una de las letras ugo: las permisos del propietario del archivo (u), los permisos de los otros usuarios que pertenecen al mismo grupo que el archivo (g) y los permisos otorgados al resto de usuarios (o).

Un modo numérico consta de entre uno y cuatro dígitos octales (0-7), que se obtienen sumando los bits con los valores 4, 2 y 1. Los dígitos que faltan se consideran ceros y se colocan al incio. El primer dígito selecciona el ID de usuario configurado (4), el ID de grupo configurado (2), por último, los atributos de eliminación restringida o sticky bit (1). El segundo dígito selecciona los permisos para el propietario del archivo: leer (4), escribir (2) y ejecutar (1); el tercero selecciona permisos para otros usuarios en el grupo del archivo y el cuarto para otros usuarios que no están en el grupo del archivo, ambos con los mismos rangos de valores.

chmod no cambia los permisos de los enlaces simbólicos; la llamada de sistema chmod no puede cambiar sus permisos en la mayoría de sistemas, la mayoría ignoran los permisos de los enlaces simbólicos. Sin embargo, para cada enlace simbólico listado en la línea de órdenes, chmod cambiará los permisos del archivo apuntado. Por el contrario, chmod ignora los enlaces simbólicos que se encuentre durante el análisis recursivo de directorios. Las opciones que modifican este comportamiento se describen en la sección OPCIONES.

BITS SETUID Y SETGID
chmod borra el bit SETGID de un archivo normal si el ID de grupo del archivo no coincide con el ID de grupo efectivo del usuario o con uno de los ID de grupo al que también pertenezca el usuario . salvo que el usuario tenga los privilegios adecuados. Las restricciones adicionales pueden hacer que se ignoren los bits SETUID y SETGID de MODE o RFILE. Esto depende del comportamiento y de la funcionalidad de la llamada del sistema chmod subyacente. En caso de duda, compruebe el comportamiento del sistema subyacente.

En el caso de los directorios chmod conserva los bits SETUID y SETGID salvo que se especifique expresamente lo contrario. Puede establecer o borrar los bits usando modos simbólicos por ejemplo u + s y g-s. Para borrar estos bits de un directorio usando el modo numérico se requiere un cero inicial adicional como 00755, o un signo menos al inicio: -600, o un signo igual también al inicio: =755.

MARCA DE BORRADO RESTRINGIDO O STICKY BIT
La marca de eliminación restringida o sticky bit es un solo bit, cuya interpretación depende del tipo de archivo. En el caso de los directorios, su uso evitará que los usuarios sin privilegios eliminen o cambien el nombre de un archivo en el directorio a menos que sean propietarios del archivo o del directorio; esto se denomina marca de eliminación restringida para el directorio, y se encuentra comúnmente en directorios donde todos los usuarios tienen derecho de escritura como /tmp. Para archivos normales en algunos sistemas más antiguos, la presencia de este bit hará que se guarde la imagen del programa en el dispositivo de intercambio para que tarde menos en cargarse cuando se ejecute; esto se llama sticky bit (bit pegajoso).

OPCIONES

Cambia el modo de cada FICHERO a MODO. Con --reference, cambia el modo de cada FICHERO al de FICHERO-R.

-c, --changes
    como `verbose' pero informa solo si se hizo algún cambio

-f, --silent, --quiet
    suprime la mayoría de los mensajes de error

-v, --verbose
    muestra un mensaje por cada archivo procesado

--dereference
    afectan al referente de cada enlace simbólico, en lugar de hacerlo al propio enlace simbólico

-h, --no-dereference
    afecta a cada enlace simbólico en lugar de hacerlo al referente

--no-preserve-root
    no trata '/' de forma especial (predeterminado)

--preserve-root
    no opera recursivamente sobre '/'

--reference=R-ARCHIVO
    emplea el modo R-ARCHIVO en lugar de definir valores para el MODO. R-ARCHIVO siempre está derefrenciado si se trata de un enlace simbólico.

-R, --recursive
    cambia ficheros y directorios recursivamente

The following options modify how a hierarchy is traversed when the -R option is also specified. If more than one is specified, only the final one takes effect. -H is the default.

-H  si un argumento de la línea de órdenes es un enlace simbólico a un directorio, lo atraviesa

-L  atraviesa cualquier enlace simbólico a un directorio que se encuentre

-P  no ningún enlace simbólico

--help
    muestra la ayuda y finaliza

--version
    muestra la versión del programa y finaliza

Cada MODO es de la forma '[ugoa]*([-+=]([rwxXst]*|[ugo]))+|[-+=][0-7]+'.

AUTOR
Escrito por David MacKenzie y Jim Meyering.

INFORMAR DE ERRORES
Ayuda en línea de GNU Coreutils: <https://www.gnu.org/software/coreutils/>
Informe cualquier error de traducción a <https://translationproject.org/team/es.html>

COPYRIGHT
Copyright © 2025 Free Software Foundation, Inc. Licencia GPLv3+: GNU GPL versión 3 o posterior <https://gnu.org/licenses/gpl.html>.
Esto es software libre: usted es libre de cambiarlo y redistribuirlo. NO HAY GARANTÍA, en la medida permitida por la legislación.

VÉASE TAMBIÉN
chmod(2)

Ayuda en línea de GNU Coreutils: <https://www.gnu.org/software/coreutils/>
también disponible localmente ejecutando: info '(coreutils) chmod invocation'

TRADUCCIÓN
La traducción al español de esta página del manual fue creada por Gerardo Aburruzaga García <gerardo.aburruzaga@uca.es>, Juan Piernas <piernas@ditec.um.es> y Marcos Fouces <marcos@debian.org>

Esta traducción es documentación libre; lea la GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.

Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org.