educación, informática y demás

2409 - Administración de sistemas de ficheros

Gestión de sistemas de ficheros en GNU/Linux

Instalar un nuevo disco duro

Vamos a instalar un nuevo disco duro de 100GB en nuestra máquina virtual para poder trabajar con él.

Creamos un nuevo disco duro

Creamos el nuevo disco duro dentro del directorio de la máquina virtual en cuestión, pero esta vez le vamos a dar un nombre diferente al fichero VDI: HD-Datos.vdi.

Una vez creado podemos añadirlo a la máquina virtual.

Observa cómo aparece el nuevo disco duro en la sección de almacenamiento conectado a la controladora SATA de nuestra máquina virtual.

Ahora ya tenemos el nuevo disco duro conectado a nuestro sistema para ampliar la capacidad de almacenamiento disponible en nuestro sistema.

Preparando el disco duro

Lanzamos la máquina virtual de Debian 12 y vamos a preparar el disco duro.

No está el disco duro… A ver, el disco duro si está conectado al sistema, pero no está «preparado» para ser utilizado. Vamos a ir paso a paso explicando el proceso de preparación y el por qué de cada uno de los pasos que vamos a ir dando.

El disco duro, ahora mismo, está sin MBR ni GPT no tiene tabla de particiones, no tiene particiones, no tiene nada… ¡está en blanco! Pero es un dispositivo periférico de almacenamiento que está conectado al equipo, por tanto podemos «verlo» desde el sistema operativo.

Para poder consultar y gestionar dispositivos periféricos de almacenamiento conectados a nuestro sistema vamos a utilizar fdisk. En este caso concreto vamos a ejecutar fdisk -l como administrador.

Vamos a echar un ojo a la página de manual de fdisk.

Manipula la tabla de particiones de disco. La opción -l permite listar.

Vamos a utilizar fdisk para crear una particion de 75 GB que utilizaremos en un sistema operativo GNU/Linux y vamos a crear una segunda partición de 25 GB que utilizaremos, más adelante, en un sistema operativo Windows con opciones de seguridad.

Lo primero que tenemos que hacer es crear de particiones, como no sabemos cómo hacerlo elegimos la opción m.

En el último bloque de opciones, tenemos la opción de crear una nueva tabla de particiones vacía.

Vamos a crear una tabla de particiones vacía en MBR.

Ahora vamos a crear una partición, de nuevo consultamos la ayuda.

Con la opción n vamos a crear las dos particiones que nos han solicitado. Comencemos por la partición de 75 GB.

Nos dice que se ha creado una nueva partición de 25 GB de tipo Linux.

No hemos elegido el tamaño de la partición, puesto que lo que nos quedaban eran 25GB libres después de haber creado la de 75GB.

Vaya… la segunda partición la queríamos para Windows, para sistemas de ficheros nativos de Microsoft. Así que tendremos que cambiar el tipo de partición.

Elegimos la opción t para cambiar el tipo de partición, seleccionamos la partición 2 y cómo no sabemos el código hexadecimal del sistema de ficheros de Microsoft a utilizar seleccionamos L para que nos los muestre.

Vamos a mostrar la tabla de particiones

Todo lo que hemos hecho está almacenado en memoria principal. Para que se guarde en el disco duro tenemos que elegir una opción de guardar.

Guardamos, salimos y que sea lo que Dios quiera…

Ahora ya podríamos usar las particiones, ¿no?. Hay que montarlas (ya te digo yo que no va a funcionar)

Como sabemos, y si no lo aprendemos ahora, para montar una partición en nuestro sistema de fichero raíz (/) tenemos que contar con un directorio. Lo que se hace al montar una partición es enlazar esa partición con un punto de montaje, que no es más que un directorio.

Vaya hombre… El problema está en que hemos creado la partición pero no hemos creado ningún sistema de ficheros que nos permita almacenar información en dicha partición.

Así que ahora, que ya hemos creado las particiones, vamos a crear los sistemas de ficheros.

Creando sistemas de ficheros

El comando para crear sistemas de ficheros es mkfs. Vamos a echar un vistazo a la página de manual.

Vamos a ver qué herramientas mkfs.<tipo> tenemos disponibles en nuestro sistema gracias al tabulador.

Vamos a crear el sistema de ficheros adecuado en cada una de las particiones creadas.

En /dev/sdb1 creamos un sistema de ficheros ext4

Ahora vamos a crear el sistema de ficheros NTFS en la segunda partición.

Tardará un poquito más, pero al final creará el sistema de ficheros.

Algunos detalles

  • Formatear consiste en crear un nuevo sistema de ficheros.
  • «Vamos a formatear el disco duro» Un disco duro no se formatea, se formatea una partición.
  • Cuando borramos ficheros, los datos no desaparecen del disco duro. La información de los ficheros borrados sigue en los sectores del disco duro que ocupaba este fichero. Con el paso del tiempo, acabarán desapareciendo porque, al estar marcados estos sectores como libres, el sistema operativos se los asignará a otros ficheros nuevos o ficheros que crezcan.

Montando sistemas de ficheros

En los sistemas operativos de tipo Unix no existen las unidades lógicas como en los sistemas de Microsoft. Estamos acostumbrados a utilizar este tipo de nomenclatura para identificar particiones, o mejor dicho sistemas de ficheros: C: o D:.

En los sistemas Unix todo está dentro de una única jerarquía de directorios con un solo directorio raíz: /. Si queremos acceder a un sistema de ficheros que está almacenado en una partición de una memoria secundaria o auxiliar, tenemos que montar primero este sistema de ficheros en un directorio de nuestra jerarquía de directorios. Esto suena muy lioso, pero es sencillo.

Nosotros queremos acceder a la partición de 75 GB con sistema ext4 que acabamos de crear, así que lo primero que tenemos que hacer es crear un punto de montaje. Como ya hemos mencionado unos párrafos atrás, un punto de montaje no es más que un directorio al que vamos a enlazar un sistema de ficheros que está en una memoria secundaria o auxiliar.

Antes de crear el punto de montaje como administradores deberíamos pensar para qué vamos a usar este sistema de ficheros y quienes lo van a usar. En nuestro caso práctico, vamos a suponer que queremos almacenar en esta partición proyectos que serán accesibles para todos los usuarios. Así que, vamos a crear el punto de montaje en / con el nombre proyectos.

Hemos creado el punto de montaje y hemos motando la primera partición del segundo disco duro SATA en él.

¿Cómo comprobamos que todo ha funcionado? Podemos ejecutar el comando mount sin pasar parámetro para que muestre información de los sistemas de ficheros montados.

También podemos utilizar un comando precioso que nos sirve para comprobar el espacio en disco disponible y utilizado en los sistemas de ficheros montados en nuestro sistema. Este comando df con la opción -h preferiblemente.

Vamos a ver la ayuda

Vamos a preguntar solo por /dev/sdb1

Hmmm… pero solo los que están montados!!

Una vez montado el sistema de ficheros podemos acceder a él.

Vamos a crear un directorio publico dentro de proyectos y vamos a configurarlo para que cualquier usuario del sistema pueda escribir.

Vamos a crear un fichero llamado saludo.txt dentro de publico.

Desmontando sistemas de ficheros

Una vez hemos terminado de trabajar con el sistema de ficheros de una partición podemos desmontarlo. Para ello, utilizamos el comando umount.

Tenemos que salirnos del directorio /proyectos que es el punto de montaje.

¿Habrá funcionado? Vamos a comprobarlo.

¿Y qué ha pasado con el directorio?. El directorio sigue creado, es más lo hemos creado expresamente para esto y esta vacío.

Cuidado, porque todo lo que esté almacenado en un punto de montaje, en este caso /proyectos, una vez montemos el sistema de ficheros en él, dejará de estar accesible, pero seguirá en el disco duro.

Vamos a montar de nuevo /dev/sdb1 en /proyectos.

Los ficheros están dentro del directorio /proyectos que se almacena en el sistema de ficheros /. Al montar un sistema de ficheros externo, mientras esté montado, esos ficheros no están accesibles, pero siguen almacenados en el sistema de fichero original.

Montaje automático de sistemas de ficheros

Todo lo que hemos hecho de montar y desmontar sistemas de ficheros está genial, pero es temporal. Es decir, si tenemos un sistema de ficheros montado en /proyectos con el comando mount, cuando reiniciemos el sistema dejará de estar montado. Tendríamos que montarlo manualmente de nuevo.

Para evitar este problema, en caso de que queramos que se monte el sistema de ficheros de forma automática, podemos editar el fichero de configuración /etc/fstab.

Primero mostramos el contenido del fichero

Ahora vamos a mostrar solo la configuración sin comentarios.

Vamos a editar el fichero con permisos de administrador y vamos a añadir una entrada para que se monte de forma automática /dev/sdb1 en /proyectos.

Esto funciona, pero no es recomendable. Vamos a ver si funciona.

Vamos a arreglar la configuración ejecutando blkid

Cambiamos la entrada

Guardamos y probamos que funciona.

Ahora vamos a reiniciar.

Se ha montado automáticamente después de reiniciar.

Dejar una respuesta