Cómo crear un ramdisk en Linux

Cómo crear un ramdisk en Linux
Un ramdisk es un espacio de almacenamiento volátil definido en la memoria de RAM. El uso de esta característica aumenta el rendimiento del procesamiento de archivos diez veces en los mejores discos duros SSD. Implementar un Dramdisk es muy ventajoso para los usuarios cuyas tareas requieren cantidades significativas de recursos de hardware. Además, los editores y jugadores de medios pueden disfrutar de esta implementación.

Un ramdisk es un espacio volátil, toda la información almacenada en él se perderá si el dispositivo se apaga o se reinicia.

En Linux, RamDisks se puede crear utilizando el Muntor de comandos y los sistemas de archivos TMPFS y RAMFS. Este tutorial muestra cómo crear un ramdisk en Linux usando ambos.

TMPFS y RAMFS:

TMPFS: TMPFS es un sistema de archivos temporal almacenado en la memoria RAM (y/o la memoria de intercambio). Especificando este sistema de archivos con el argumento -T del comando montar, Puede asignar recursos de memoria limitados a un sistema de archivos temporal. Como resultado, las aplicaciones almacenadas en este sistema de archivos funcionarán varias veces más rápido de lo que lo harían en los dispositivos de almacenamiento convencionales, incluidos los dispositivos CSSD.

RAMFS: RAMFS es similar a TMPFS, pero el usuario no puede garantizar un límite, y el recurso asignado crece dinámicamente. Si el usuario no controla el consumo de RAMFS, RAMFS seguirá usando toda la memoria hasta colgar o bloquear el sistema.

TMPFS vs. RAMFS: No hay una diferencia notable entre el rendimiento de TMPFS y su predecesor RAMFS. La razón detrás de RAMFS reemplazada por TMPFS es el riesgo de consumo de RAM ilimitado por RAMF que puede conducir a un bloqueo del sistema.

Otra ventaja de TMPFS sobre RAMFS es la capacidad de usar el espacio de intercambio, mientras que las RAMF se limitan a la memoria de hardware.

Cómo crear un ramdisk en Linux usando TMPFS:

Primero, veamos la memoria gratuita que podemos usar antes de crear un punto de montaje TMPFS. Para verificar la RAM y el intercambio disponibles, puede usar el comando gratuito. Para imprimir los resultados en gigabytes, puede agregar el argumento -giga, como se muestra en el siguiente ejemplo:

GRATIS -Giga

Como puede ver en la salida anterior, tengo dos GB físicos y dos en el espacio de intercambio.

Ahora, cree un punto de montaje en el directorio /MNT Usando el comando mkdir Como se muestra en el ejemplo a continuación. La elección del nombre del punto de montaje es arbitrario. Si va a usar el Ramdisk para una aplicación específica, puede nombrar el punto de montaje después de él. En el ejemplo a continuación lo llamo /mnt/tmp:

sudo mkdir /mnt /tmp

Ahora puede crear el ramdisk usando el comando de montaje. El siguiente ejemplo muestra cómo crear una ramdisk usando TMPFS en 2GB RAM/Swap, en el punto de montaje/MNT/TMP.
El argumento -t (tipo) permite especificar el sistema de archivos (en este caso, TMPFS). El argumento -o (opciones) se usa para definir el espacio para el ramdisk.

Monte -T tmpfs -o size = 2g tmpfs /mnt /tmp

El ramdisk se creó en /mnt /tmp.

SSD vs. TMPFS:

Copié una imagen de Ubuntu del directorio de inicio de un usuario al directorio raíz en la siguiente captura de pantalla.

Usando la hora de comando para mostrar el tiempo, puede ver que el proceso de copia tomó 0:55.290S

TIME CP/HOME/LINUXHINT/Downloads/Ubuntu-20.04.1-desktop-amd64.Yo asi .

En la siguiente captura de pantalla, puede ver cómo copiar la misma imagen ISO de Ubuntu al Ramdisk lleva 0: 9.424s:

tiempo CP Ubuntu-20.04.1-desktop-amd64.ISO/MNT/TMP/

Como puede ver, la diferencia es Titanic, y el Ramdisk es muy ventajoso para las tareas con grandes cantidades de escritura de archivos.

Para eliminar el Ramdisk, simplemente desmontarlo ejecutando el siguiente comando y reemplazando TMP con su punto de montaje:

Umount /mnt /tmp

Creación de un ramdisk en Linux usando RAMFS:

El procedimiento para crear un ramdisk usando RAMFS es el mismo que con TMPFS. El siguiente comando creará un Dynamic Ramdisk en el punto de montaje /mnt /tmp.

montar -t ramfs -o size = 4 ramfs /mnt /tmp

TMPFS vs. RAMFS:

Ahora probemos el rendimiento de RAMFS contra TMPFS, y veamos qué sucede cuando cada tipo de ramdisk alcanza el límite definido.

En el primer ejemplo, crearé un ramdisk de 2 GB usando TMPFS, e intentaré copiar un ISO más grande en el interior:

Monte -T tmpfs -o size = 2g tmpfs /mnt /tmp
tiempo CP Ubuntu-20.04.1-desktop-amd64.ISO /MNT /TMP

Como puede ver, el CP devolvió un error porque el espacio RamDisk no es suficiente para la imagen ISO. Solo asigné 2 GB para el ramdisk.

Ahora, vea qué sucede cuando hago el mismo procedimiento usando Ramdisk:

montar -t ramfs -o size = 2g ramfs /mnt /tmp
tiempo CP Ubuntu-20.04.1-desktop-amd64.ISO /MNT /TMP

Como puede ver, el RAMFS siguió escribiendo en /mnt /tmp a pesar de que he definido un límite de 2 GB. Esta es una desventaja de RAMFS porque puede colgar un sistema al consumir toda su memoria RAM. Por el contrario, TMPFS se limita a la cantidad de memoria que definimos.

También puede ver en la salida que la tarea de copia se realizó dentro de 0: 9.624s, casi el mismo rendimiento mostrado por TMPFS en la prueba contra SSD.

Nota: se usó la misma imagen ISO.

Conclusión

Crear un ramdisk es un proceso de un minuto con beneficios significativos para cualquier usuario que necesite procesar archivos grandes. La velocidad de lectura y escritura aumenta exponencialmente sobre los mejores discos duros del mercado. El software portátil se puede ejecutar desde un ramdisk, aunque los cambios no serán persistentes. Esta implementación es muy apreciada por los editores de los medios cuyas tareas requieren largos períodos de conversión de medios.

El uso de RAMF puede ser riesgoso si el sistema se queda sin recursos. Es por eso que TMPFS se convirtió en el primer método.

Espero que este tutorial cree un ramdisk en Linux sea útil. Siga siguiendo la pista de Linux para obtener más consejos y tutoriales de Linux.