martes, 20 de septiembre de 2011

Permisos y atributos en linux,guia y uso ;)

Permisos y atributos de ficheros
Para ver que atributos de un fichero usamos :
#lsattr test.txt #-----------------e- test.txt
Para cambiar los atributos de un fichero usamos el comando chattr ,  los cambios de los atributos que podemos hacer con este comando son ( man chattr para ver un listado completo de modificadores ) :
a : desactiva el acceso al fichero excepto para añadir datos .
c : hace que el kernel comprima los datos del fichero y los descomprima cuando se vuelva a leer .
i : hace que el fichero no se pueda borrar , modificar , renombrar o crear enlaces simbólicos .
j : hace que el kernel registro los datos escritos en el fichero , lo que mejora la restauracion de perdida de datos .
A: hace que la hora de acceso del fichero no se modifique .
s: hace que el kernel ponga a cero los bloques de datos del fichero cuando se borra .
Por ejemplo :
#chattr +iA test.txt #lsattr test.txt #----i--A---------e- test.txt
Los bits de permisos de los ficheros mas comunes son los de control de acceso :  lectura , escritura y ejecución .
#-rw-r--r-- 1 root root 0 sep 17 16:11 test.txt
#drwxr-xr-x 2 root root 4096 sep 17 16:19 test
El primer caracter tiene un significado especial y determina como Linux interpreta el fichero :
- -> es un archivo normal d -> corresponde a un directorio l -> un enlace simbólico s -> un socket b -> un dispositivo ( discos duros, cd-roms, etc) c -> dispositivos de puerto paralelo puertos serie
El primer grupo de 3 caracteres controla el acceso al propiertario el segundo al grupo  y el tercero a otros .
r -> Permisos de lectura
w -> Persmisos de escritura
x -> Permisos de ejecución
Para determinar que permisos en forma octal tiene un fichero:
r = 22 = 4
w =21 = 2
x = 20 =1
Por ejemplo : Si el fichero tiene estos persmisos rwx  r-x  r-x lo sumamos de esta manera -> 421  4_1  4_1 = 7 5 5 .
Para cambiar los permisos de un fichero usaremos chmod :
#chmod 750 test.txt   ( Cambia los permisos del fichero de lectura y ejecucíon para el propietario y el grupo , el propietario tambien tiene permiso de escritura . )
Se puede modificar los permisos de los ficheros usando permisos usando un modo simbólico .
u =usuario g =  grupo o = otros a = todos
Alguno ejemplos :  
chmod ug+rwx test.txt
chmod ug=rw test.txt
chmod u-x,o+rw test.txt
Los bits de permisos especiales son tres  SUID , SGID Y Sticky Bit :
El SUID y el SGID interpretado por un "s"le indican a Linux que ejecute los ficheros con los permisos del propiertario del archivo y no el del usuario que ejecuta el programa . El SUID indica el usuario y el SGID el grupo .
El Sticky Bit interpretado por una "t" , cuando esta presente en un directorio hace que los ficheros que contenga ese directorio solo se puedan borrar por el propietarios de los mismos fichero  .
# chattr +st test.txt # lsattr test.txt # s---i--A-------t-e- test.txt
Saludos
http://www.habitacion511.eu/index.php/permisos-y-atributos-de-ficheros/

No hay comentarios:

Publicar un comentario