Como você executa o thin_dump ou thin_check do lvm? os metadados não podem estar ativos, mas qual opção você usa?

1

Eu quero executar thin_dump e thin_check . Eles dizem que não podem ser executados em metadados ao vivo. Tudo bem por mim. O problema é que eu não sei como tornar os metadados não ativos, enquanto ainda posso dar a thin_dump e thin_check um argumento sobre o que deve ser executado.

Eu vejo que há uma maneira alternativa de usar um instantâneo de metadados para metadados ao vivo, mas não quero fazer isso dessa maneira. Eu não quero mudar nada na unidade neste momento.

# lvs -a
disk1thin           lvm    twi-aot---  <4.53t                     92.10  83.47
[disk1thin_tdata]   lvm    Twi-ao----  <4.53t
[disk1thin_tmeta]   lvm    ewi-ao---- 640.00m
# # Need to de-activate the metadata - this is the only way I know how, but must not be right
# lvchange -an lvm/disk1thin
# lvs -a
disk1thin           lvm    twi---t---  <4.53t
[disk1thin_tdata]   lvm    Twi-------  <4.53t
[disk1thin_tmeta]   lvm    ewi------- 640.00m
# thin_dump <uhh, what goes here?>
# thin_dump lvm/disk1thin
Couldn't stat path
# thin_dump lvm/disk1thin_tdata
Couldn't stat path
# thin_dump lvm/disk1thin_tmeta
Couldn't stat path
# thin_dump lvm/disk1thin-tpool
Couldn't stat path
# ls -la /dev/mapper
# crw-------  1 root root 10, 236 May 31 00:28 control
# # Not listed
# ls -la /dev/lvm/
ls: cannot access '/dev/lvm/': No such file or directory
# lvchange -ay lvm/disk1thin_tmeta
  Operation not permitted on hidden LV lvm/disk1thin_tmeta
# # Nope, that didn't work...

Eu também tentei ativá-los, executando dmsetup suspend neles, mas isso suspende todas as leituras deles, como diz sua página de manual, por isso, embora existam em /dev/lvm , thin_dump e thin_check não podem ser executado sobre eles.

Eu também tentei, uma vez que o thin pool foi desativado:

# thin_dump /dev/sdh3
bad checksum in superblock, wanted 3832019051

E ele diz uma soma de verificação inválida para qualquer outro dispositivo que tenha um volume pequeno. Eu sei que todos os discos não foram ruins, então eu tenho certeza que esta não é uma opção adequada. Embora o thin pool esteja neste dispositivo, o dispositivo começa com um lv menor e não-fino, então a opção não está realmente dizendo para ele procurar no lugar certo o volume fino.

    
por user1902689 03.06.2018 / 23:39

1 resposta

0

Eu não vou marcar isso como a resposta, porque acho horrível. E eu não posso recomendar isso. Funcionou para mim.

Mas deve haver uma maneira melhor. Espero que alguém saiba disso.

Certifique-se de que ABSOLUTAMENTE NADA esteja usando a fina piscina. Você não pode ser iniciado nele.  Se é o volume da sua raiz, você precisa estar usando um ISO. umount de todos os dispositivos de loopback que você possa estar usando, pare os arquivos de permuta, etc. lvchange -an all lv's no thin pool para desativá-los. (Mas não desative o volume fino em si.)

# dmsetup info -c
Name                Maj Min Stat Open
lvm-disk1thin-tpool 253  10 L--w    1...
lvm-disk1thin_tdata 253   9 L--w    0...
lvm-disk1thin_tmeta 253   8 L--w    0...

Certifique-se de que a abertura seja 0 para _tdata e _tmeta . Eu não sei porque o open é 1 para -tpool . Eu não consegui descobrir como fazer isso 0.

# dmsetup remove lvm-disk1thin-tpool
device-mapper: remove ioctl on lvm-disk1thin-tpool  failed: Device or resource busy

Então, por segurança, descubra como fazer isso como 0. Ou, se você for aventureiro:

# dmsetup remove -f lvm-disk1thin-tpool
device-mapper: remove ioctl on lvm-disk1thin-tpool  failed: Device or resource busy
Command failed

Mas, foi?

# lvs -a
  disk1thin                       lvm    twi-XXt-X-  <4.53t
  [disk1thin_tdata]               lvm    Twi-------  <4.53t
  [disk1thin_tmeta]               lvm    ewi-a----- 640.00m

Esses X's são para o Estado desconhecido, Abertura de Dispositivo desconhecida, Volume de Saúde desconhecido.

# thin_dump lvm-disk1thin_tmeta
(YAY, output!)

Em seguida, para reativar o pool thin:

# lvchange -ay lvm/disk1thin

(Você precisará reativar todos os lv's que você desativou, montar novamente e iniciar qualquer coisa que você parou, etc.)

    
por 04.06.2018 / 08:30