Gostaria de saber se existe uma maneira de instalar o vdo da Red Hat no Ubuntu 20.04.
Até agora, tentei baixar a fonte e compilá-la, mas recebo o seguinte erro:
cc -fPIC -fpic -D_GNU_SOURCE -g -O3 -fno-omit-frame-pointer -Wall -Wcast-align -Werror -Wextra -Winit-self -Wlogical-op -Wmissing-include-dirs -Wpointer-arith -Wredundant-decls -Wunused -Wwrite-strings -std=gnu99 -pedantic -Wbad-function-cast -Wcast-qual -Wfloat-equal -Wformat=2 -Wmissing-declarations -Wmissing-format-attribute -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wswitch-default -I. -I../uds -Wno-write-strings -DCURRENT_VERSION="\"8.1.0.316\"" -c -MMD -MF .deps/vdoformat.d.new -MP -MT vdoformat.o -o vdoformat.o vdoformat.c
vdoformat.c:22:10: fatal error: blkid/blkid.h: No such file or directory
22 | #include <blkid/blkid.h>
| ^~~~~~~~~~~~~~~
compilation terminated.
Não entendo porque recebo o erro porque tenho o pacote libblkid já instalado.
O que realmente me incomoda é que existe uma página de manual para lvmvdo (o que eu acho que é a "porta" para o Ubuntu do Red Hat VDO), mas apenas diz:
Para uso de VDO com lvm(8) as ferramentas de espaço de usuário VDO padrão vdoformat(8) e o módulo VDO do kernel atualmente não padrão "kvdo" precisam ser instalados no sistema.
Eu realmente tenho o pacote lvm instalado por padrão no Ubuntu 20.04, mas não consigo encontrar a maneira de instalar os pacotes vdoformat nem kvdo .
Você precisa do
libblkid-dev
pacote que contém oblkid/blkid.h
arquivo de cabeçalho.Não, esta não é uma porta do VDO, esta é a integração do VDO no LVM que permite que você crie LVM Logical Volumes com desduplicação e/ou compactação habilitada. Isso não é reimplementação do VDO, o LVM usa o código VDO existente -- a
vdoformat
ferramenta userspace e okvdo
módulo do kernel, então você ainda precisa instalar ambos para fazer a implementação do LVM funcionar.O VDO não está disponível no Ubuntu ( bug da lista de desejos para 20.10 ) então você precisa compilá-lo você mesmo (o que você já iniciou), mas você precisa compilar e instalar manualmente o projeto dm-vdo/vdo que contém as ferramentas do espaço do usuário (incluindo as
vdoformat
usadas por LVM) e o projeto dm-vdo/kvdo que contém o módulo do kernel (esse é okvdo
"pacote" referido na página de manual do lvmvdo).Após vários dias de tentativas e erros... encontrei a maneira de realmente usar vdo no Ubuntu (pelo menos em 20.04)...
Primeiro, uma atualização rápida e depois instale alguns pacotes necessários:
Agora, só para ter certeza, atualize seu kernel (o padrão é 5.4) para 5.9 e reinicie:
Agora você precisará do kvdo que são os utilitários do kernel para poder usar o vdo, próximo comando clone o repositório e depois compile-o:
Em seguida, atualize nosso Module.symvers e copie o módulo kvdo para a respectiva pasta:
Agora pedimos ao kernel que atualize todos os módulos, e então verifique se ele está instalado (se o modprobe kvdo não mostrar nada, então está instalado corretamente):
Você pode testar a versão instalada do kvdo:
As ferramentas do kernel estão instaladas, agora precisamos das ferramentas do espaço do usuário ( vdo ), próximo comando clone o repositório vdo e compile-o:
Você pode testar se está instalado corretamente:
E agora você pode usar o vdo como se estivesse no CentOS....