Linux-Mandrake: Manual de Referencia | ||
---|---|---|
Anterior | Capítulo 3. Introducción a la línea de comandos | Siguiente |
La serie de comandos que se presentan aquí se usan para cambiar el dueño o el grupo propietario de un archivo o sus permisos. En el capítulo Conceptos básicos de Unix del Guía del Usuario vimos los diferentes permisos.
La sintaxis del comando chown (CHange OWNer, cambiar el dueño) es la siguiente:
chown [opciones] <usuario[.grupo]> <archivo|dir.> [archivo|dir. ...] |
Las opciones incluyen:
-R: "Recursivo"; para cambiar el dueño de todos los archivos y sub-directorios en un directorio dado.
-v Modo "verboso"; muestra todas las acciones efectuadas por chown; reporta cuales archivos cambiaron de dueño como resultado del comando y cuales no han cambiado.
-c Como -v, pero sólo reporta cuales archivos cambiaron.
Algunos ejemplos:
chown nobody /shared/book.tex cambiar el dueño del archivo /shared/book.tex a nobody.
chown -Rc amidala.musica *.mid conciertos/: atribuye todos los archivos en el directorio actual cuyos nombres terminan con .mid y todos los archivos y sub-directorios del directorio conciertos/ al usuario amidala y al grupo musica, reportando sólo los archivos afectados por el comando.
El comando chgrp (CHange GRouP, cambiar el grupo) le permite cambiar el grupo propietario de un archivo o un grupo de archivos; su sintaxis es muy similar a la del comando chown:
chgrp [opciones] <grupo> <archivo|dir.> [archivo|dir. ...] |
chgrp disk /dev/hd* |
El comando chmod (CHange MODe, cambiar el modo) tiene una sintaxis bien particular. La sintaxis general es:
chmod [opciones] <cambio de modo> <archivo|dir.> [archivo|dir. ...] |
pero lo que lo distingue son las diferentes formas que puede tomar el cambio de modo. Este se puede especificar de dos maneras:
en octal; entonces los derechos del usuario dueño se corresponden con números de la forma <x>00, donde <x> corresponde al permiso asignado: 4 para lectura, 2 para escritura, y 1 para ejecución; similarmente, los derechos del grupo propietario toman la forma <x>0 y los derechos de los "otros" la forma <x>. Por lo tanto, todo lo que Ud. necesita hacer es sumar los derechos asignados para obtener el número correcto. Por lo tanto, los derechos rwxr-xr-- corresponden a 400+200+100 (derechos del dueño, rwx) +40+10 (derechos del grupo propietario, r-x) +4 (derechos de los otros, r--) = 754; de esta forma, los derechos se expresan en términos absolutos. Esto significa que los derechos previos se reemplazan incondicionalmente;
con expresiones: aquí los derechos se expresan con una secuencia de expresiones separadas por comas, donde una expresión toma la forma [categoría]<+|-><permisos>.
La categoría puede ser una o más de:
u (User, Usuario, permisos para el dueño),
g (Group, Grupo, permisos para el grupo propietario) u
o (Others, Otros, permisos para los "otros").
Si no se especifica categoría alguna, los cambios se aplican para todas las categorías. Un + garantiza un permiso y un - lo niega y un = lo garantiza. Finalmente, el permiso es uno o más de:
r (Read, lectura),
w (Write, escritura) o
x (eXecute, ejecución).
Las opciones principales son bastante similares a las de chown o chgrp:
-R: cambiar los permisos recursivamente.
-v: modo "verboso", muestra las acciones efectuadas para cada archivo.
-c: como -v pero solo muestra los archivos afectados por el comando.
Ejemplos:
chmod -R o-w /shared/docs: quitar, recursivamente, el permiso de escritura para los "otros" sobre todos los archivos y sub-directorios de /shared/docs/.
chmod -R og-w,o-x privado/ Quitar, "recursivamente", el permiso de escritura para el grupo propietario y para los "otros" sobre todo el directorio privado/, y quitar el permiso de ejecución para los "otros".
chmod -c 644 varios/archivo* cambia los permisos de todos los archivos del directorio varios/ cuyos nombres comiencen con archivo a rw-r--r-- (es decir, permiso de lectura para todos y permiso de escritura solo para el dueño), y reporta solo los archivos afectados por la operación.