Linux soporta una gran
cantidad de tipos diferentes de sistemas de archivos. Para nuestros propósitos
los más importantes son:
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.
Adicionalmente, existe
soporte para sistemas de archivos adicionales ajenos, para facilitar el
intercambio de archivos con otros sistemas operativos. Estos sistemas de
archivos ajenos funcionan exactamente como los propios, excepto que pueden
carecer de características usuales UNIX , o tienen curiosas limitaciones, u
otros inconvenientes.
msdos
Compatibilidad con el
sistema de archivos FAT de MS-DOS (y OS/2 y Windows NT).
umsdos
Extiende el dispositivo de
sistema de archivos msdos en Linux para obtener nombres de archivo largos,
propietarios, permisos, enlaces, y archivos de dispositivo. Esto permite que un
sistema de archivos msdos normal pueda utilizarse como si fuera de Linux,
eliminando por tanto la necesidad de una partición independiente para Linux.
vfat
Esta es una extensión del
sistema de archivos FAT conocida como FAT32. Soporta tamaños de discos mayores
que FAT. La mayoría de discos con MS Windows son vfat.
iso9660
El sistema de archivos
estándar del CD-ROM; la extensión popular Rock Ridge del estándar del CD-ROM
que permite nombres de archivo más largos se soporta de forma automática.
nfs
Un sistema de archivos de
red que permite compartir un sistema de archivos entre varios ordenadores para
permitir fácil acceso a los archivos de todos ellos.
smbfs
Un sistema de archivos que
permite compartir un sistema de archivos con un ordenador MS Windows. Es
compatible con los protocolos para compartir archivos de Windows.
hpfs
El sistema de archivos de
OS/2.
sysv
EL sistema de archivos de
Xenix, Coherent y SystemV/386..
La elección del sistema de
archivos a utilizar depende de la situación. Si la compatibilidad o alguna otra
razón hacen necesario uno de los sistemas de archivos no nativos, entonces hay
que utilizar ése. Si se puede elegir libremente, entonces lo más inteligente
sería utilizar ext3, puesto que tiene todas las características de ext2, y es
un sistema de archivos con bitácora.
Existe también el sistema
de archivos proc, generalmente accesible desde el directorio /proc, que en
realidad no es un sistema de archivos, aun cuando lo parece. El sistema de
archivos proc facilita acceder a ciertas estructura de datos del núcleo, como
la lista de procesos (de ahí el nombre). Hace que estas estructuras de datos
parezcan un sistema de archivos, y que el sistema de archivos pueda ser
manipulado con las herramientas de archivos habituales. Por ejemplo, para
obtener una lista de todos los procesos se puede utilizar el comando
$ ls -l /proc
total 0
dr-xr-xr-x 4 root root 0 Jan 31 20:37 1
dr-xr-xr-x 4 liw users 0 Jan 31 20:37 63
dr-xr-xr-x 4 liw users 0 Jan 31 20:37 94
dr-xr-xr-x 4 liw users 0 Jan 31 20:37 95
dr-xr-xr-x 4 root users 0 Jan 31 20:37 98
dr-xr-xr-x 4 liw users 0 Jan 31 20:37 99
-r--r--r-- 1 root root 0
Jan 31 20:37 devices
-r--r--r-- 1 root root 0
Jan 31 20:37 dma
-r--r--r-- 1 root root 0
Jan 31 20:37 filesystems
-r--r--r-- 1 root root 0
Jan 31 20:37 interrupts
-r-------- 1 root root 8654848
Jan 31 20:37 kcore
-r--r--r-- 1 root root 0
Jan 31 11:50 kmsg
-r--r--r-- 1 root root 0
Jan 31 20:37 ksyms
-r--r--r-- 1 root root 0
Jan 31 11:51 loadavg
-r--r--r-- 1 root root 0
Jan 31 20:37 meminfo
-r--r--r-- 1 root root 0
Jan 31 20:37 modules
dr-xr-xr-x 2 root root 0 Jan 31 20:37 net
dr-xr-xr-x 4 root root 0 Jan 31 20:37 self
-r--r--r-- 1 root root 0
Jan 31 20:37 stat
-r--r--r-- 1 root root 0
Jan 31 20:37 uptime
-r--r--r-- 1 root root 0
Jan 31 20:37
version
$
(Puede haber no obstante
algunos archivos adicionales que no correspondan con ningún proceso. El ejemplo
anterior se ha recortado.)
Tenga en cuenta que aunque
se llame sistema de archivos, ninguna parte del sistema de archivos proc toca
el disco. Existe tan sólo en la imaginación del núcleo. Cuando alguien intenta
echar un vistazo a alguna parte del sistema de archivos proc, el núcleo hace
que parezca como si esa parte existiera en alguna parte, aunque no lo haga.
Así, aunque exista un archivo /proc/kcore de muchos megabytes, no quita espacio
del disco.
0 comentarios:
Publicar un comentario