Hay algunas cosas importantes a tener en cuenta. Los nombres:
btrfs Subvolume: inside
sistema de archivos de contenedor de datos independiente . Se representa como directorio del FS existente. Si crea un nuevo subvolumen, estará vacío, listo para usar el bloque de datos lógico dentro del sistema de archivos. Muy conveniente de usar donde los datos deben estar separados lógicamente, por ejemplo, diferentes máquinas virtuales o diferentes clientes en diferentes subvolúmenes. Esto permite la very fast
eliminación de todos los bloques de datos lógicos con solo el comando de eliminación de subvolumen.
Instantánea de btrfs: una copia del existing
subvolumen con todos sus datos en el momento en que se realizó la instantánea. Se puede utilizar como copia de seguridad operativa para revertir la configuración o los cambios, por ejemplo, hacer una instantánea de subvolumen, hacer cambios (VM o datos), probar si todo está bien, después de un período de gracia eliminar la instantánea. Es importante tener en cuenta: las instantáneas se pueden leer solo ( -r
cambiar) y, por lo tanto, se pueden usar como bloques incrementales de cambios FS y, posiblemente, se pueden transferir a otro BTRFS.
Limitaciones actuales (2016-12-30) BTRFS:
Copiar o mover datos entre subvolúmenes, por ejemplo, mv dir1/dataset1 dir_subvolume1/
produce todos los io reales para copiar datos a otro subvolumen y, en caso de movimiento, eliminar del original. Y una copia muy eficiente de toneladas de datos simplemente haciendo referencias y, por lo tanto, utilizando la función COW de BTRFS:
cp -a --reflink=always dir1/dataset1 dir_subvolume1/
y si es necesario:
rm -rf dir1/dataset1
Solo la instantánea de subvolumen de lectura se puede renombrar (mover con mv
) en el nivel de directorio existente, pero no se puede renombrar / mover a un nivel de subdirectorio diferente. por ejemplo, mv /btrfs/subvol_snap1 /btrfs/.snaphots
no es posible, no produce explicado mucho error: mv: cannot move 'subvol_snap1' to '.snapshots/subvol_snap1': Read-only file system
. Para poder mover una instantánea de este tipo, debe crear una nueva instantánea de solo lectura de la instantánea existente de solo lectura a la nueva ubicación preferida, y luego eliminar la anterior:
btrfs sub snap -r /btrfs/subvol_snap1 /btrfs/.snaphots/subvol_snap1
btrfs sub del /btrfs/subvol_snap1
Solo para una vida más fácil:
btrfs sub list /btrfs
Espero que esto ahorre toneladas de tiempo a todos los nuevos fanáticos de btrfs :)