Calculadora chmod
Convierte permisos de archivos Unix entre octal (755), letras (rwxr-xr-x), ls -l y cláusulas chmod, con una cuadrícula de casillas y los bits setuid, setgid y sticky.
Ejemplos de código
Copia estos ejemplos en tu propio proyecto. Cada uno usa solo la biblioteca estándar del lenguaje, así que no hay nada que instalar.
const mode = parseInt('755', 8)
const letters = [...'rwxrwxrwx'].map((letter, i) => (mode & (0o400 >> i) ? letter : '-'))
console.log(letters.join(''))Qué hace
Convierte permisos de archivos Unix entre octal (755), letras de permisos (rwxr-xr-x), una línea de ls -l y cláusulas de chmod (u=rwx,g=rx,o=rx). Marca la cuadrícula y cada notación se actualiza, incluidos los bits setuid, setgid y sticky.
Cómo se usa
- Escribe un modo en cualquier notación o marca las casillas.
- Léelo en cada notación y edita cualquiera de ellas.
- Copia el valor convertido o elige un tipo de archivo para ver la línea de
ls -lde un directorio o un enlace.
Ejemplos
755 es rwxr-xr-x: el propietario puede leer, escribir y ejecutar, y todos los demás pueden leer y ejecutar. 644 es rw-r--r--, el modo habitual de un archivo, y 1777 es rwxrwxrwt, un directorio compartido como /tmp.
Conviene saber
- Los dígitos suman lectura 4, escritura 2 y ejecución 1 para el propietario, el grupo y todos los demás. Un cuarto dígito delante añade setuid 4, setgid 2 y sticky 1.
- En letras, los bits especiales ocupan el lugar de la ejecución:
spara setuid y setgid,tpara sticky. UnaSoTmayúscula significa que el bit especial está activado sin el bit de ejecución. - Las cláusulas como
u=rwx,g=rx,o=rxfijan cada clase por completo, y una clase que ninguna cláusula nombra no tiene permisos. Las formas relativas comou+xno se leen aquí, porque dependen del modo actual de un archivo.
¿Qué significan los números de chmod?
Cada dígito suma lectura (4), escritura (2) y ejecución (1) para una clase: el primer dígito es el propietario, el segundo el grupo y el tercero todos los demás. Así, 755 significa que el propietario puede leer, escribir y ejecutar, y los demás pueden leer y ejecutar. Un cuarto dígito delante añade setuid (4), setgid (2) y sticky (1).
Preguntas frecuentes
¿Qué son setuid, setgid y el bit sticky?
Con setuid y setgid un programa se ejecuta con los permisos de su propietario o grupo en lugar de los de quien lo inicia. En un directorio, setgid hace que los archivos nuevos hereden el grupo, y el bit sticky (como en /tmp) permite que solo el propietario de un archivo lo borre. En letras son una s o una t en el lugar de la ejecución; una S o T mayúscula significa que el bit de ejecución no está activado.
¿Por qué 777 es una mala idea?
Permite que cualquier usuario del sistema cambie o reemplace el archivo. Da al propietario lo que necesita y al grupo o a los demás solo el acceso imprescindible: para scripts suele ser 755, para archivos privados 600.
¿Esta herramienta envía mi entrada a algún sitio?
No. Todo ocurre en tu navegador. Lo que escribes nunca se envía a nuestros servidores.