InicioLinuxLas bondades de Btrfs

Las bondades de Btrfs

LinuxFecha desconocida




Btrfs es un sistema de archivos desarrollado inicialmente por Oracle y sobre el que el proyecto fedora está trabajando. A día de hoy la versión 13 de esta distribución le da soporte para ser instalado, pero los desarrolladores recomiendan no instalarlo debido a su inestabilidad. Sin embargo creo que a largo plazo va a ser la mejor opción.


Antes de todo, un poco de historia. Cuando Sun anunció el nuevo sistema de archivos (ZFS) que iba a implementar tanto en Solaris como en OpenSolaris, los linuxeros empezaron a elucubrar un plan: portar ZFS a su distribución. La primera opción que realmente funcionaba técnicamente, era FUSE ZFS, que era una “emulación” de ZFS bajo cualquier kernel que tuviese VFS, pero no salvaba el gran escollo de ZFS: su licencia. La licencia de ZFS es privativa, y como todos sabemos, no puede entrar nada de manera oficial en casi cualquier distribución que sea privativo, por lo que FUSE ZFS fue rechazado por la comunidad, las ventajas de ZFS no eran suficientes como para vender el alma. En este punto llega btrfs, lanzado por Oracle con licencia GPL trata de adoptar las características que tiene ZFS, entre las que destaca copy-on-write y los snapshots. Además de todo esto, este sitema de archivos usa LVM y pretende mejorar la fragmentación de archivos y realizar una mayor compresión de los datos para que ocupen menos. Para explicar la importancia de Btrfs hay que explicar las características anteriormente mencionadas y nombrar a sus dos competidores: ext4 y ReiserFS (aparte de JFS o XFS).

Copy-on-write:
Método que optimiza el acceso de varios procesos a un mismo archivo. Supongamos que tengo un archivo denominado PUL.conf, y que tengo tres procesos denominados proceso1, proceso2 y proceso3. Si los tres procesos acceden a PUL.conf a la vez, para tener un mayor rendimiento, un sistema de archivos con copy-on-write les dará a cada uno de los procesos un puntero que apunte a PUL.conf, de manera que los tres leen sobre el mismo archivo y no hay que realizar duplicados de PUL.conf. Sin embargo cuando proceso1 quiere escribir sobre PUL.conf, se realizará un duplicado del archivo y el puntero de proceso1 apuntará a la copia de PUL.conf. De esta manera proceso1 no se entera de que comparte a PUL.conf con otros dos procesos, y tanto proceso2 como proceso3 no se ven perjudicados por la modificación que ha realizado proceso1.

Snapshots:
Los snapshots son instántaneas que se sacan de la totalidad o parcialidad de un sistema de archivos. Esta característica hace que tenga constantemente un backup del directorio del que se haya hecho la instantánea, lo que supone que aunque modifique un archivo (lo elimine por ejemplo) siempre voy a poder acceder a la copia que me hace el snapshot. Otra de las ventajas es que aunque haga una actualización masiva de mis paquetes, si por cualquier motivo sale mal, siempre puedo volver a la versión segura de la instantánea.

LVM (Logical Volume Manager):
Para explicar LVM es necesario explicar qué es un volumen lógico. Un LV es la agrupación de diversos volúmenes físicos (PV) que conforma un dispositivo estándar de bloques para el sistema. Para explicarlo pongo un ejemplo, imaginemos que tenemos dos discos duros (hda y hdb). Queremos instalar una distribución de GNU/linux, y disponemos de LVM. Queremos separar /home del resto del sistema, pero el tamaño del menor de los discos nos parece excesivo, la solución es hacer una partición en uno de los discos (hda1), utilizarla como /home y el otro disco (hdb) junto con la otra partición (hda2) utilizarla como /. Esta solución sin LVM no se puede realizar, ya que la distribución se niega a instalarse en un disco duro y en una partición de otro. Con LVM se agrupan dos recursos aparentemente diferentes (hda2 y hdb) en uno, que es el LV sobre el que se instala la distribución, diciéndole al sistema que se está instalando sobre una partición de un “disco duro virtual” formado por hda2 y hdb. Los PV son los volúmenes físicos de los que se dispone, como particiones, discos duros… Aparte de esta ventaja, LVM puede realizar snapshots del sistema de sólo lectura, aunque en LVM2 se podrán hacer de lectura y escritura, lo que aporta mayor seguridad.

Por último la referencia a ReiserFS y a ext4 es obligada. Tan sólo voy a decir que ReiserFS utiliza LVM y que ambos tienen una característica en común denominada Journaling.

Journaling.
Sistema de seguridad que realiza un log denominado journal que contiene los cambios que están siendo realizados en un sistema de archivos en tiempo de escritura. Trata de prevenir la pérdida de información por colapsos del sistema. Si se va la luz porque nuestro gato ha metido el hocico en un enchufe mientras nosotros estábamos trabajando en un proyecto, el sistema, a través del journal, podrá restituir el archivo a su último estado conocido.

Creo que el futuro está en ReiserFS o en Btrfs, y por eso he escrito el artículo, ya que cuando vallamos a instalar una distribución no elijamos ext4 a pies juntillas, sino que exploremos otras posibilidades. No he comentado nada de tamaños máximos de volúmenes ni bajo qué intervalo el sistema es más eficiente, ya que para un usuario normal no tiene demasiada importancia, sin embargo si queréis consultar este tipo de información la Wikipedia o Google son los lugares indicados.









Fuente
Datos archivados del Taringa! original
10puntos
0visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
2visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

M
MukenioArg🇦🇷
Usuario
Puntos0
Posts442
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.