¿Debo poner mi sistema de archivos btrfs de dispositivos múltiples en particiones de disco o dispositivos sin formato?

16

Si voy a crear un sistema de archivos btrfs multidispositivo . La recomendación oficial de la documentación parece ser crearla en dispositivos sin formato; es decir /dev/sdb, /dev/sdcetc., pero esto no se explica.

¿Hay alguna ventaja en crear primero una tabla de partición en estos dispositivos, ya sea GPT o MBR, y luego crear el sistema de archivos /dev/sdb1, /dev/sdc1etc.? ¿Alimentar dispositivos completos btrfs tiene alguna ventaja particular, o son básicamente equivalentes?

Glifo
fuente

Respuestas:

7

Particionar es solo una forma de dividir un disco en múltiples volúmenes que se pueden usar de forma independiente. Si solo desea un volumen por disco, el particionamiento no le compra nada, solo usa elimina algo de espacio en disco (sí, es muy pequeño) y complica cosas como alinear sus datos en discos duros con sectores 4K o unidades flash. La única otra razón para tener una tabla de particiones es para arrancar esa unidad. Si no hay razón para tener una tabla de particiones, es más simple omitirla.

mgorven
fuente
3

Hay una serie de desventajas de la partición. MBR desperdicia toda una "pista". Una pista es el número de sectores multiplicado por el tamaño del sector, pero un disco real tiene sectores y el tamaño del sector no es 512o. Un disco real tiene bloques que son 8 veces más grandes para discos giratorios y mucho más grandes para dispositivos flash. Este cambio a la siguiente pista puede hacer que sea imposible alinear sectores "lógicos" con bloques reales usando stride y stripe.

En los viejos tiempos se podía definir el tamaño del sector en FAT, pero MBR puso fin a eso.

Si está iniciando desde el disco, entonces el BIOS necesita una firma de inicio al final de los primeros 512o para que sepa que puede ejecutar esto cuando está cargado. Si está ejecutando EFI emborracharse. El sistema de archivos necesitaría tener un agujero para esto si se va a utilizar para iniciar el sistema.

XFS (utilizado principalmente en / var en discos giratorios) no tiene ese orificio.

Andrew Buckeridge
fuente
1
Estoy un poco confundido; ¿No sería "el número (total) de sectores multiplicado por el tamaño del sector" todo el disco si el disco está formado por sectores? ¿O está implicado algo más que "total"?
Glifo el
1

Utilice discos separados para obtener ventajas en la velocidad de lectura / guardado de disco.

Básicamente, /dev/sdaes un disco duro, y /dev/sda1, /dev/sda2son partes de un mismo disco físico.

si usa /dev/sda+ /dev/sdbpara su configuración, tiene dos discos separados capaces de recuperar al mismo tiempo.

si lo usa /dev/sda1 /dev/sda2, obtiene el mismo disco tratando de leer ambos, y entonces tiene que hacer uno y luego el otro.

Jharwood
fuente
1
Si está diciendo que usar sdaes más rápido que sda1, ¿de dónde viene esta ventaja de velocidad?
user1686
la ventaja de la velocidad proviene del almacenamiento en paralelo del hardware y la recuperación de sus datos, en lugar del mismo hardware que intenta saltar a varias ubicaciones en el mismo disco
Jharwood
No hubo ninguna mención de múltiples ubicaciones o particiones múltiples. La pregunta es sobre una única partición que cubre todo el disco.
user1686
Ahh, lo siento, entendí mal la pregunta.
Jharwood
0

Si entiendo correctamente, el uso de discos completos permitirá a BTRFS hacer algunas suposiciones que permitan una cierta optimización del comportamiento.

Por ejemplo, si se le otorgan dispositivos completos para trabajar, puede suponer que no tendrá nada que lo desafíe para acceder al dispositivo, y puede adaptar sus métodos de acceso en lugar de tener que anticipar retrasos periódicamente de otra cosa que solicite datos de alguna parte más en el dispositivo y tener que esperar a que el disco vuelva a funcionar después de manejar la otra solicitud.

asesino
fuente
Lo que estás describiendo se llama la realidad del disco IO en general, no nada específico del sistema de archivos. ¿Qué ha visto específicamente en btrfs que optimiza o programa IO de manera diferente en función de si existe o no una tabla de partición?
Brian Cline
El sistema de archivos no lo hace. El sistema operativo lo hace si dicho comportamiento es apropiado. Mis usos de "it" fueron probablemente ambiguos y / o superpuestos y / o exclusivos entre sí.
Killermist
0

Con todas estas unidades de sectores 4K, puede usar la partición para alinear su sistema de archivos. Simplemente inicie fdisk con:

fdisk -H 224 -S 56

y cree una única partición que abarque todo el dispositivo.

Lester Cheung
fuente