|
|
|
|
Debian Última actualización | stable: 04/05/2013
testing: 22/05/2013
unstable: 22/05/2013
|
|
|
|
|
|
|
|
PERMISOS DE FICHEROS
(16061 lecturas)
Por Beatriz González
Zirtae
(http://minichica.blogspot.com)
Creado el 26/01/2003 14:39 modificado el 26/01/2003 23:59
|
Explicación de como cambiar los permisos de los ficheros en modo absoluto y modo octal. | Pagina1/1 |
INTERPRETAR LOS PERMISOS DE FICHEROS
Con la opcion ls -l se mostrará un listado <<largo>> de
los ficheros, el cual incluye los permisos de ficheros.
debian:/home/bea# ls -l atlantik-0.5.1
-rw-r--r-- 1 root root
0 ene 24 20:28 libXext.so.6.4
Donde:
El primer campo representa los permisos de ficheros. El tercer campo es el
propietario del fichero (Root), y el cuarto es el grupo al que pertenece
el fichero (Root).
Obviamente, el último campo es el nombre del fichero libXext.so.6.4.
Este fichero pertenece a root y al grupo root. Los permisos son los siguiente:
-rw-r--r--
El primer carácter de la cadena de permisos (-) representa el tipo
de fichero, donde - significa un fichero regula, y (d) se trata de un directorio.
Las siguientes tres letras (rw-) re presenta los permisos para el propietario
del fichero, que en este caso son de lectura y escritura (read(r) y rewrite(w))
Los siguientes tres caracteres (r--) representan los permisos para los miembros
del grupo, por lo tanto el grupo solo podrá leerlo.
Los últimos tres caracteres (r--) representan los permisos para cualquier
otro usuario del sistema, diferentes del propietario o de los pertenecientes
al grupo .
Otro ejemplo:
-rwxrwxrwx Todos los usuarios pueden leer, escribir y ejecutar el fichero.
DEPENDENCIAS
Es importante darse cuenta de que los permisos de un fichero también
dependen de los permisos del directorio en el que residen. Por ejemplo, aunque
un fichero tenga los permisos -rwxrwxrwx, otros usuarios no podrán
acceder a el a menos que también tengan permiso de lectura y ejecución
para el directorio en el cual se encuentra el fichero.
Es decir, para acceder a un fichero, debes tener permiso de ejecución
de todos los directorios a lo largo del camino de acceso al fichero, además
de permiso de lectura (o ejecución) del fichero en particular.
CAMBIOS DE PERMISO
El comando chmod se usa para establecer los permisos de un fichero. Solo
el propietario puede cambiar los permisos del fichero. La síntasis
de chmod es:
chmod {a, u, g, o}{+,-}{r,w,x} <filenames>
Con las opciones {a, u, g, o}, indicamos a que usuarios afecta: all, user,
group o other.
{+,-}: añadir o quitar permisos.
{r,w,x}: lectura, escritura o ejecucion.
Para hacer cambios de modo recursivo(-R) dentro de un directorio, es muy util la opcion +X, que dá permisos de ejecución únicamente a los directorios, sino no podríamos acceder a ellos.
A este modo de modificación se le llama modo absoluto, pero hay otro
modo, octal donde los valores son:
- Lectura: 4
- Escritura: 2
- Ejecución: 1
debian:/home/bea# ls -l atlantik-0.5.1
-rw-r--r-- 1 root root
0 ene 24 20:28 libXext.so.6.4
Este modelo tiene en modo octal: 644
- Usuario(rw)-> letura+escritura, es decir: 4+2=6
- Grupo(r)------>lectura, es decir------------------->4
- Para el resto(r)---------------------------------------->4
Juntandolo todo, en el mismo orden, 644
El cambio sería:
chmod 444 atlantik-0.5.1 ---> Da a todos los usuarios acceso de lectura
al fichero.
Fuentes:
Introducción Esware Linux
|
|
|
|
| Comentarios | 1. Re: PERMISOS DE FICHEROS (26/01/2003 17:41, #307) Por: Phantom (http://www.desktopgirls.com) |
| Muy buen artículo y muy útil.
Un saludote... | |
2. Re: PERMISOS DE FICHEROS (26/01/2003 23:01, #311) Por: Mxyzptlk (http://mxhome.no-ip.com) |
| Excelente artículo, sólo se te ha olvidado comentar que para hacer cambios de modo recursivo(-R) dentro de un directorio, es muy util la opcion +X, que dá permisos de ejecución únicamente a los directorios, sino no podríamos acceder a ellos. | |
3. Permisos de otras particiones. (26/01/2003 23:39, #314) Por: El cobarde anónimo |
| Ya que estamos con los permisos, haber su me aclarais una duda.
En mi Debian, tengo una particion FAT32 montada que uso como almacen (Para windows y linux), que he puesto para que se monte automaticamente. Desde root puedo leer y escribir perfectamente,no asi con los usuarios normales (solo leen), pero cuando cambio los permisos estos se quedan como estan. ¿Hay alguna forma dehacer que todos los usuarios puedean escribir?
He probado ha cambiar los parametros de fstab, pero no consigo nada.
Salu2 | |
4. Re: Permisos de otras particiones. (27/01/2003 00:13, #316) Por: kyle (http://linuca.org) |
| /dev/hda3 /mnt/win vfat root,exec,umask=0 0 0 <-- a lo bruto... (linea de fstab) Hay formas más finas de hacerlo; léete la pagina del man relativa a mount donde hablan de umask, uid y gid :-) | |
5. Re: Permisos de otras particiones. (27/01/2003 10:55, #318) Por: El cobarde anónimo |
| El sistema de ficheros FAT32 no admite cambios en los permisos. | |
6. Re: Permisos de otras particiones. (27/01/2003 19:52, #320) Por: El cobarde anónimo |
| si tienes la opción suid cambiala por nosuid, y si no añadela | |
7. Re: Permisos de otras particiones. (28/01/2003 00:01, #321) Por: El cobarde anónimo |
| ¡Que bien! ya me funciona, sois la bomba.
Salu2 | |
|
8. Re: PERMISOS DE FICHEROS (26/01/2003 23:51, #315) Por: Zirtae |
| Gracias Mx, ahora lo añado. | |
9. Re: PERMISOS DE FICHEROS (29/01/2003 14:35, #327) Por: El cobarde anónimo |
| También se puede comentar algo de los BITS setuid setgid... y ya que saco el tema .... ¿alguien más tiene este problema? En RedHat 8.0, y siendo ROOT, doy permisos de ejecución sobre un archivo de script de la forma:
-rwxrxsrwx 1 root root .... mi_script.sh
que lo único que hace es el scripr es:
#!/bin/bash
echo $UID
echo $EUID
después lo setuideo, (chmod a+s mi_script.sh)
-rwSrwSrwx 1 root root .... mi_script.sh
con lo cual, si un usuario NO root lo ejecuta, la salida debería ser algo así:
501
0
Sin embargo, lo que ocurre es:
501
501
¿alguien sabe algo? Gracias :) | |
10. Re: PERMISOS DE FICHEROS (31/01/2003 20:16, #333) Por: Prometeux (http://www.linuca.org) |
| mmmm , hace tiempo intente hacer algo parecido y me comenatron que bash no da soporte al cabio de id a 0 o root. No se bien como explicarlo, la cosa es que un user normal no puede adquierir id root en BASH, intente hacer un setuid en C y la cosa es que si funcionaba. Cosas del BASH. | |
11. Re: PERMISOS DE FICHEROS (02/01/2006 14:01, #4557) Por: guimi (http://guimi.net) |
Es el script el que se ejecuta con id 0, pero el usuario que lo ejecuta sigue siendo el 501 (p.e.)
Para que nos entendamos, el script con setuid "es root", pero el usuario que ha lanzado el script no lo es.
La salida de tu script es por tanto correcta. | |
|
|
|
|
|
|
| Tira ECOL |
|
|
|
|
|
|