Um pool de armazenamento do tipo dir
é um caminho de diretório. O único valor significativo é o próprio caminho do diretório, então todos os outros parâmetros são ignorados. No seu exemplo, /var/lib/libvirt/rhpol_virsh
é um local no sistema de arquivos que será mapeado para o pool de armazenamento rhpol_virsh
.
Outra maneira de visualizar este comando, que eu prefiro, é pelo parâmetro nomeado em vez do parâmetro posicional. Isso também define seu pool como rhpol_virsh
como parte de seu sistema de arquivos, começando em /var/lib/libvirt/rhpol_virsh
:
virsh pool-define-as rhpol_virsh --type dir --target /var/lib/libvirt/rhpol_virsh
Correndo o risco de complicar demais as questões, mas tentando responder às suas perguntas de comentários, a página man define os parâmetros posicionais da seguinte forma:
pool-define-as name --print-xml type [source-host] [source-path] [source-dev] [source-name] [<target>] [--source-format format]
Como a definição do pool não precisa de nada, exceto target
, precisamos que -
espaços reservados cheguem ao target
. Assim pool-define-as rhpol_virsh - - - - /var/lib/libvirt/rhpol_virsh
.
Depois de definir o pool de armazenamento, é necessário iniciá-lo:
virsh pool-autostart rhpol_virsh # Start on boot
virsh pool-start rhpol_virsh # Start now
Você pode ver quais conjuntos de armazenamento estão definidos e seu status com virsh pool-list
. Se você adicionar algo a um pool de armazenamento, talvez seja necessário informar ao libvirt
suite que o conteúdo do pool precisa ser atualizado:
virsh pool-list | awk '/active/{print$1}' | xargs -n1 virsh pool-refresh