Compartilhar Diretório entre Containers LXC no Proxmox Usando ZFS

Este tutorial descreve como criar um diretório compartilhado entre dois ou mais containers LXC no Proxmox, utilizando ZFS como backend de armazenamento — sem usar o disco do sistema.

✅ Objetivo

Permitir que múltiplos containers LXC compartilhem um mesmo diretório físico localizado em um dataset ZFS (por exemplo, STOR1), com total persistência e desempenho local.

🧱 Pré-requisitos

  • Proxmox VE com ZFS configurado
  • Containers LXC não privilegiados
  • Acesso root ao Proxmox host

🧭 Etapas

1. Identifique o ZFS pool disponível

Execute no Proxmox host:

zfs list

Exemplo de saída:

NAME                        USED  AVAIL  REFER  MOUNTPOINT
STOR1                      24.8G   874G   128K  /STOR1
STOR1/compartilhado-lxc      96K   874G    96K  /STOR1/compartilhado-lxc
...

Se o dataset /STOR1/compartilhado-lxc ainda não existir, crie:

zfs create STOR1/compartilhado-lxc

2. Ajuste as permissões do diretório compartilhado

chown 100000:100000 /STOR1/compartilhado-lxc
chmod 770 /STOR1/compartilhado-lxc

Isso permite que containers não privilegiados com UID 0 enxerguem o conteúdo com permissões adequadas.

3. Configure os containers LXC

Edite os arquivos de configuração dos containers:

nano /etc/pve/lxc/103.conf
nano /etc/pve/lxc/105.conf

Adicione a seguinte linha em ambos:

mp0: /STOR1/compartilhado-lxc,mp=/mnt/compartilhado

Se mp0 já estiver em uso, use mp1, mp2 etc.

4. Reinicie os containers

pct restart 103
pct restart 105

5. Verifique se o diretório está sendo compartilhado

Dentro de qualquer container:

ls /mnt/compartilhado
touch /mnt/compartilhado/teste.txt

Depois, acesse o outro container e confirme se o arquivo aparece no mesmo local.

📌 Notas finais

  • Esse método é ideal para alta performance local e persistência segura usando ZFS.
  • Permissões adicionais podem ser ajustadas usando grupos dentro dos containers.
  • Esse bind é gerenciado diretamente pelo Proxmox via lxc.conf, e sobrevive a reboots.

Artigos Relacionados

Respostas