10. Sistemas de Archivos en Linux

Sistemas de archivos

Los sistemas de archivos de Linux son:

ext4: Es el mas compatible y estable de todos. Es la evolución de ext3, ext2 y ext. Lo que hace que aunque sea muy estable sea un refrito de versiones anteriores.

XFS: Es antiguo pero mejor que ext4. Aunque no es un sistema de archivos de "nueva generación". Es mejor que ext4 porque no es un refrito de versiones anteriores.

Btrfs: Es es mas nuevo pero no tan estable. Hecho desde cero con nuevas ideas y características.

ZFS: Es el monstruo de los sistemas de archivos. Prácticamente nunca va tener límites y con características muy avanzadas. Su soporte en Linux es complicado debido a la licencia de uso. Se usa en sitios con muchísimos datos.Para ser usado en Linux se usa OpenZFS

ext4 debe se reemplazado y aun se debate si por XFS o Btrfs. El problema de Btrfs es que no es tan tan estable como debería ser ya que lo peor que puede pasar es que se pierdan los datos de un disco duro por ello los sistemas de archivos deben ser super fiables. Aunque otro problema de Btrfs es que Red Hat no quiere darle soporte. Y con XFS pasa que no es tan moderno como Btrfs aunque si mas estable.

Mas información:

Fedora considera Btrfs como sistema de archivos por defecto: De Julio de 2020

Sistemas de archivos: ¿Cual elegir para mis discos y particiones en Linux?

Understanding Linux filesystems: ext4 and beyond

Dispositivos en Linux

Son ficheros en Linux pero que hacen referencia a los dispositivos físicos. Es similar al directorio /proc.

/dev -> Contiene los dispositivos de la máquina.

sdα: Discos SATA

hdα: Discos duros IDE o PATA

hdαβ o sdαβ: Particiones de los discos duros

null: Dispositivo nulo. Todo lo que se envía a él se pierde.

fdβ: Disqueteras

ttyβ: Consolas

lpβ: Impresoras paralelas

mem: La memoria física

Siendo α una letra y β un número

En los siguientes ejemplos vamos a ver como se nombran cada partición y dispositivo

/dev/sda1 : La 1º partición del primer disco SATA

/dev/sda : Segundo disco SATA

/dev/sda2 : La 2º partición del primer disco SATA

/dev/null : Todo lo que se guarda en este fichero se pierde

/dev/fd1 : La 1º disquetera

/dev/mem: Si leemos o escribimos en este fichero, se lee o escribe en la RAM

Ordenes de Linux

fdisk

Para administrar las particiones en Linux se usa la orden fdisk.

Listar las particiones

sudo fdisk -l

Para crear o borrar particiones se usa fdisk nombre_dispositivo pero hay que seguir una serie de menús dentro de la aplicación. La explicación la puedes leer en Crear y eliminar particiones con fdisk en Linux.

administrar las particiones del disco /dev/sdc

sudo fdisk /dev/sdc

Las opciones mas útiles del menú de fdisk son:

m: Ayuda

w: Guardar y salir

q: Salir sin guardar

p: Imprime la tabla de particiones

d: Borrar una partición

n: Añade una partición

mkfs

Una vez creado las particiones hay que formatearlo En Linux se llama crear el sistema de archivos. Se usa la orden mkfs

Crear el sistema de archivos en la 2º partición de 3º disco

sudo mkfs.ext4 /dev/sdc2

mount

Una vez creada la partición y formateada , hay que montarla. Eso significa indicar a partir de que carpeta se tiene acceso a ese disco , ya que en Linux no existen las letras de las unidades como en Windows. Para ello se usa la orden mount.

Montar el dispositivo /dev/sdc2 en /mnt/peliculas

sudo mkdir /mnt/peliculas
sudo mount /dev/sdc2 /mnt/peliculas

/etc/fstab

La orden mount tiene el problema que cuando se reinicia el ordenador,hay que volver a montarlo . Para que sea de forma permanente hay que indicarlo en el fichero /etc/fstab

El fichero /etc/fstab tiene el siguiente formato de columnas:

Nombre del dispositivo

/dev/sda1

/dev/sdb2

Etc.

Directorio donde se montará

Sistema de archivos

ext4 : Para ext4

xfs : Para XFS

Etc.

opciones al montar. Lo normal es usar:

defaults: Para discos duros

noatime: Para discos SSD

Siempre un 0

El orden en que se comprueba el disco

1: Pra el disco principal

2: PAra el resto de disco

Añadir la siguiente línea a /etc/fstab hará que el disco /dev/sdc2 se monte siempre en /mnt/peliculas

/dev/sdc2 /mnt/peliculas ext4 defaults 0 2

Mas informacion:

orden fdisk: Listar particiones

Creating an ext4 File System

orden mount

Fichero /etc/fstab

Ejercicios

Ejercicio 1

A una máquina virtual de Linux, añade 2 nuevos discos de 5 GB

Lista todas particiones que hay en tu ordenador

Crear una partición nueva en cada uno de los nuevos discos

Formatea cada nuevo disco con ext4

Monta el primer nuevo disco con mount en /mnt/disco1 (Deberás crear el directorio "/mnt/disco1").

Escribe algo en él y comprueba que puedes leerlo

Configura en fstab para que se monte automáticamente el segundo nuevo disco en /mnt/disco2 y crea el directorio "/mnt/disco2"

Reinicia la máquina ahora

Comprueba que ya no está el fichero de /mnt/disco1

Compruena que ahora ya puedes escribir y leer en /mnt/disco2

Reinicia la máquina nuevamente

Compruena que sigue estando el fichero que creaste en /mnt/disco2