Crear subvolúmenes btrfs como @ o @home

11

Al estar intrigado por btrfs, decidí jugar con él en una máquina virtual. La instalación funciona muy bien siempre que recuerde poner /bootuna partición separada y todo parece funcionar bien.

Lo que me gustaría hacer es crear un subvolumen separado para datos masivos con diferentes configuraciones que cosas como @y @home. btrfs subvolume create datalo hará por mí, pero tengo curiosidad por qué sigue nombrándolo @/data(o cosas similares cuando lo intento /datao @data). ¿Hay una manera especial de crear subvolúmenes como @y @homeentonces mi subvolumen de datos se mostrará como @data? (y: ¿cuál es la diferencia exacta entre los esquemas de nombres?)


Información Adicional:

  • ubuntu 12.04.2, ejecutándose como invitado KVM en el host mint15;
  • kernel 3.8.0-27-generic de ubuntu-x-swat (raring backport);
  • btrfs usando dos dispositivos, /dev/sday/dev/sdb
  • /dev/sday /dev/sdbson particiones en un disco no utilizado por el sistema operativo host
akaIDIOT
fuente

Respuestas:

13

Suspiro , parece que publiqué un poco demasiado pronto, con un poco de ayuda del todopoderoso Zosma en IRC, descubrimos cómo se supone que funciona.

Subvolúmenes @y @homeson hijos de la raíz btrfs, por /lo que en realidad no es la raíz del sistema de archivos. El UUID de la raíz btrfs se suministra /etc/fstabdos veces, proporcionando los montajes para /y /home. El montaje de la raíz real del sistema de archivos muestra los subvolúmenes creados por el instalador:

root@box:~# mkdir /mnt/btrfs
root@box:~# mount UUID=f8963df3-1320-4bc0-a125-62be185b029e /mnt/btrfs
root@box:~# ls /mnt/btrfs
@  @home

¡Ahí es donde fueron! Crear un nuevo subvolumen de la manera exacta que hizo el instalador de ubuntu ahora es fácil:

root@box:~# btrfs subvolume create /mnt/btrfs/@data
Create subvolume '/mnt/btrfs/@data'

Ahora, como hemos creado un subvolumen en la raíz btrfs en lugar de en el sistema de archivos raíz para la instalación, /data/no se mostrará solo. Afortunadamente, es trivial copiar el truco utilizado por el instalador al examinar /etc/fstaby agregar otro soporte para /data:

UUID=f8963df3-1320-4bc0-a125-62be185b029e /data  btrfs  defaults,subvol=@data 0 2

El último paso es crear el punto de montaje: mkdir /data. Después de reiniciar, tendremos un /datadirectorio montado desde un subvolumen btrfs separado.

… ¡Lucro!

akaIDIOT
fuente
5

La instalación funciona muy bien siempre que recuerde poner / arrancar en una partición separada

No necesita tener un arranque / arranque separado. GRUB2 puede leer y arrancar Linux desde un btrfs.

Lo que me gustaría hacer es crear un subvolumen separado para datos masivos con diferentes configuraciones que cosas como @ y @home.

Si está hablando de montar subvolúmenes con diferentes opciones de montaje , tenga en cuenta que actualmente (noviembre de 2013) no son compatibles: de acuerdo con las preguntas frecuentes de Btrfs, " ¿Puedo montar subvolúmenes con diferentes opciones de montaje? ", Actualmente solo el btrfs específico Las opciones no son compatibles o no están implementadas. Sin embargo, los desarrolladores tienen planes para implementarlo en el futuro.

btrfs subvolume create data lo hará por mí, pero tengo curiosidad por qué sigue nombrándolo @ / data (o cosas similares cuando intento / data o @data)

Por defecto, el instalador de Ubuntu Ubiquity crea subvolúmenes @y @homeen el sistema de archivos, y su raíz de Ubuntu está realmente en el subvolumen @.

¿Existe una forma especial de crear subvolúmenes como @ y @home para que mi subvolumen de datos se muestre como @data? (y: ¿cuál es la diferencia exacta entre los esquemas de nombres?)

@y @homeson nombres arbitrarios elegidos por el instalador, que no tienen significado fuera /etc/fstab. De hecho, normalmente les cambio el nombre a nombres más específicos, para que pueda tener muchas distribuciones instaladas por Ubiquity en los mismos btrfs, siempre que recuerde actualizar sus fstab.

Explicación más volumen secundario en Funtoo.org - BTRFS .

ignis
fuente
Gracias por una adición completa aquí; mucha información útil :)
akaIDIOT