GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo crear un sistema de archivos ZFS con compresión de archivos en Linux

El sistema de archivos ZFS está obteniendo un mayor reconocimiento en Linux.

En ZFS, puede habilitar la compresión en el nivel del sistema de archivos. Esto almacenará los datos en formato comprimido, lo que ahorrará mucho espacio en disco.

En este artículo, explicaremos cómo crear el sistema de archivos a partir del grupo de almacenamiento ZFS y habilitar la compresión en ZFS.

Este es el segundo artículo de la serie Sistema de archivos ZFS.

En la primera parte de esta serie, explicamos los fundamentos de ZFS y cómo instalar ZFS en Linux. También creamos un grupo ZFS.

Crear sistema de archivos ZFS

Primero, vea todos los sistemas de archivos ZFS actuales usando el comando zfs list como se muestra a continuación. En este ejemplo, actualmente tenemos un sistema de archivos ZFS.

# zfs list
NAME     USED  AVAIL  REFER  MOUNTPOINT
mypool   296K  5.84G    30K  /mypool

Ahora, cree un nuevo sistema de archivos ZFS usando el comando zfs create.

# zfs create mypool/fs1

Como vemos a continuación, el nuevo sistema de archivos ZFS ahora se creó con éxito.

# zfs list
NAME         USED  AVAIL  REFER  MOUNTPOINT
mypool       170K  5.84G    30K  /mypool
mypool/fs1    30K  5.84G    30K  /mypool/fs1

Establecer cotización y reserva de ZFS

Cuando crea un sistema de archivos ZFS, por defecto consume todo el espacio en el grupo. Por lo tanto, debe especificar una cuota y una reserva para el sistema de archivos.

Para establecer una cotización, use el comando zfs set como se muestra a continuación. Aquí estamos especificando la cuota de 1 GB para este sistema de archivos.

# zfs set quota=1G mypool/fs1

A continuación, establezca la reserva para el sistema de archivos. En este ejemplo, fs1 está reservado 256M de 5.59G para que nadie pueda usar este espacio y también puede extenderse hasta 1G según la cuota que establezcamos si hay espacio libre disponible.

# zfs set reservation=256M mypool/fs1

# zfs list
NAME         USED  AVAIL  REFER  MOUNTPOINT
mypool       256M  5.59G  32.5K  /mypool
mypool/fs1    30K  1024M    30K  /mypool/fs1

Crear un punto de montaje alternativo de ZFS

En lugar de montarlo con el nombre "mypool/fs1", también puede establecer un punto de montaje alternativo con cualquier nombre que desee para un sistema de archivos.

Por ejemplo, el siguiente comando establecerá el punto de montaje como "/testmnt", en lugar de "mypool/fs1".

# zfs set mountpoint=/testmnt mypool/fs1

Como vemos en el siguiente resultado, la primera columna NOMBRE indica el nombre real del sistema de archivos ZFS. La última columna MOUNTPOINT indica el punto de montaje alternativo que creamos anteriormente.

# zfs list
NAME         USED  AVAIL  REFER  MOUNTPOINT
mypool       256M  5.59G  32.5K  /mypool
mypool/fs1    30K  1024M    30K  /testmnt

Cuando ejecute el comando df, verá el punto de montaje alternativo como se muestra a continuación.

# df -h
Filesystem                  Size  Used Avail Use% Mounted on
..
mypool                      5.6G  128K  5.6G   1% /mypool
mypool/fs1                  1.0G  128K  1.0G   1% /testmnt

Habilitar la compresión en el sistema de archivos ZFS

Para configurar la compresión en un conjunto de datos ZFS, puede configurar la propiedad de compresión como se muestra a continuación. Una vez establecida esta propiedad, se comprimirán todos los archivos grandes almacenados en este sistema de archivos ZFS.

# zfs set compression=lzjb mypool/fs1

Las siguientes son las propiedades de compresión válidas:

  • activado
  • apagado
  • lzjb
  • gzip
  • gzip[1-9]
  • zle

También puede habilitar la compresión en un sistema de archivos existente. En ese caso, la compresión se aplicará únicamente a los datos nuevos y modificados; y todos los datos existentes permanecerán sin comprimir.

Verificar la compresión ZFS

En el siguiente ejemplo, hemos copiado el archivo tar de 61M en el sistema de archivos ZFS mypool/fs1 montado en /testmnt.

# ls -lh /testmnt/test.tar
-rw-r--r--. 1 root root 61M Nov 11 09:44 /testmnt/test.tar

Si observa el tamaño total del espacio USADO del comando zfs list, verá que solo se consumen 20,9 millones de espacio, lo que indica que la compresión está activada y funcionando.

# zfs list
NAME         USED  AVAIL  REFER  MOUNTPOINT
mypool       256M  5.59G  32.5K  /mypool
mypool/fs1  20.9M  1003M  20.9M  /testmnt

También puede obtener la relación de compresión con el siguiente comando.

# zfs get compressratio mypool/fs1
NAME        PROPERTY       VALUE  SOURCE
mypool/fs1  compressratio  2.90x  -

Además de la compresión, el sistema de archivos ZFS tiene varias características avanzadas. En el próximo artículo de la serie ZFS, hablaremos sobre cómo tomar clones e instantáneas de ZFS.


Linux
  1. Cómo crear un sistema de archivos en una partición o volumen lógico de Linux

  2. Cómo crear un archivo ZIP protegido con contraseña en Linux

  3. Cómo crear o aumentar el espacio de intercambio en Linux

  4. ¿Cómo escribir un archivo con C en Linux?

  5. ¿Cómo creo un archivo aleatorio de 1GB en Linux?

Cómo crear directorios desde un archivo de texto en Linux

Cómo crear un grupo de volúmenes en Linux con LVM

Cómo crear un archivo grande de 1 GB o 10 GB en Linux

Cómo crear y usar un archivo de intercambio en Linux

Cómo abordar los nombres de archivo con espacios en Linux

Cómo crear un sistema de archivos XFS