Restaure o arquivo dos fragmentos sem copiar ou mover dados

0

Em sistemas Unix, os arquivos podem ser unidos usando o utilitário cat (os sistemas Windows têm type ou copy /B ).

cat file1 file2 file3 > joined-file

Isso pega o conteúdo dos arquivos antigos e os copia em um único arquivo novo. O processo leva o tempo necessário para ler os arquivos antigos e escrever o novo. O novo arquivo é armazenado separadamente nos arquivos antigos, portanto, o comando falhará se não houver espaço livre em disco suficiente para gravar o novo arquivo.

Existe uma maneira mais rápida de combinar os arquivos ou, pelo menos, "enganar" os programas, fazendo-os pensar que os arquivos são combinados, o que não envolve mover ou copiar dados no disco?

Uma maneira de fazer isso pode ser modificar o TOC do sistema de arquivos para que os arquivos sejam tratados como fragmentos do um arquivo maior. Existe uma maneira "segura" de fazer isso (por exemplo, é mais seguro do que usar dd para modificar o TOC manualmente)?

Estou interessado em qualquer método de juntar os arquivos, em qualquer plataforma, que seja mais rápido e exija menos espaço em disco do que concatenar fisicamente os arquivos.

    
por HullCityFan852 15.04.2018 / 01:47

1 resposta

0

Eu postulei que isso poderia ser possível usando algum tipo de sistema de arquivos de sobreposição em cima de um existente (modificar um existente é uma receita para o desastre), então você provavelmente poderia escrever algo para Linux usando o FUSE (sistema de arquivos no espaço do usuário) )

Em uma cotovia eu pesquisei e descobri que alguém já implementou isso - existe um projeto chamado GIT concat-fusível - link - que parece fazer o que você está descrevendo.

    
por 15.04.2018 / 05:41