Unrar arquivos locais para o servidor remoto [duplicado]

0

Eu tenho dois servidores Linux, um que tem vários arquivos RAR e outro vazio. Eu gostaria de extrair os arquivos e mover o conteúdo para o Servidor 2.

O problema é: eu não tenho armazenamento suficiente para extrair os arquivos no Servidor 1. Também não posso usar o SSHFS, já que nenhum módulo do FUSE pode ser carregado no Servidor 1.

Eu vi que unrar tem a opção p que envia a saída para STDOUT. É de alguma forma possível usar isso para resolver o problema?

    
por Force 23.04.2014 / 18:47

1 resposta

1

Embora eu suponha que o comando unrar p possa ser teoricamente utilizável, ele faria com que todos os arquivos do arquivo fossem impressos um após o outro no mesmo fluxo, o que permitiria que você resolvesse como analisá-lo e separá-lo em arquivos diferentes novamente.

Como o objetivo parece ser evitar o armazenamento dos arquivos no host de destino antes de extraí-los, provavelmente faria sentido fazer o streaming do arquivo como está e fazer a extração localmente no destino, onde os arquivos extraídos podem ser escrito separadamente. No entanto, embora essa abordagem funcione bem, por exemplo, com um .tar.gz , um .cpio.gz ou algo assim, no caso de um .rar archive, isso não funciona, pois o formato não é streamable é obrigatório).

Acredito que sua melhor opção, como foi sugerido nos comentários da pergunta, é copiar os arquivos e depois extraí-los (possivelmente um de cada vez). Se isso é algo que você estará fazendo repetidamente, considere mudar para um formato de arquivo mais adequado.

    
por 23.04.2014 / 21:12

Tags