FunionFS está disponível tanto no Fedora quanto no Red Hat EPEL. O nome do pacote, é claro, é funionfs
.
Eu não consigo encontrar o Aufs no Fedora do Redhat, ou qualquer outro sistema de arquivos empilhável para esse assunto.
Parece que isso se deve a limitações de reclassificação do SELinux.
Existe uma maneira de conseguir semelhante sem recorrer a cópia de arquivo / dir.
Eu tenho a seguinte lista de diretórios:
/proj/online/src/main/java
/proj/online/src/main/resources
/proj/online/src/test/java
/proj/client/src/test/scala
/proj/common/src/main/resources
/proj/common/src/main/scala
/proj/common/src/test/resources
/proj/common/src/test/scala
/proj/integration/src/main/resources
/proj/integration/src/main/scala
/proj/integration/src/test/scala
/proj/mockfeedserver/src/main/scala
/proj/mockfeedserver/src/test/scala
/proj/server/src/main/scala
/proj/server/src/test/scala
/proj/foit/src/main/resources
/proj/foit/src/main/scala
/proj/foit/src/test/resources
/proj/foit/src/test/scala
Eu quero apresentar o seguinte para o compilador *:
/ tmp / foo / src / main / scala / tmp / foo / src / main / resources / tmp / foo / src / test / scala / tmp / foo / src / test / resources
Com o AUFS, eu poderia ter conseguido isso com alguns comandos como este:
mount -t aufs -o br=r:/proj/common/src/main/scala=r:/proj/integration/src/main/scala=r:/proj/mockfeedserver/src/main/scala=r:/proj/server/src/main/scala=r:/proj/foit/src/main/scala=r -o udba=reval none /tmp/foo/src/main/scala
Então, isso teria montado / tmp / foo / src / main / scala como o composto de todos os diretórios src / main / scala.
Ótimo, mas estou no Fedora! Na ausência do AUFS ou do UnionFS, não consigo realmente ver uma maneira de conseguir isso. Já ouvi falar de mount rebinding antes, pode ajudar ou devo mudar minha distribuição?
FunionFS está disponível tanto no Fedora quanto no Red Hat EPEL. O nome do pacote, é claro, é funionfs
.
Você pode instalar o kernel pré-patcher do Fedora com o suporte aufs do repositório do Copr ou criar um kernel com suporte aufs
Instruções para instalar o kernel do patcher Fedora com suporte aufs:
sudo dnf copr enable gipawu/kernel-aufs
sudo dnf update
Instruções para construir o kernel do Fedora com suporte aufs:
Vamos começar instalando as dependências necessárias para compilar o kernel
yum install gcc rpmbuild glibc-static git
git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
git clone http://git.code.sf.net/p/aufs/aufs3-standalone
cd linux-2.6
git checkout v3.8
cd ..
patch -d linux-2.6 -p1 < aufs3-standalone/aufs3-base.patch
patch -d linux-2.6 -p1 < aufs3-standalone/aufs3-proc_map.patch
patch -d linux-2.6 -p1 < aufs3-standalone/aufs3-standalone.patch
patch -d linux-2.6 -p1 < aufs3-standalone/aufs3-kbuild.patch
cd aufs3-standalone/
cp -ar fs/aufs ../linux-2.6/fs/
cp include/linux/aufs_type.h ../linux-2.6/include/linux/
cp include/uapi/linux/ ../linux-2.6/include/uapi/linux/
Agora vamos criar o kernel que é corrigido com o código aufs.
Ative o suporte aufs no menu principal– > Sistemas de arquivos - > Misc. Sistemas de arquivos - > Suporte AUFS
make menuconfig
Agora, podemos compilar o kernel diretamente ou criar um rpm
make modules_install
make bzimage
make install
make headers_install
ou simples,
make rpm-pkg
e depois instalar o novo kernel e o kernel-headers rpm.
Reinicialize o sistema com o novo kernel.
Somente o unionfs baseado em fusível está disponível no RHEL por meio de pacotes de terceiros:
Tags fuse fedora filesystems redhat aufs