Por Paco Aldarias Raya
Por Paco Aldarias Raya
El linux (Unix) considera un fichero como cualquier cosa instalada, aquí se incluye teclado, terminal, cdrom, disquetera, carpetas remotas,etc.
Permite proteger la información de usuario del resto.
Un usuario sólo puede acceder a los ficheros q el es propietario y según los permisos q posea.
Desde consola hacemos:
$ ls -l
Nos aparecen cosas asi:
Veamos q es numerádolo:
drwxr-x-x(1) 5(2) jose(3) alumnos(4) 5000(5) Oct 30 13:47(6)
cartas(7)
Indican:
Permisos para ficheros normales:
Permisos para directorios:
En general, se da permiso de ejecución y lectura, cuando se quiera autorizar el acceso, y ninguno cuando se quiera denegar.
Si no se tiene el permiso necesario para realizar alguna acción, sale el mensaje de error:
"Permission denied"
Que permisos representa esto?
- r w x r - x r - x
Son 10 caracteres:
- r w x r - x r - x
0 1 2 3 4 5 6 7 8 9
Veamos q significan:
0: Fichero/Directorio
123: Propietario tiene rwx
456: Grupo tiene r - x
789: Otros tiene r - x
Cuando se deniega un permiso aparece un guión.
Ejercicio. Indicar su significado:
La forma general es:
Siendo:
El atributo +x equivale a a+x
Ejemplos:
Ejercicios:
Esto permite cambiar el grupo de usuarios a un fichero.
Ejemplo:
$ chgrp prog tabla.c (cambiamos el grupo a prog, del fichero
tabla.c)
$ chmod g+r tabla.c (cambiamos el los permisos del grupo para q
sea r)
$ ls -l tabla.c (vemos como ha quedado)
Sólo podremos cambiar el grupo de un fichero si somos el propietario de un fichero y miembros del grupo al que queremos asignarlo.
Forma general:
Podemos ver los grupos existentes siguiendo estos pasos:
su -
cat /etc/group
exit
Ejemplo. Hacemos q fihero.txt tenga como propietario alumno y
como grupo 1bach:
chown alumno.1bach fichero.txt
Sería equivalente poner:
chgrp 1bach fichero.txt
a:
chown .1bach fichero.txt
IMPORTANTE:
Sólo el usuario root puede cambiar el propietario de un
fichero
Ejemplo:
Ejercicios:
Su forma general es:
Siendo mascara tres números, correspondientes al propietario, grupo y otros.
Siendo:
usuario grupo otros
r w x r w x r w x
4 2 1 4 2 1 4 2 1
Ejemplo
chmod 763 fichero1
usuario= 7 = 4 + 2 + 1 = rwx
grupo = 6 = 4 + 2 = rw-
otros = 3 = 2 + 1 = -wx
Quedando los permisos como: r w x r w - w x
Ejercicios. Indicar q máscara tendrá:
Se debe considerar, que chmod puede usarse sin máscara o con máscara. Con máscara es más rápido.
Ejemplo.
Para el fichero3,
con estos permisos: - r w x r - x r - x
queremos q tenga estos: - r w x - w - - - -
Quitar permisos de r y x a otros y al grupo.
Dar permisos de escritura al grupo.
Seria sin máscara:
chmod og-rx fichero3
chmod g+w fichero3
Seria con máscara:
chmod 720 fichero3
Ejercicios:
Su forma general es:
Para determinar q permisos se otorgan por defecto, se restara el número 6 de cada uno de los dígitos de la máscara para saber que permisos se dan a los ficheros normales y el 7 para los directorios.
Ejemplo.
Por defecto, se usa: umask 022 corresponde 644 a los ficheros, y
755 para los directorios.
La máscara indica qué permisos no se dan. Así el 0, indica q se otorgan todos los permisos al propietario del fichero ( es decir, lectura y escritura, y de acceso y escritura para directorios).
Si se desea suprimir el acceso a nuestros ficheros al resto de usuarios, hariamos
umask 077
Por defecto los ficheros se crean con la mascara 644 y los directorios con 755.
La cifra 7 es esas posiciones indica q ni los miembros del grupo ni el resto de usuarios tendr n ningun permiso sobre los ficheros q creemmos desde q ejecutemos el comando umask.
La máscara se respeta si utilizamos el comando chmod, sin
asignar los permisos a ningún usuario. Es decir, el comando chmod
+x , sólo otorgaria permisos de ejecución al propietario del
fichero en el caso de q la mascara fuera 077.
Si se desea utilizar una máscara, se debera situar el comando
umask en los ficheros q definen el entorno del usuario al iniciar
la sesión (como .bashrc, .profile,..)
Los enlaces se utilizan para poder situar un mismo fichero en diferentes directorios o poder otorgarle diferentes nombres. sin q exista, en realidad, más q un único fichero.
Los enlaces son entradas en un directorio q apuntan a otro fichero.
Un uso habitual de los enlaces es el mantener varias versiones de un mismo programa. Por ejemplo, supongamos q tenemos dos versiones del programa tostador, llamadas tostador-1.0 y tostador-1.3. Queremos utilizar tostador-1.0. Para q al escribir tostador, se ejecute la versión 1.0, haremos un enlace de forma q tostador apunte a tostador-1.0, y sea ese el programa q se ejecute.
Para crear enlaces se utiliza en comando ln, asi:
Ejemplo: ln -s tostador-1.0 tostador
Veamos como queda el enlace:
$ls -l tostador*
lrwxrwxrwx 1 root 12 31 Oct 19:26 tostador -> tostador-1.0
-rwxrwxrwx 1 root 1000 15 Oct 19:26 tostador-1.0
-rwxrwxrwx 1 root 1000 30 Oct 19:26 tostador-1.3
Podemos ver q tostador apunta a tostador-1.0. También podemos ver q en el campo de permisos aparece una l (link)
Los permisos de enlace no significan nada, ya q siempre son los permisos del fichero q apunta.
Un enlace se borra de la misma forma q un fichero normal, es decir, con rm
Estos enlaces se llama simbólicos (simbolic links), de ahi q tegan q crearse con el parámetros -s. Los enlaces también pueden apuntar a directorios.
This document was generated using the LaTeX2 HTML translator Version 2K.1beta (1.48)
Copyright © 1993, 1994, 1995, 1996, Nikos Drakos,
Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics
Department, Macquarie University, Sydney.
The command line arguments were:
latex2html permisos -no_subdir -split 0
-local_icons 1 -show_section_numbers
The translation was initiated by Paco Aldarias on 2003-11-25