Transferir arquivos de um servidor linux para outro

Linux em um ambiente de múltiplos servidores, muitas tarefas incluem mover arquivos de um servidor para outro. Dependendo do número de arquivos que precisam para se mover, existem vários comandos que podem ajudá-lo ... Vamos supor que, neste caso, que os nossos servidores estão Alice e Madhat, e que o nosso usuário é alice coelho, e nossa Madhat usuário é fieldmouse.

passos

1
Para um único arquivo, use o comando "scp". Você pode usar este comando como um comando "empurrão" ou "puxar", Mas vamos começar a passar o arquivo de um servidor para outro. Quando você está no alice, use o comando "scp meuarquivo fieldmouse @ Madhat: thisfile". Isso irá copiar o arquivo para o outro sistema, dentro do usuário fieldmouse, com o nome "thisfile". Se você já havia assinado anteriormente em outro sistema, você poderia simplesmente passar o arquivo com o comando "coelho scp @ alice: myfile thisfile"E obter os mesmos resultados.


  • 2
    Para copiar uma pasta inteira, podemos usar o comando "scp" novamente. Desta vez, adicionar a etiqueta -r, para fazer a cópia é feita sob a forma "recursiva". "scp -r micarp fieldmouse @ Madhat:." irá copiar a pasta "micarp" completar no outro sistema, incluindo todo o conteúdo e subpastas adicionais. A pasta ainda serão chamados Madhat "micarp".


  • E se você tivesse um grande "confusão" Arquivos e pastas para copiar? Você pode usar o comando "alcatrão" para criar um único arquivo, em seguida, copie o arquivo como explicado acima, e depois usar tar para expandir no outro servidor ... Mas isso pode parecer um pouco ... Anti-Linux. Deve haver uma maneira de fazer isso em uma única etapa, certo? Claro que sim! Shell usado em seu cachimbo favorito. Podemos também usar tar para empacotar todos os arquivos que você quer, e então usar ssh para passar para o outro sistema (que é o que tem vindo a utilizar o scp secretamente), e alcatrão do outro lado para descompactar os arquivos. Mas por que desperdiçar tempo e no espaço, criando um arquivo tar, quando podemos criar um gasoduto para ligar os dois sistemas e, assim, transferir os dados? Usando o mesmo diretório como no exemplo anterior, tente o seguinte "tar cf - micarp / * | ssh fieldmouse @ Madhat `tar xf -`" .



    dicas

    • Ao usar os comandos acima, você deve substituir o nome do host / arquivo nome de usuário / nome / pasta de acordo com suas configurações e seu ambiente de rede. Os comandos acima são apenas exemplos de execução de comandos para copiar arquivos para o servidor.
    • Naturalmente, existem outras maneiras de fazer isso também. Linux é cheio de ferramentas.

    avisos

    • Certifique-se de corresponder ao seu ID de usuário e grupo (UIDs e GIDs) em sistemas que estão usando (e não apenas usuário). Se não o fizerem, eles ocorrem problemas de segurança bastante interessante.

    RELACIONADOS

    Artigos Relacionados