A resposta curta é "olhe para mhddfs " - é um sistema de arquivos virtual que permite que você junte unidades em exatamente maneira que você contempla. Parece que tem uma limitação na medida em que escolhe a primeira unidade com espaço suficiente para o arquivo. Existem outras maneiras de resolver esse problema, mas elas criam seus próprios problemas.
Eu noto que o RAID não pode se encaixar na resposta, pois o RAID cria dependências de disco e opera no nível de dispositivo de bloco. Suas soluções precisam residir no nível do sistema de arquivos - porque você quer poder ler os discos em outro lugar e de forma independente, o que significa que cada disco precisa ter um sistema de arquivos.
O restante desta resposta pode ser interessante se o mhddfs não atender aos seus requisitos (ou você não conseguir fazê-lo funcionar) - As respostas são apenas parciais, pois deparei com a resposta completa enquanto pesquisava a segunda resposta parcial. Eles fornecem alternativas interessantes que são mais conhecidas e aceitas.
O que leva às duas soluções parciais:
- Use links simbólicos. Vamos dizer que você tem 3 discos, cada um com uma única partição com um sistema de arquivos EXT4 (o tipo de sistema de arquivos provavelmente não é tão importante). Os discos são / dev / sda1 / dev / sdb1 e / dev / sdc1
Você poderia (por exemplo) criar montagens como
/dev/sda1 /media/disk1 /dev/sdb1 /media/disk2 /dev/sdc1 /media/disk3
Para este exemplo, você desejará criar subdiretórios, por exemplo
mkdir /media/disk1/books mkdir /media/disk2/movies/drama mkdir /media/disk2/books/old mkdir /media/disk3/movies/scifi
Você também desejará configurar diretórios em seu "espaço de destino", so / data / books; / data / movies; / data / movies / drama; / data / movies / scifi
E, em seguida, sob / data, crie links simbólicos para as partes apropriadas do disco, por exemplo
ln -s /dev/disk1 /data/books
ln -s /dev/disk2 /data/books/old
ln -s /dev/disk2/drama /data/movies/drama
ln -s /dev/disk3/scifi /data/movies/scifi
Desta forma, desde que você ainda tenha uma hierarquia organizada de espaço, você pode ligar simbolicamente as coisas conforme necessário. Você pode, desta maneira, espalhar a informação por vários discos e fazer com que apareça como um.
A outra solução é usar algum tipo de sistema de arquivos de sobreposição. Isso permite combinar vários sistemas em um único sistema maior usando prioridades. Diferentes distros possuem diferentes versões, com diferentes sintaxes. As variantes comuns são boas para ler aufs, overlayfs, unionfs. Estes são, no entanto, geralmente bons para a leitura, mas não tão bons para a escrita, pois geralmente só permitem escrever em um único lugar de cada vez.