Como fazer OverlayFS com vários Upperdirs?

Como fazer OverlayFS com vários Upperdirs?

Eu tenho os seguintes diretórios:

/var/steamcmd
/var/servers/1/custom
/var/servers/2/custom
/var/servers/3/custom
... there could be many directories like this, not just 3.

Meu objetivo é tornar o diretório steamcmda base, e para cada customdiretório quero que os arquivos sejam mesclados com a base, assim se houver um arquivo em ambos custome steamcmdentão customserá priorizado.

Para fazer isso decidi primeiro focar em um diretório ( /var/servers/1/...) e criei outros 2 diretórios, então meus diretórios são:

/var/steamcmd ---------------> lowerdir
/var/servers/1/custom -------> upperdir
/var/servers/1/overlayWork --> work directory
/var/servers/1/steamcmd -----> the merged folder

Eu criei este comando, mas sem sucesso:

$ mount -t overlay -o \
lowerdir=/var/steamcmd,\
upperdir=/var/servers/1/custom,\
workdir=/var/servers/1/overlayWork \
/var/servers/1/steamcmd

Estou recebendo o seguinte erro ao executar:

mount: /var/servers/1/steamcmd: não foi possível encontrar em /etc/fstab.

Como faço para corrigir isso? e posso fazer isso funcionar com vários diretórios como apresentado acima? ( /var/servers/{X}/custom)

Responder1

Você precisa overlaycomo primeiro parâmetro posicional, como em:

mount -t overlay \
-o lowerdir=/var/steamcmd,\
upperdir=/var/servers/1/custom,\
workdir=/var/servers/1/overlayWork \
overlay /var/servers/1/steamcmd
#^^^^^#

O extra overlaytambém pode preceder o -o:

                 #vvvvv#
mount -t overlay overlay \
-o lowerdir=/var/steamcmd,\
upperdir=/var/servers/1/custom,\
workdir=/var/servers/1/overlayWork \
/var/servers/1/steamcmd

Sem este parâmetro posicional, mountassumirá que suas opções estão definidas em /etc/fstab; daí sua mensagem de erro.

informação relacionada