blocos livres de thinvolume LVM thinpool, espaço de recuperação

0

Eu uso thinvolumes LVM para inicializar em rede um monte de computadores via iSCSI. De tempos em tempos, libero espaço nessas máquinas. Infelizmente, esse espaço não é liberado nos volumes finos. Então eu partclone as partições de tempos em tempos, para liberar espaço. Na virtualização, você pode usar ferramentas que zero espaço não utilizado, o que o libera. Existe uma maneira semelhante ou melhor para recuperar espaço com thin pools / volumes thin do LVM?

Obrigado antecipadamente

    
por Michael Bruckmeier 30.09.2017 / 16:38

1 resposta

1

O LVM thin suporta DISCARD, mais amplamente conhecido como TRIM. Seria teoricamente possível fazer isso funcionar com o iSCSI (há um comando UNMAP equivalente), mas não encontrei nada sobre isso.

Na máquina que hospeda esses volumes, você pode usar fstrim para liberar espaço livre. A página man ainda menciona explicitamente:

fstrim is used on a mounted filesystem to discard (or "trim") blocks which are not in use by the filesystem. This is useful for solid-state drives (SSDs) and thinly-provisioned storage.

Para que isso funcione, o Linux precisa de suporte para o sistema de arquivos e esse suporte precisa incluir o TRIM. Se seus computadores iniciados na rede executam o Windows, provavelmente é o NTFS. Aparentemente, o NTFS-3G suporta TRIM.

fstrim opera somente em sistemas de arquivos montados.

Será parecido com isto:

Atualização : Conforme discutido nos comentários, o destino SCSI do Linux oferece um sinalizador nos seus backstores de bloco que identificam os SSDs: is_nonrot . Também suporta o comando UNMAP SCSI. O Windows (pelo menos o Windows 10) detecta corretamente os SSDs sobre o iSCSI e emite comandos UNMAP, liberando o espaço não utilizado imediatamente.

    
por 30.09.2017 / 17:37