Linux: Como criar uma pasta que se comporta como um arquivo?

1

Eu gostaria de poder combinar vários arquivos em um arquivo e poder acessar os arquivos internos sem ter que fazer qualquer tipo de descompactação. Algo como o binário universal para Mac.

Esse formato de arquivo existe?

Editar
Algumas pesquisas adicionais me ajudaram a esclarecer o que eu quero: um sistema de arquivos de arquivo único . Neste ponto, a única opção parece ser um arquivo ISO montado. No entanto, sugestões melhores são sempre bem-vindas.

    
por StackedCrooked 11.12.2009 / 21:26

4 respostas

4

Desembalar / descompactar o arquivo explicitamente não é estritamente necessário. Você quer um FUSE ( Sistema de arquivos no espaço do usuário ) que permite a você mount arquivar arquivos.

Qualquer descompactação / reembalagem necessária é feita no sistema de arquivos, por isso é transparente para os programas que você usaria para acessar ou modificar arquivos dentro de um arquivo montado.

Um desses projetos é archivemount ( link da Wikipédia , tarballs de origem ). Ele e vários outros projetos estão listados na wiki do Sourceforge página ArchiveFileSystems . Projetos diferentes usam bibliotecas diferentes como backends para fazer o trabalho real.

Alguns projetos parecem apenas suportar operações de leitura, mas muitos são jovens e podem incluir recursos de gravação posteriormente.

  • archivemount usa libarchive , acessa arquivos cpio, .tar.gz, .tar.bz2
  • fuse-zip usa libzip , inclui suporte a gravação para arquivos .zip
  • avfs (Um Virtual FileSystem) "suporta disquetes, arquivos tar e gzip, arquivos zip, bzip2, ar e rar, sessões ftp, http, webdav, rsh / rcp, ssh / scp "e outros.

Idealmente, um sistema de arquivos FUSE para arquivos irá funcionar um pouco como o suporte do Windows Explorer para navegar arquivos .zip.

    
por 12.12.2009 / 05:12
4

Sua melhor aposta é observar os formatos compactados de compactação zero. Aqui está um exemplo usando o 7zip da linha de comando no Linux para essa finalidade (embora isso provavelmente não esteja instalado por padrão)

7z a -mx0 archive folder

Para mais respostas, dê uma olhada nessa pergunta semelhante publicada em stackoverflow:

link

    
por 11.12.2009 / 22:03
3

você pode usar o dispositivo de loop: link . Como: link (kudos para Zoredache de serverfault)

    
por 12.12.2009 / 09:25
0

Você pode dar uma olhada em como o klik faz isso: link É muito semelhante ao dmg para Mac e usa o FUSE.

    
por 16.12.2009 / 10:52