Qué es y cómo funciona tmpfs

En el primer artículo del año en la web vamos a tratar el sistema de almacenamiento tmpfs, típico de los sistemas operativos UNIX y like-UNIX. Espero que hayáis tenido un buen compiezo en éste nuevo año 2017, empecemos.

¿Qué es tmpfs?

Tal y cómo he comentado anteriormente se trata de un sistema de almacenamiento típico de sistemas UNIX y similares, como BSD o GNU Linux. Se trata de un sistema de ficheros montado que utiliza memoria volátil. Por lo que los datos que pueda contener se pierden al reiniciar el equipo. Por normal general puede utilizar también el espacio de intercambio o SWAP, en las situaciones en que haya poca memoria volátil, generalmente RAM.

Al utilizar memoria volátil, esto es no utiliza un disco rígido o sólido, las velocidades para realizar operaciones son por normal general mucho mayores. El inconveniente evidente, que he comentado en el párrafo anterior, es que al reiniciar la información se pierde.

tmpfs en GNU Linux

En nuestro sistema operativo favorito del Ñu y el Pingüino el sistema de ficheros del título del artículo está soportado desde la versión 2.4 del kernel. La configuración de la unidad está indicada para el arranque en el fichero /etc/fstab, por lo que su configuración se puede modificar desde allí, también se puede utilizar el comando ‘mount’ para su creación o modificación. Visitando el artículo de Wikipedia podemos encontrar mucha información al respecto y podemos así ampliar conocimientos.

Casos prácticos con tmpfs

Para darle un poco “chicha” al asunto vamos a ver varios casos prácticos. En el primero veamos como modificar el espacio. Para ello debemos utilizar el fichero /etc/fstab. Por normal general tendremos una configuración similar a la siguiente:

  1. Por defecto:
  2. none     /dev/shm       tmpfs   defaults        0 0

En la siguiente línea vamos a añadir un 1GB a la unidad, tal como sigue:

  1. Cambiado:
  2. none     /dev/shm       tmpfs   defaults,size=1G        0 0

Se observa que hemos añadido el parámetro ‘size’ con el tamaño de 1GB. Para que los cambios se hagan efectivos sin reiniciar, escribimos en la consola de comandos:

  1. mount -o remount /dev/shm

De esta manera ya lo tendremos listo.

En el segundo caso vamos a ver como crear una nueva unidad tmpfs, utilizando el comando ‘mount‘, en un sistema con una memoria ram de 4 GB, en la ubicación /mnt/tmp. Sería como sigue:

  1. mkdir /mnt/tmp
  2. mount -t tmpfs tmpfs /mnt/tmp

Para comprobar si ha ido bien, utilizamos el comando df

  1. # df -h /mnt/tmp
  2. Filesystem      Size  Used Avail Use% Mounted on
  3. tmpfs           1.9G     0  1.9G   0% /mnt/tmp

De esta manera ya lo tenemos creado. Si queremos que sea permanente se tendría que añadir en el ficheto /etc/fstab

Espero que os haya parecido útil e insteresante.

La imagen es de Flickr | Creative Commons