Monte dois subvolumes btrfs simultaneamente

3

Aqui está uma configuração hipotética em um kernel recente do Linux:

/dev/sda1 is formatted as btrfs

Eu então corro o seguinte para fazer dois subvolumes na raiz de / dev / sda1:

$ mount /dev/sda1 /mnt
$ btrfs subvolume create /mnt/a
$ btrfs subvolume create /mnt/b
$ umount /mnt

Agora, desejo montar ambos os subvolumes ao mesmo tempo em dois pontos de montagem diferentes:

$ mount -o subvol=a /dev/sda1 /a
$ mount -o subvol=b /dev/sda1 /b

Aqui está o problema. Eu tentei isso com um arquivo como dispositivo de bloco (usando loop) e funcionou bem (pelo menos para tocar dois arquivos em cada). No entanto, depois de instalar um sistema completo, colocando a raiz em um subvolume e o diretório home em outro, montando ambos na inicialização, recebi um erro informando que o dispositivo subjacente estava "protegido contra gravação" e na primeira tentativa de ler a home o conteúdo do diretório levou a uma falha no kernel.

Gostaria de saber se o que eu quero fazer (montar um dispositivo de bloco único mais de uma vez com diferentes opções de montagem) é realmente permitido pelo btrfs ou, em geral, pelo sistema operacional.

    
por Mansour 24.10.2010 / 03:25

1 resposta

4

Você pode definir o subvolume a que deve atuar como root como padrão.
nesse caso, ele será montado automaticamente em vez da raiz btrfs.

Assumindo que sua árvore btrfs se parece com isso

/



| ---- a (subvolume que contém / directory)



| ---- b (subvolume que contém o diretório inicial)

para definir um como padrão:

mount /dev/sda1 /mnt
btrfs subvolume create /mnt/a
btrfs subvolume set-default /mnt/a

agora você pode montar seu sistema de arquivos btrfs e depois o subvolume b

mount -o defaults /dev/sda1 /a
mount -o defaults,subvol=b /dev/sda1 /b
    
por 22.01.2011 / 00:16

Tags