CAMBIO DE LAS CADENAS DE PERMISO


Para alterar los permisos de un fichero, UNIX provee la intrucción chmod. Este comando reconoce dos tipos de sintaxis: una basada en cadenas mnemónicas expresando modificaciones (más intuitiva) y otra basada en combinaciones en base octal (más potente).

La sintaxis para el primer caso es:

chmod quién op permiso [[op2 permiso2]...] fichero

dónde

Así, por ejemplo:

chmod g -r fichero
quitará permiso de lectura para la clase g (grupo) y dejar  el resto de los permisos inalterados

chmod +x fichero
hará ejecutable un fichero para todo el universo y

chmod ug +x fichero
lo hará sólo para el usuario y su grupo.

La segunda sintaxis del comando, aunque más compleja, permite cambiar de un sola y breve vez todos los permisos de un fichero: si se trata por separado cada uno de los grupos de usuario, se encontrará 3 bits de permiso para cada uno. Con 3 bits podrán expresarse hasta 8 combinaciones, desde 000 hasta 111. Así, se puede expresar por un dígito octal los permisos de cada grupo.

Por poner un ejemplo:
Supongamos que se desea que todo el universo pueda leer un fichero pero sólo el propietario pueda modificarlo. La estructura de permisos será:

u (rw), g(r), o(r)

Es decir

rw- r-- r--

o lo que es lo mismo

110 100 100

que en octal será

644

Por tanto, habrá que teclear:

chmod 644 fichero