volume lógico de montagem de .img contendo um grupo de volumes luks criptografados

0

Estou tendo problemas para restaurar um backup que fiz de um sistema de arquivos criptografado. O back-up é um arquivo .img contendo uma única partição de disco. Essa partição é um contêiner luks no qual um grupo de volumes lógicos 'vg-crypt' reside. Dentro deste grupo de volume eu tenho dois volumes lógicos, lv-crypt-root e lv-crypt-swap.

Na minha nova instalação do Ubuntu, procedo da seguinte forma

cryptsetup luksOpen /media/lars/SHD/disk.img backup

pasword .... e para verificar se o volumegroup lógico é reconhecido eu digito:

pvs

que me diz:

  PV                 VG      Fmt  Attr PSize   PFree  
/dev/mapper/backup vgcrypt lvm2 a--  151,11g 196,00m
/dev/mapper/tphd   vgtphd  lvm2 a--  151,11g 116,00m

até agora tudo bem, meu volume de raiz atual (tphd ou vgtphd) é reconhecido assim como meu backup vg (backup ou vgcrypt) Agora vamos verificar o lv no volume de backup:

lvdisplay /dev/vgcrypt

...

      --- Logical volume ---
  LV Path                /dev/vgcrypt/lv-crypt-root
  LV Name                lv-crypt-root
  VG Name                vgcrypt
  LV UUID                Nc4vsK-IcqB-l2S1-iyIJ-rSOj-vzqt-osGcn5
  LV Write Access        read/write
  LV Creation host, time ubuntu, 2013-06-19 10:40:44 +0200
  LV Status              suspended
  # open                 0
  LV Size                147,12 GiB
  Current LE             37663
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:5

  --- Logical volume ---
  LV Path                /dev/vgcrypt/lv-crypt-swap
  LV Name                lv-crypt-swap
  VG Name                vgcrypt
  LV UUID                ExEizv-aHCn-ZG1Q-nqj5-jSQE-NKYG-2RKyVb
  LV Write Access        read/write
  LV Creation host, time ubuntu, 2013-06-19 10:41:14 +0200
  LV Status              suspended
  # open                 0
  LV Size                3,80 GiB
  Current LE             973
 ..... bla bla

conclusão, lv é reconhecido.

É aí que os problemas começam, Eu tento montar o lv:

mount /dev/vgcrypt/lv-crypt-root /mnt/lvm/

me dá

mount: special device /dev/vgcrypt/lv-crypt-root does not exist

ao se certificar de que está ativo por:

vgchange -ay /dev/vgcrypt

Eu tenho isso:

  device-mapper: resume ioctl on  failed: Invalid argument
  Unable to resume vgcrypt-lv--crypt--root (252:5)
  device-mapper: resume ioctl on  failed: Invalid argument
  Unable to resume vgcrypt-lv--crypt--swap (252:6)
  2 logical volume(s) in volume group "vgcrypt" now active

Eu praticamente não tenho idéia do que isso significa, então eu começo a pesquisar e descobrir que talvez eu deva exportar o vg inativado com vgexport então:

vgchange -an /dev/vgcrypt
  Attempted to decrement suspended device counter below zero.
  Attempted to decrement suspended device counter below zero.
  0 logical volume(s) in volume group "vgcrypt" now active

e

vgexport vgcrypt
  Volume group "vgcrypt" has active logical volumes

parece bastante paradoxal para mim.

Alguém pode me apontar na direção certa? Qualquer ajuda seria muito apreciada:)

P.S. apenas verifiquei o syslog, parece relevante, mas não faz muito sentido para mim:

(filtrado pela informação do wifi:)

cat /var/log/syslog | grep kernel | grep -v wlan | grep -v cfg80211 | tail -n 40 | cut -f 5-90 -d " "

kernel: [58297.025013] device-mapper: table: 252:8: linear: dm-linear: Device lookup failed
kernel: [58297.025023] device-mapper: ioctl: error adding target to table
kernel: [58297.026024] device-mapper: table: 252:8: linear: dm-linear: Device lookup failed
kernel: [58297.026030] device-mapper: ioctl: error adding target to table
kernel: [58297.026901] device-mapper: table: 252:8: linear: dm-linear: Device lookup failed
kernel: [58297.026907] device-mapper: ioctl: error adding target to table
kernel: [58297.077530] device-mapper: multipath: version 1.5.1 loaded
kernel: [59654.867358] device-mapper: table: 252:5: dm-7 too small for target: start=2048, len=308535296, dev_size=284453912
kernel: [59654.867994] device-mapper: table: 252:6: dm-7 too small for target: start=308537344, len=7970816, dev_size=284453912
kernel: [59655.179856] device-mapper: table: 252:5: dm-7 too small for target: start=2048, len=308535296, dev_size=284453912
kernel: [59655.180623] device-mapper: table: 252:6: dm-7 too small for target: start=308537344, len=7970816, dev_size=284453912
kernel: [59776.851223] device-mapper: table: 252:5: dm-7 too small for target: start=2048, len=308535296, dev_size=284453912
kernel: [59776.851860] device-mapper: table: 252:6: dm-7 too small for target: start=308537344, len=7970816, dev_size=284453912
kernel: [59777.149049] device-mapper: table: 252:5: dm-7 too small for target: start=2048, len=308535296, dev_size=284453912
kernel: [59777.149561] device-mapper: table: 252:6: dm-7 too small for target: start=308537344, len=7970816, dev_size=284453912
kernel: [60837.153424] device-mapper: table: 252:5: dm-7 too small for target: start=2048, len=308535296, dev_size=284453912
kernel: [60837.154789] device-mapper: table: 252:6: dm-7 too small for target: start=308537344, len=7970816, dev_size=284453912
kernel: [61508.827915] device-mapper: table: 252:5: dm-7 too small for target: start=2048, len=308535296, dev_size=284453912
kernel: [61508.831243] device-mapper: table: 252:6: dm-7 too small for target: start=308537344, len=7970816, dev_size=284453912
kernel: [61514.020906] device-mapper: table: 252:5: dm-7 too small for target: start=2048, len=308535296, dev_size=284453912
kernel: [61514.021532] device-mapper: table: 252:6: dm-7 too small for target: start=308537344, len=7970816, dev_size=284453912
kernel: [61514.311394] device-mapper: table: 252:5: dm-7 too small for target: start=2048, len=308535296, dev_size=284453912
kernel: [61514.311906] device-mapper: table: 252:6: dm-7 too small for target: start=308537344, len=7970816, dev_size=284453912
    
por Lars 20.09.2013 / 10:58

2 respostas

1

O LVM não está abrindo seus LVs, isso já é aparente na lvdisplay output (suspensa). A saída do syslog device-mapper tem alguns detalhes adicionais: dois dispositivos não puderam ser ativados porque um de seus componentes estava ausente; outros dois não puderam ser ativados porque o dispositivo de apoio é muito pequeno. As mensagens posteriores têm números de dispositivos que correspondem ao vgchange com falha.

Suponho que sua imagem de backup está truncada.

Para mais informações:

sudo vgchange --refresh
sudo pvs --partial --verbose
sudo lvs --partial --segments -o+devices vgcrypt/lv-crypt-root
sudo blockdev --getsize64 /dev/mapper/backup
sudo pvdisplay --units=b /dev/mapper/backup

O primeiro comando força uma releitura dos metadados VG que estão armazenados nos seus PVs, o segundo lista todos os PVs, incluindo os que faltam, o terceiro fornece informações mais detalhadas sobre o seu LV e onde os dados estão localizados. Os dois últimos comparam o tamanho esperado e real do seu PV.

    
por Gabriel 20.09.2013 / 13:19
1

Eu corrijo esse problema com essas etapas:

  • verificar se o tamanho (parted) da partição física (ex. / dev / sda5) é menor que o volume físico lvm (PV) (pvscan)
  • desative o lvm pvchange -an
  • com fdisk -l, anote o bloco inicial para cada partição
  • com o fdisk exclua a partição (ou seja, / dev / sda5) e grave as alterações
  • com fdisk cria uma nova partição do mesmo tipo (primária, lógica) começando exatamente do mesmo bloco que a anterior e um bloco final mais distante do que anteriormente (se você puder o disco inteiro depois disso), então mude o tipo para Linux LVM (8e), gravar alterações no disco
  • verifique o tamanho como etapa 1
  • ativar lvm pvchange -ay
por cross 09.07.2014 / 10:19