Instale o Ubuntu com o BTRFS e mais subvolumes

4

Eu quero instalar um servidor Ubuntu com um sistema de arquivos btrfs (de uma maneira RAID1).

O problema é que não consigo ver a opção no instalador para criar mais subvolumes. O instalador cria dois por padrão: @ e @home , e eu quero separar também @var , @tmp , ...

Existe alguma opção para fazer isso? Talvez com o shell ... mas acho que o instalador não entende o recurso de subvolumes de btrfs , então você não pode montar cada partição em cada subvolume ...

    
por Paco 31.01.2012 / 13:37

2 respostas

3

Isso deve ser fácil de alterar depois de concluir a instalação inicial.

  • Uma maneira simples é tirar dois instantâneos de @ , chamando-os de @var e @tmp .
  • Em seguida, exclua tudo em @var , exceto @var/var , mova o conteúdo de @var/var/* para @var/* e exclua @var/var . O mesmo para @tmp/tmp/ .
  • Em seguida, modifique /etc/fstab com os novos pontos de montagem de subvolume para /var e /tmp .
  • Reinicialize.
  • Finalmente (não tenho tanta certeza sobre esse último bit), você poderá excluir o conteúdo original de @/var e @/tmp montando o subvolume @ em /mnt (para que o mesmo subvolume seja montado duas vezes, uma vez como / e uma vez como /mnt ) e excluindo /mnt/var e /mnt/tmp .
por thomas_d_j 01.02.2012 / 09:38
1

Você está certo, o instalador não está ciente dos subvolumes do BTRFS, e este ainda é o caso de 18.04.

Usar um subvolume separado para /var/log/ permite restaurar um instantâneo de / sem perder os logs.

  • Faça a configuração do servidor como de costume, na etapa Concluir instalação , selecione Voltar e Executar um shell .
  • Relacione todos os seus sistemas de arquivos de destino:

    mount | grep target
    
    /dev/md-0 on /target type btrfs (rw,noatime,space_cache,subvolid=257,subvol=/@)
    /dev/md-0 on /target/home type btrfs (rw,noatime,space_cache,subvolid=258,subvol=/@home)
    proc on /target/proc type proc (rw,nosuid,nodev,noexec,relatime)
    devtmpfs on /target/dev type devtmpfs (rw,nosuid,relatime,size=475608k,nr_inodes=118902,mode=755)
    
  • Anote o dispositivo btrfs, neste exemplo /dev/dm-0 .

  • Agora desative todos os seus sistemas de arquivos montados.

    umount /target/dev
    umount /target/proc
    umount /target/boot/efi
    umount /target/home
    umount /target/
    
  • Monte seu sistema de arquivos btrfs flat :

    cd /tmp
    mkdir work
    mount /dev/dm-0 work
    cd work
    
  • Verifique se a montagem está correta (deve mostrar @ e @home ):

    ls 
    
    @ @home
    
  • Crie seus subvolumes adicionais ( @tmp , @var , @var-log )

    btrfs subvolume create @tmp
    btrfs subvolume create @var
    btrfs subvolume create @var-log
    
  • Mova os dados

    mv @/var/log/* @var-log/
    mv @/var/* @var/
    
    # Remove data from tmp
    rm @/tmp/* @/tmp/.*
    
    # For 18.04, remove the swapfile since it won't work on btrfs
    rm @/swapfile
    
  • Adicione os novos subvolumes ao fstab, a parte do dispositivo pode ser diferente do comando mount anterior, copie a parte do dispositivo dos pontos de montagem já existentes.

    ...
    /dev/mapper/root-root /               btrfs   noatime,subvol=@ 0       1
    /dev/mapper/root-root /home           btrfs   noatime,subvol=@home 0       2
    /dev/mapper/root-root /var            btrfs   noatime,subvol=@var 0       2
    /dev/mapper/root-root /var/log        btrfs   noatime,subvol=@var-log 0       2
    
  • Desmontar

    cd /tmp
    umount work
    sync
    
  • exit , então Conclua a instalação

  • Instale e configure o snapper , uma ótima ferramenta para automatizar instantâneos.

por pim 23.04.2018 / 12:24

Tags