Unix equivalente de pastas inteligentes

1

O que eu quero fazer é apresentar um diretório, cujo conteúdo é originado de uma série de outros diretórios no sistema de arquivos. Seria como um link físico, apenas um link para vários diretórios de uma vez, em vez de apenas um.

O diretório pode ser considerado somente leitura - ou, se forem feitas atualizações em um arquivo, seria bom se essas atualizações ocorressem no arquivo de origem (ou seja, o diretório é uma "janela" em vários locais em o sistema de arquivos)

Se um novo arquivo for criado neste diretório "pseudo", ele deverá ser colocado em algum local padrão ou rejeitado.

Existe funcionalidade semelhante no Windows (nas bibliotecas de nomes) e no OSX (pastas inteligentes) - existe algum equivalente Unix?

    
por Thomas Kimber 29.07.2015 / 15:17

2 respostas

2

Não está disponível como parte do Unix padrão ou de uma interface gráfica do Linux.

Os administradores do sistema Linux podem usar o overlayfs. Na verdade, um dos usos mais importantes é permitir modificações em um sistema LiveCD em execução, por exemplo, instalar pacotes extras.

Existem também equivalentes no FUSE, que podem ser usados no Linux sem privilégios de root. Haverá limitações adicionais do FUSE, mas poderia funcionar bem para os mesmos casos que os recursos que você mencionou. O unionfs-fuse parece estar disponível no Ubuntu. ("union mount" é um termo mais antigo para o conceito).

    
por 29.07.2015 / 15:46
-1

Sua pergunta foi feita aqui .

Eu modifiquei o script do Sr. paxdiablo para se adequar ao seu problema:

#!/bin/bash
while true; do
    mkdir nu
    for i in dir1/* dir2/* dir3/*; do
        ln -s $i nu/$(basename $i)
    done
    mv smartdir ole
    mv nu smartdir
    rm -rf ole
done

Portanto, dir1 , dir2 , dir3 são diretórios aos quais você deseja vincular e smartdir é a "pasta inteligente". Apenas execute isso como uma inicialização. Note que não deve haver arquivos ou pastas no dir{1, 2, 3} , senão você terá f ** ked (bem, então você pode chamar o criador de scripts stupid folders ).

    
por 29.07.2015 / 16:15