educación, informática y demás

2311 - Sistemas heterogeneos

Aumentando la capacidad de almacenamiento en GNU/Linux

Tenemos ya montado nuestro servidor con ciertos servicios para la organización, como son SMB/CIFS y HTTP. Sin embargo, nos damos cuenta que para el siguiente paso que queremos dar nos hemos quedado cortos en capacidad de almacenamiento en disco. Necesitamos más capacidad de almacenamiento para el servicio de hosting que queremos implementar.

Podemos utilizar la herramienta df para mostrar información de ocupación de los sistemas de ficheros disponibles.

Vamos a ver cuanto tenemos realmente

Nos gustaría contar con 100GB para hosting de sitios webs. Para llevar a cabo este caso práctico podemos consultar la información sobre Ampliar espacio en disco en sistemas Unix-Like.

Instalar un nuevo disco duro

Lo primero que necesitamos es añadir un nuevo disco duro a nuestro sistema. Para ello iremos a la tienda, compraremos un disco de 100GB y lo instalaremos físicamente en nuestra máquina.

En el contexto de virtualización con el que estamos trabajando esto se reduce a añadir un nuevo disco duro virtual reservado dinámicamente de 100GB que llamaremos HD-Hosting.vdi y almacenaremos en el mismo directorio en el que está almacenada la máquina virtual SSOO – Debian 12 CLI Pruebas

Como es lógico, al menos en el mundo real, no podemos instalar una unidad de disco duro con el sistema encendido (salvo excepciones, como dispositivos hot plug).

Apagamos el sistema Debian 12 CLI

Ahora insertamos el nuevo disco duro haciendo clic en añadir y después en Crear en el cuadro de dialogo de Selector de disco duro

Configuramos las características del disco duro.

Lo seleccionamos

Ya tenemos el nuevo disco duro en la máquina.

¡Ojo! Es importante que el disco duro de hosting esté detrás del disco duro dónde tenemos el sistema operativo para que el orden de arranque funcione como se espera.

Entramos en el sistema y continuamos.

Configurando el disco duro: particiones y sistemas de ficheros

El disco duro está sin particionar y, por tanto, sin ningún sistema de ficheros. Lo primero que tenemos que hacer es crear la tabla de particiones y crear una única partición de 100GB con sistema de ficheros ext4.

Primero vamos a mostrar todos los sistemas de ficheros conectados a nuestro sistema utilizando el comando fdisk. Si no recuerdas como funciona consulta la página de manual.

Con fdisk podemos gestionar la tabla de particiones de un disco, pero también podemos mostrar información de las tablas de particiones de las unidades de almacenamiento masivo conectadas a nuestro sistema con la opción -l.

Vamos a mostrar información de todos los dispositivos de almacenamiento (discos duros) conectados a nuestro sistema.

El disco duro que acabamos de instalar es /dev/sdb, lo cual tiene sentido, puesto que es el segundo disco duro SATA/SCSI/USB conectado al sistema.

Creando la partición de 100 GB

Vamos a editar la tabla de particiones del disco duro /dev/sdb. Para ello le pasamos por parámetro a fdisk el fichero de dispositivo del segundo disco duro SATA: /dev/sdb

Necesitamos crear un MBR así que consultamos la ayuda.

Creamos un nuevo MBR y después crearemos una nueva partición.

Ahora creamos una nueva partición primaria que ocupará todo el espacio de disco.

Añadimos la nueva partición siguiendo el asistente.

Una vez creada la partición podríamos mostrar la tabla de particiones actual y después salir guardando los cambios. Consultamos la ayuda para ver los comandos

Mostramos la tabla de particiones

Guardamos la tabla de particiones

Vamos a mostrar la tabla de particiones con fdisk -l /dev/sdb para estar completamente seguros de que todo ha ido bien.

Con esto lo único que hemos hecho es crear un MBR y editar la tabla de particiones, es decir reservar un espacio de disco para una partición. No obstante, no hemos creado un nuevo sistema de ficheros en esa partición.

Creando un sistema de ficheros ext4

Vamos a crear un sistema de ficheros ext4 en la partición /dev/sdb1 que acabamos de crear. Para ello utilizaremos el comando mkfs, en concreto el comando mkfs que permite crear sistemas de ficheros ext4.

Podríamos utilizar mkfs -t ext4 /dev/sdb1 sin embargo, como sabemos que mkfs llamará al comando mkfs.ext4 lo usaremos directamente.

Ahora ya tenemos un sistema de ficheros en una partición que podemos montar en nuestro sistema de ficheros raíz.

Montando el sistema de ficheros

Nos gustaría montar el sistema de ficheros en el directorio /educatica/hosting para poder guardar en ese nuevo sistema de ficheros con una capacidad de 100 GB todos los ficheros de hosting web que tengamos en el servidor.

Para ello tendremos que crear el directorio /educatica/hosting si no existe. Este será el punto de montaje, es decir el directorio con el que enlazaremos o montaremos el sistema de ficheros de 100 GB.

Vamos a añadir un pequeño fichero leeme.txt al directorio /educatica/hosting con información sobre el uso de este directorio.

Vamos a montar el sistema de ficheros en /dev/sdb1 en el directorio /educatica/hosting. Para ello utilizaremos el comando mount. Si no recordamos como se utiliza, consultaremos su página de manual.

Para montar un sistema de ficheros tenemos que pasar por parámetro a mount el dispositivo y el punto de montaje.

Como no muestra ningún mensaje, parece que habrá funcionada. Vamos a comprobarlo ejecutando el comando mount sin ningún parámetro.

Hay mucha información.. vamos a filtrarla mostrando solo aquellas líneas en las que aparezca /dev/sd

Mostramos el contenido del directorio /educatica/hosting a ver que contiene.

El fichero leeme.txt ya no está. Realmente, si está almacenado en el sistema de ficheros de /dev/sda1, es decir en el sistema de ficheros principal. Al haber montado el nuevo sistema de ficheros en este punto de montaje, no se muestra el contenido del directorio con el mismo nombre en el sistema de ficheros principal.

Vamos a ver la capacidad de almacenamiento que tenemos.

Esta guay, ¡ya funciona!. Vamos a crear un directorio dentro de /educatica/hosting con el nombre ftp que usaremos más adelante.

Supongamos que termina el día y te vas a casa, apagando el servidor por motivos de mantenimiento.

Encendemos el sistema y…

El sistema de ficheros en /dev/sdb1 no está montado en el sistema. Esto es así, porque utilizamos el comando mount para montar el sistema de ficheros en el punto de montaje de forma temporal

Montaje estático sistemas de ficheros

Para configurar nuestro sistema para que monte automáticamente sistemas de ficheros en puntos de montaje durante el arranque utilizaremos el fichero /etc/fstab. Podemos consultar la página de manual de fstab para conocer más sobre el fichero.

Vamos a ver el contenido del fichero de configuración /etc/fstab

Tenemos que utilizar blkid para obtener el UUID del sistema de ficheros que queramos montar, después indicamos la ruta del punto de montaje seguida del tipo de sistema de ficheros y de opciones.

Vamos a ver la configuración real de este fichero sin comentarios

Vamos a utilizar blkid para obtener el UUID del sistema de ficheros que queremos montar

Vamos a consultar la página de manual de blkid.

Busquemos si hay una opción que solo muestre el UUID.

Añadimos el UUID al fichero /etc/fstab

Ahora editamos el fichero y añadimos la información de configuración.

Vamos a ver si funciona. Para ello podemos usar el comando mount, indicando solamente la ruta del directorio. Si está bien configurado montará el sistema de ficheros automáticamente en el punto de montaje.

Si reiniciamos el sistema….

Ya hemos configurado el sistema para ampliar su capacidad de almacenamiento en 100 GB y dar soporte a hosting.

Dejar una respuesta