Pode-se combinar volumes lógicos de diferentes grupos sem copiar o conteúdo?

1

Eu uso o kernel do Arch Linux 4.18.12-arch1-1-ARCH (novembro de 2018).

Eu uso um caddy SATA (para um Thinkpad T400) que contém um disco rígido de um laptop antigo. Eu gostaria de decidir combinando o conteúdo e estendendo os volumes lógicos rootvol e lvhome ou mantendo a configuração atual (veja abaixo). Eu só uso o sistema de arquivos ext4 e ambos os volumes contêm dados. Embora esta questão pareça ser respondida aqui , não sei o que fazer para evitar a perda de dados.

Atualmente, eu inicializo a partir de um SSD criptografado luks e tenho alguns links simbólicos em $HOME apontando para diretórios no disco rígido montado preguiçosamente para estender o armazenamento e que me permite usar meu antigo $HOME no disco rígido .

NAME                 MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT UUID
sda                    8:0    0 223.6G  0 disk             
└─sda1                 8:1    0 223.6G  0 part             3d17c5b4-a603-4600-9f36-c598a7da783e
  └─root             254:0    0 223.6G  0 crypt            PRGLfW-Q18M-pPu8-nr6a-tloV-SS4W-kK1ROX
    ├─matrix-swapvol 254:1    0     2G  0 lvm   [SWAP]     38e862ef-e919-4388-810f-63ce187b342c
    └─matrix-rootvol 254:2    0 221.6G  0 lvm   /          c71a8292-c678-4a53-90da-3e4bf78cedbb
sdb                    8:16   0 232.9G  0 disk             
├─sdb1                 8:17   0   512M  0 part             14c635fb-6ee7-45c0-aefd-d3d7440116c0
└─sdb2                 8:18   0 232.4G  0 part             c36535d9-4098-4939-9ebe-6a2be950f3ea
  └─caddy            254:3    0 232.4G  0 crypt            kTkSk4-oemR-1fJi-4brz-OXmW-DEZk-rqF2pN
    ├─vgarch-lvswap  254:4    0     4G  0 lvm              a1932471-209e-4d47-85dc-c4ea1ce37de8
    ├─vgarch-lvroot  254:5    0    15G  0 lvm              67d37f85-c2c0-40e7-88e9-afd4a6c1c561
    └─vgarch-lvhome  254:6    0 211.2G  0 lvm              dd89d271-776a-426a-826d-9f4d7056fc6a

Como pode ser visto, por qualquer motivo eu decidi usar o lvm em luks duas vezes. Note que o SSD não possui uma partição /boot : ele é descriptografado com a ajuda de uma imagem ROM do libreboot. Durante a inicialização, uma entrada em crypttab para o UUID de /dev/sdb2 desbloqueia o disco rígido usando um arquivo de chave em / . Então, eu uso o serviço automount do systemd para montar ou desmontá-lo sempre que necessário:

# /etc/fstab
# /dev/mapper/vgarch-lvhome
UUID=dd89d271-776a-426a-826d-9f4d7056fc6a /mnt/caddy ext4 rw,noatime,data=ordered,noauto,nofail,x-systemd.automount,x-systemd.device-timeout=20,x-systemd.idle-timeout=2min 0 0

Alterei recursivamente a propriedade dos arquivos em lvhome . Como não tenho necessidade de lvroot e lvswap , vou removê-los junto com / dev / sdb1 que contém / boot.

Então, como isso pode ser combinado? Isso é aconselhável? (devido a diferentes usos para SSD e HDD) Sugere-se que copie o conteúdo para o outro sistema de arquivos primeiro, mas isso não impede o propósito do lvm? Eu pensei que teria sido fácil crescer ou encolher o sistema de arquivos, mas acho que imaginei recursos do mundo zfs.

    
por Bart 02.11.2018 / 13:42

1 resposta

1

O LVM fornece volumes lógicos, que são dispositivos de blocos lógicos, e facilita o crescimento, a redução, a realocação, o snapshot, etc. desses dispositivos de bloco. Você pode então usar estes dispositivos de bloco como quiser ... pode ser um sistema de arquivos, ou algo como um disco rígido virtual para uma VM com sua própria tabela de partições e tudo mais.

O LVM não faz nada no nível do sistema de arquivos. Portanto, cabe ao sistema de arquivos dar suporte ao manuseio desses dispositivos de blocos crescidos ou encolhidos, ou à VM para redimensionar sua tabela de partições.

A maioria dos sistemas de arquivos suporta crescimento (mas às vezes não on-line ou não ultrapassa um determinado limite), mas alguns deles não suportam encolhimento. Então, apesar de o LVM não ter escrúpulos em diminuir o dispositivo de bloco, você teria que reduzir o sistema de arquivos primeiro e, para alguns sistemas de arquivos, isso não é possível.

A fusão do conteúdo de dois sistemas de arquivos separados geralmente não é suportada.

Então, sim, em alguns casos, você precisa copiar arquivos da maneira antiga. E então, abandone / remova o LV em que esses arquivos estavam, e use o espaço liberado para expandir o LV e aumentar o sistema de arquivos para o qual você copiou os arquivos.

So how can these be combined? Is that advisable? (because of different uses for SSD and HDD)

Eu não criaria um dispositivo de bloco com metade do backup por SSD e metade pelo HDD. Eu gosto de manter isso separado.

Pode fazer sentido em algumas outras situações, por ex. você pode fazer um SSD-HDD-RAID1, onde o HDD está configurado para gravar principalmente, o que significa que todas as leituras serão normalmente atendidas pelo SSD, pois é mais rápido. No entanto, com a queda dos preços do SSD, essa configuração é menos comum, já que você pode usar apenas dois SSDs para o RAID1 normal.

    
por 02.11.2018 / 14:00