Mas de alguna vez habran visto guias explicando cosas como:
Ahora escribimos chmod 755 o umask 022 asignando permisos a archivos o directorios, o hasta en las configuraciones de FSTAB o servidores FTP, si bien funciona, no siempre sabemos que cresta estamos haciendo con estos numeros, asi que voy a explicar que quiere decir esto.
CHMOD
Primero hay que tener claro que cada lugar ocupado por las cifras corresponde a permisos que voy a dar a usuarios especificos:
Como se puede ver en la figura, la primera cifra corresponde al permiso que le voy a dar al usuario dueño del archivo o carpeta, la segunta cifra corresponde a los permisos que asignare al grupo del usuario dueño y la tercera cifra corresponde a los permisos para otros usuarios
Equivalencia a valores numericos
Esto es bastante simple, Tenemos permiso de LECTURA ESCRITURA y EJECUCION, y cada uno de ellos tiene un valor numerico:
LECTURA=4
ESCRITURA=2
EJECUCION=1
PROHIBIDO=0
Entiendase escritura como permisos para escribir, borrar, crear directorios, modificar, renombrar, sobreescribir, etc
————————–
Asignando Permmisos
Si se fijan la suma de 4+2+1= 7, por ende, es cosa de ver que permisos quiero dar a un archivo y luego sumar los valores correspondientes, ejemplo:
chmod 444 ARCHIVO
Al aplicar ese CHMOD, estoy dandole permisos de lectura al dueño del archivo, al grupo y a los demas usuarios.
Al aplicar chmod 744 ARCHIVO , estoy dando todos los permisos al dueño del archivo, pero a la vez, permisos de solo lectura al grupo y a los otros usuarios.
NOTA: Al usar CHMOD, el valor 0 no debe usarse, solo los valores 4,2 y 1 y los resultantes de las sumas de ellos
——————————
UMASK
Umask funciona igual que chmod, solo cambian los valores, ya que para saber que valor asignar primero hay que saber los valores chmod y luego restarselos a 7, ejemplo:
chmod 755 = umask 022
Si se fijan, al sumar la primera chmod con la primera umask, nos da 7, las segundas y las terceras tambien.
755
022+
————-
777
Asi de simple, por lo que ven, suabiendo el valor que se le asigna al chmod, sabemos inmediatamente la equivalencia umask restando a 7 el valor chmod.
PD: Agradecimientos a profesor Francisco Prieto Rossi, Inacap Valpo, por darse la molestia de explicarme esto XD
Se agradecen los aportes
El comando umask, se usa para cambiar los permisos de archivos y/o directorios que se crearan a futuro, en cambio chmod trabaja sobre archivos y/o directorios ya creados.
Saludos
Umask 777 corresponderia a un chmod 000, osea prohibir los permisos al usuario, grupo y otros ¿Que sentido tendria hacer eso? 😉
lo del permiso 777 no es tan cierto, ya que es imposible dar ese permiso con umask, eso pasa por un tema de las conversiones a nivel de bits.
taa medio viejo el asunto, pero porsiacaso lo lees xD
saludos