Utilizo volúmenes delgados LVM para iniciar en red un grupo de computadoras a través de iSCSI. De vez en cuando libero espacio en esas máquinas. Desafortunadamente, ese espacio no se libera en los volúmenes delgados. Así que hago partclone
las particiones de vez en cuando, para liberar espacio. En la virtualización, puede utilizar herramientas que eliminan el espacio no utilizado, lo que lo libera. ¿Existe una manera similar o mejor de recuperar espacio con pools/volúmenes delgados LVM?
gracias de antemano
Respuesta1
LVM delgado admite DISCARD, más conocido como TRIM. En teoría, debería ser posible hacer que esto funcione de alguna manera con iSCSI (hay un comando UNMAP equivalente), pero no he encontrado nada al respecto.
En la máquina que aloja esos volúmenes, puede utilizarlos fstrim
para liberar espacio libre. La página de manual incluso lo menciona explícitamente:
fstrim se utiliza en un sistema de archivos montado para descartar (o "recortar") bloques que no están en uso por el sistema de archivos. Esto es útil para unidades de estado sólido (SSD) y almacenamiento con aprovisionamiento ligero.
Para que esto funcione, Linux necesita soporte para el sistema de archivos y ese soporte debe incluir TRIM. Si sus computadoras iniciadas en red ejecutan Windows, probablemente sea NTFS. Aparentemente NTFS-3G es compatible con TRIM.
fstrim
opera solo en sistemas de archivos montados.
Se verá así:
Actualizar: Como se discutió en los comentarios, Linux SCSI Target ofrece una bandera en sus almacenes de bloques que identifica los SSD: is_nonrot
. También es compatible con el comando UNMAP SCSI. Windows (al menos Windows 10) detecta correctamente los SSD a través de iSCSI y emite comandos UNMAP, liberando espacio no utilizado de inmediato.