Defina o pai do subvolume btrfs?

1

Como posso criar um subvolume btrfs de tal forma que seja o filho de outro subvolume específico? Ou, como posso garantir que ele será criado com nível pai / superior de 5, como muitos dos meus subvolumes existentes são?

por exemplo, digamos que eu tenha:

# btrfs subvolume list -p -a -t -u /
ID      gen     parent  top level       uuid    path
--      ---     ------  ---------       ----    ----
257     80732   5       5               43d2daae-112f-ab49-931f-ddc9ba1c6ffd    <FS_TREE>/root
258     80732   5       5               01b630a4-608d-b44f-8f97-e9c371c7c759    <FS_TREE>/home
261     80731   257     257             0dbf3e8a-a9bf-2a4a-92fe-7661d48295f2    root/var/lib/machines

Como posso criar um new_subvolume de tal forma que ele apareça como:

# btrfs subvolume list -p -a -t -u /
ID      gen     parent  top level       uuid    path
--      ---     ------  ---------       ----    ----
257     80732   5       5               43d2daae-112f-ab49-931f-ddc9ba1c6ffd    <FS_TREE>/root
258     80732   5       5               01b630a4-608d-b44f-8f97-e9c371c7c759    <FS_TREE>/home
261     80731   257     257             0dbf3e8a-a9bf-2a4a-92fe-7661d48295f2    root/var/lib/machines
262     80732   5       5               XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX    <FS_TREE>/new_subvolume

Os root e home subvolumes foram criados de alguma forma, eu só quero duplicar como eles foram feitos.

    
por courtlandj 01.03.2016 / 01:21

1 resposta

1

Não há um método especial para fazer isso. Para criar subvolumes, da mesma forma que arquivos ou diretórios comuns, você precisa ter seu pai montado em algum lugar ...

# mkdir /mnt/toplevel

# mount /dev/sda2 /mnt/toplevel -o subvolid=5

... e crie um subvolume filho:

# btrfs subvolume create /mnt/toplevel/new_subvolume

# ls -la /mnt/toplevel
total 16K
drwxr-xr-x 1 root root  36 Sep 10 15:13 ./
drwxr-xr-x 1 root root  26 Mar  1 14:18 ../
drwxr-xr-x 1 root root  14 Sep 10 15:48 home/
drwxr-xr-x 1 root root   0 Mar  1 14:19 new_subvolume/
drwxr-xr-x 1 root root 150 Feb 19 13:07 root/

# umount /mnt/toplevel

(Nota: por padrão, subvolid=5 já é o padrão e não precisa ser especificado. Eu só o adicionei no caso de você ter feito btrfs subvolume set-default antes).

    
por 01.03.2016 / 13:22