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.
Respostas