1. Cambiando permisos
Otro forma de representar los permisos posibles, la representación octal, que es
extremadamente útil a la hora de establecer nuevos permisos.
El comando chmod se emplea utilizando símbolos como a,u,g,o que representan a
todos (a "all"), al usuario (u), al grupo (g) y a todos los demás (o). Existen símbolos
para agregar (+) quitar (-) o dejar invariantes los permisos (=). Además tendrán
que usarse los símbolos característicos para cada tipo de permiso. Para el
permiso de lectura (r), para el permiso de escritura (w) y para el permiso de
ejecución (x). Solo el dueño del archivo puede cambiarlo con él; excepción del root
que también lo puede hacer. Para ejemplificar un cambio de permisos usaremos el
archivo lista.
[shrek@pantano:~]$ ls -l lista
total 1
-rwxrw-r-- 1 shrek user 337 Apr 29 13:57 lista
[shrek@pantano:~]$ chmod a-r lista
[shrek@pantano:~]$ ls -l lista
total 1
--wx-w---- 1 shrek user 337 Apr 29 13:57 lista
De esta forma se le ha sacado a todos los grupos y usuarios los permisos de
lectura. Algunos ejemplos más
[shrek@pantano:~]$ chmod u+r lista
[shrek@pantano:~]$ ls -l lista
total 1
-rwx-w---- 1 shrek user 337 Apr 29 13:57 lista
[shrek@pantano:~]$ chmod o+w lista
[shrek@pantano:~]$ ls -l lista
total 1
-rwx-w-w-- 1 shrek user 337 Apr 29 13:57 lista
[shrek@pantano:~]$ chmod og-w lista
[shrek@pantano:~]$ ls -l lista
total 1
-rwx------ 1 shrek user 337 Apr 29 13:57 lista
1) El archivo de configuración de colores para el comando ls para Linux está en
/etc/DIR_COLORS. Por lo que puedes modificarlo siempre que quieras.
2) Los colores más communes son: (RHEL 3.x/FCx/RH y otras linux distros)
* Archivos ejecutables: Verde
* Archivo normal: Normal (negro)
* Directorios o carpetas: Azul
* Enlace simbólico: Cyan
* Tubería: Amarillo
* Socket: Magenta
* Driver de dispositivo de bloques: Letra parpadeante amarilla negrita sobre fondo
2. negro
* Driver de dispositivo de caracter: Letra parpadeante amarilla negrita sobre fondo
negro
* syminks huérfanos: Letra parpadeante blanca negrita sobre fondo rojo
* Vínculos perdidos ( - y archivos a los que apuntan) : Letra parpadeante blanca
negrita sobre fondo rojo
* Archivos comprimidos : Rojo (.tar, .gz, .zip, .rpm)
* Archivos de imagen: Magenta (.jpg, gif, bmp, png, tif)
• Códigos de atributo:
o 00=ninguno
o 01=negrita
o 04=subrayado
o 05=parpadeante
o 07=inverso
o 08=oculto
• Códigos de color del texto:
o 30=negro
o 31=rojo
o 32=verde
o 33=amarillo
o 34=azul
o 35=magenta
o 36=cyan
o 37=blanco
• Códigos de color de fondo:
o 40=negro
o 41=rojo
o 42=verde
o 43=amarillo
o 44=azul
o 45=magenta
o 46=cyan
o 47=blanco
Por ejemplo para definer el color negrita azul a los directorios, debería introducirse
lo siguiente: DIR 01;34
6) Vamos a modificar el color del tipo Directorio en Red Hat (Fedora) Linux:
# vi /etc/DIR_COLORS
Modificar la entrada DIR
Desde:
DIR 01;34 # por defecto es azul negrita con fondo negro
3. A:
DIR 01;34;41 # El Nuevo color por defecto es azul negrita con fondo rojo
Guardar los cambios.
7) Haz un logout y logueate de nuevo, para comprobar si has definido la variable
del shell COLORS entonces usa ese archivo (use echo $COLORS para
encontrarlo).
Sistemas de archivos
Un sistema de archivos son los métodos y estructuras de datos que un sistema
operativo utiliza para seguir la pista de los archivos de un disco o partición; es
decir, es la manera en la que se organizan los archivos en el disco. El término
también es utilizado para referirse a una partición o disco que se está utilizando
para almacenamiento, o el tipo del sistema de archivos que utiliza. Así uno puede
decir “tengo dos sistemas de archivo” refiriéndose a que tiene dos particiones en
las que almacenar archivos, o que uno utiliza el sistema de “archivos extendido”,
refiriéndose al tipo del sistema de archivos.
La diferencia entre un disco o partición y el sistema de archivos que contiene es
importante. Unos pocos programas (incluyendo, razonablemente, aquellos que
crean sistemas de archivos) trabajan directamente en los sectores crudos del
disco o partición; si hay un archivo de sistema existente allí será destruido o
corrompido severamente. La mayoría de programas trabajan sobre un sistema de
archivos, y por lo tanto no utilizarán una partición que no contenga uno (o que
contenga uno del tipo equivocado).
Antes de que una partición o disco sea utilizada como un sistema de archivos,
necesita ser iniciada, y las estructura de datos necesitan escribirse al disco. Este
proceso se denomina construir un sistema de archivos.
La mayoría de los sistemas de archivos UNIX tienen una estructura general
parecida, aunque los detalles exactos pueden variar un poco. Los conceptos
centrales son superbloque, nodo-i, bloque de datos, bloque de directorio, y bloque
de indirección. El superbloque tiene información del sistema de archivos en
conjunto, como su tamaño (la información precisa aquí depende del sistema de
archivos). Un nodo-i tiene toda la información de un archivo, salvo su nombre. El
nombre se almacena en el directorio, junto con el número de nodo-i. Una entrada
de directorio consiste en un nombre de archivo y el número de nodo-i que
representa al archivo. El nodo-i contiene los números de varios bloques de datos,
que se utilizan para almacenar los datos en el archivo. Sólo hay espacio para unos
pocos números de bloques de datos en el nodo-i; en cualquier caso, si se
necesitan más, más espacio para punteros a los bloques de datos son colocados
de forma dinámica. Estos bloques colocados dinámicamente son bloques
indirectos; el nombre indica que para encontrar el bloque de datos, primero hay
que encontrar su número en un bloque indirecto.
4. Los sistemas de archivos UNIX generalmente nos permiten crear un agujero en un
archivo (esto se realiza con la llamada al sistema lseek(); compruebe su página de
manual), lo que significa que el sistema de archivos simplemente intenta que en
un lugar determinado en el archivo haya justamente cero bytes, pero no existan
sectores del disco reservados para ese lugar en el archivo (esto significa que el
archivo utilizará un poco menos de espacio en disco). Esto ocurre frecuentemente
en especial para pequeños binarios, librerías compartidas de Linux, algunas bases
de datos, y algunos pocos casos especiales. (los agujeros se implementan
almacenando un valor especial en la dirección del bloque de datos en el bloque
indirecto o en el nodo-i. Esta dirección especial indica que ningún bloque de datos
está localizado para esa parte del archivo, y por lo tanto, existe un agujero en el
archivo).
Sistemas de archivos soportados por Linux
Linux soporta una gran cantidad de tipos diferentes de sistemas de archivos:
Minix El más antiguo y supuestamente el más fiable, pero muy limitado en
características (algunas marcas de tiempo se pierden, 30 caracteres de longitud
máxima para los nombres de los archivos) y restringido en capacidad (como
mucho 64 MB de tamaño por sistema de archivos).
Xia Una versión modificada del sistema de archivos minix que eleva los límites de
nombres de archivos y tamaño del sistema de archivos, pero por otro lado no
introduce características nuevas. No es muy popular, pero se ha verificado que
funciona muy bien.
ext3 El sistema de archivos ext3 posee todas las propiedades del sistema de
archivos ext2. La diferencia es que se ha añadido una bitácora (journaling). Esto
mejora el rendimiento y el tiempo de recuperación en el caso de una caída del
sistema. Se ha vuelto más popular que el ext2.
ext2 El más sistema de archivos nativo Linux que posee la mayor cantidad de
características. Está diseñado para ser compatible con diseños futuros, así que las
nuevas versiones del código del sistema de archivos no necesitará rehacer los
sistemas de archivos existentes.
Ext Una versión antigua de ext2 que no es compatible en el futuro. Casi nunca se
utiliza en instalaciones nuevas, y la mayoría de la gente que lo utilizaba han
migrado sus sistemas de archivos al tipo ext2.
Reiserfs Un sistema de archivos más robusto. Se utiliza una bitácora que provoca
que la pérdida de datos sea menos frecuente. La bitácora es un mecanismo que
lleva un registro por cada transacción que se va a realizar, o que ha sido realizada.
Esto permite al sistema de archivos reconstruirse por sí sólo fácilmente tras un
daño ocasionado, por ejemplo, por cierres del sistema inadecuados.