Eu estive lendo aleatoriamente sobre o sistema de arquivos union, que permite que um usuário monte vários sistemas de arquivos um sobre o outro simultaneamente.
No entanto, estou tendo problemas para decidir sobre qual deles usar (Unionfs vs Aufs vs Overlayfs vs mhddfs) e por que, como não encontrei informações concretas sobre o assunto em nenhum lugar. Eu sei, por exemplo, que o overlayFS foi adotado no kernel Linux principal, o que significa que ele pode ter uma adoção mais ampla. Gostaria que alguém me desse alguma perspectiva.
Também não consigo encontrar nenhum caso de uso concebido para o sistema de arquivos Union sobre algo como LVM (recomendado pelos usuários em perguntas separadas ) ou configuração de RAID, exceto no fato de que o LVM requer a formatação de todas as unidades que talvez não sejam desejáveis se você já possui dados valiosos nas unidades.
Respostas:
Aqui estão alguns pensamentos - eu ainda estou aprendendo isso e atualizarei isso à medida que for avançando.
Como escolher o sistema de arquivos da união
Há duas maneiras de analisar isso:
Vou comparar o unionfs / unionfs-fuse / overlayfs / aufs / mergerfs, sendo este último um substituto para mhddfs.
Características de cada um
Estado de Desenvolvimento
Distribuição / suporte ao Kernel
Existem sistemas de arquivos no modo kernel e no sistema de usuários, este último executado no FUSE. Os do modo kernel têm menos sobrecarga (existe sobrecarga quando o código alterna entre o espaço do usuário e o espaço do kernel), mas o único atualmente suportado no kernel Linux é o overlayfs . Os sistemas de arquivos no modo de usuário são mais fáceis para as distribuições empacotar.
Copiar na gravação
Isso está relacionado ao caso de uso do Live CD abaixo:
Casos de uso
Raiz somente leitura / O caso de uso do Live CD
A idéia é ter um CD-ROM / partição somente leitura de um sistema Linux. O sistema de arquivos da união faz com que o usuário pareça um sistema de leitura e gravação para que ele possa fazer alterações. Há um sistema de arquivos de leitura e gravação (por exemplo, um disco RAM tmpfs) que armazena o "Delta" de todas as alterações feitas pelo usuário, mas não o instantâneo completo.
Aqui qualquer um dos sistemas de arquivos da união faria.
Caso de uso do Docker
Estou ciente de que este é um caso de uso principal, mas não conheço os detalhes - alguém pode fornecer orientações sobre isso?
Mesclando discos rígidos
Por exemplo, você pode ter dois conjuntos de
/home
diretórios em sistemas de arquivos diferentes. Ou você pode estar atualizando seu computador doméstico com um segundo disco rígido e desejar um único volume lógico.É aqui que você realmente não deseja copiar na gravação, portanto, possivelmente o mergerfs é a melhor escolha.
Sistema de arquivos Union versus LVM para pool de disco
Vou listar alguns casos de uso que podem ser alcançados com sistemas de arquivos union, mas não com o LVM:
Se você estiver atualizando um sistema existente com um segundo disco, algo como o mergerfs pode ser melhor porque o LVM exigiria que você reformatasse o primeiro disco rígido, destruindo assim os dados nele. Um sistema de arquivos da união evitaria essa etapa.
O LVM pode dividir um arquivo em dois discos rígidos físicos (assumindo RAID 0), para que você o perca se um disco rígido falhar.
Alguns usuários podem gostar, por exemplo, de manter seu
/home
diretório em um pendrive que eles podem levar.No caso de uso de uma partição virtual em dois discos físicos, com o LVM, você não precisa se preocupar se os arquivos são salvos em um disco ou no outro. Com o mergefs, o sistema pode escolher automaticamente qual deles, dependendo da quantidade de espaço disponível.
fonte
Depende do que você quer fazer
veja o Docker (ou outro Containerization) - esse é um caso de uso https://docs.docker.com/engine/userguide/storagedriver/
fonte