Neste guia, confira como usar o comando scp no Linux.
Comando Linux SCP
O comando SCP vem pré-instalado em todas as distritos Linux. Não há necessidade de instalação de pacote adicional.
Trabalhar com SCP exige que o SSH seja instalado nas máquinas locais e remotas. A própria ferramenta SCP usa SSH no núcleo. É refletido durante todo o uso de SCP. A sintaxe e o uso são bastante semelhantes a trabalhar com SSH. Se você tem experiência anterior com o SSH, o SCP será mais fácil de entender. Aqui está um guia rápido sobre como usar o SSH.
Semelhante ao SSH, o comando SCP se conectará a uma determinada conta de usuário no sistema remoto. Você precisa conhecer o nome de usuário e a senha da conta de usuário. Observe que a conta de usuário remoto também deve ter permissão de arquivo para o diretório de destino (no sistema remoto). Aqui está um guia detalhado sobre permissões e propriedade de arquivos Linux.
A transferência de dados com SCP é criptografada, portanto, não há necessidade de temer o roubo de dados.
Usando SCP
Estrutura de comando básico:
Todos os comandos SCP geralmente seguem a seguinte estrutura de comando. Aqui, copiaremos um arquivo da máquina local para a máquina remota.
$ scp: @ : & ltremote_directory>
Aqui está um rápido colapso da estrutura de comando.
Copiar um arquivo local para um diretório remoto
Aqui está um arquivo de texto fictício. É um arquivo de texto de 2 MB contendo texto repetitivo.
$ gat manequim.TXT
O comando SCP a seguir copiará o arquivo de texto para a máquina remota. Use a bandeira "-v" para saída detalhada.
$ scp -v/home/viktor/desktop/manequim.cloudsigma [email protected]:/home/cloudsigma
Se você deseja salvar o arquivo com um nome diferente, deve especificar o nome do arquivo no destino. Por exemplo, o seguinte comando salvará “manequim.txt "como" renomeado-dummy.txt ”na máquina remota.
$ SCP/Home/Viktor/Desktop/Dummy.cloudsigma [email protected]:/home/cloudsigma/renomeado.TXT
Copiando um arquivo remoto para a máquina local
O comando SCP também pode copiar um arquivo remoto para um diretório local.
Para demonstração, “manequim.txt ”é armazenado em uma máquina remota. Para copiá -lo localmente, use o seguinte comando.
$ scp [email protected]:/home/cloudsigma/manequim.txt/home/viktor/
Para salvar o arquivo com um nome de arquivo diferente, especifique o nome do arquivo no comando.
$ scp [email protected]:/home/cloudsigma/manequim.txt/home/viktor/dummy-local.TXT
Copie arquivos entre máquinas remotas
Como a estrutura de comando do SCP sugere, também é possível copiar arquivos entre servidores remotos. Tudo o que você precisa fazer é descrever a fonte e o destino de acordo.
Por exemplo, vamos copiar o arquivo "fictício.txt ”de uma máquina remota para outra.
$ scp -v [email protected]:/home/cloudsigma/manequim.cloudsigma [email protected]:/home/cloudsigma/dummy-copy.TXT
Copiando vários arquivos
E se você quisesse copiar vários arquivos? Dependendo da localização da fonte, o comando pode ficar muito grande.
No exemplo seguinte, vamos copiar Dummy_1.txt, Dummy_2.txt e dummy_3.txt para a máquina remota.
$ SCP Dummy_1.TXT DUMMY_2.TXT Dummy_3.cloudsigma [email protected]:/home/cloudsigma
Se o nome do arquivo seguir um certo padrão, podemos descrever o padrão para escolher o (s) arquivo (s) de origem (s). Neste exemplo, podemos usar o curinga (*) para copiar todos os arquivos de texto.
$ SCP Dummy_*.cloudsigma [email protected]:/home/cloudsigma
Aumentando a velocidade de transferência de arquivos usando compactação
O comando SCP troca tráfego por meio de uma rede. É a largura de banda da rede que determina a velocidade de transferência de arquivos. No entanto, dada uma largura de banda fixa, é possível aumentar a velocidade efetiva de transferência de arquivo usando compactação. A ferramenta SCP possui um recurso embutido.
O único é que os dados são compactados apenas na rede. Quando o arquivo chega ao destino, ele retorna ao tamanho original.
Para ativar a compactação, use a bandeira "-C".
$ SCP -C Dummy_*.cloudsigma [email protected]:/home/cloudsigma/
Algoritmo de criptografia
Como mencionado anteriormente, o SCP criptografa a transferência de dados para evitar roubo de dados. Por padrão, os dados são criptografados usando a criptografia AES-128. É possível usar cifra diferente para criptografia.
Para a cifra, o SCP usa SSH. O seguinte comando ssh listará todas as cifras suportadas. Todos eles são válidos para SCP também.
$ ssh -q cifra
Por exemplo, o comando SCP a seguir usará o algoritmo AES256-CTR para criptografia de arquivo.
$ SCP -C -C AES256 -CTR DUMMY_*.cloudsigma [email protected]:/home/cloudsigma/
Limitação da largura de banda
Por padrão, o SCP usará a largura de banda máxima disponível para copiar arquivos. No entanto, pode ser problemático em várias situações. Por exemplo, usando um script automatizado para backup.
Para limitar a largura de banda, use a bandeira "-l" seguida pelo limite de largura de banda. Aqui, o valor limite da largura de banda será em Kilobits/s (KBPS).
$ scp -c -l 800 manequim.cloudsigma [email protected]:/Home/Cloudsigma/Dummy Remote.TXT
Especificação da porta
Semelhante ao SSH, o SCP usará a porta 22 por padrão. No entanto, se o ssh estiver configurado para operar em uma porta diferente, ele precisa ser declarado no comando.
Para especificar a porta específica, use o sinalizador “-p” seguido pelo número da porta.
$ scp -c -p 1234 manequim.cloudsigma [email protected]:/Home/Cloudsigma/Dummy Remote.TXT
Copiando diretório recursivamente
Semelhante ao comando cp, para copiar um diretório e todos os subdiretos/arquivos nele, use o sinalizador "-r". Se o diretório contiver muitos arquivos/pastas, é recomendável usar a compactação para transferência de dados mais rápida.
Aqui está um diretório de demonstração com arquivos e diretórios fictícios.
$ Tree Dummy
O comando a seguir copiará este diretório para o local remoto.
$ scp -c -r boneco/ [email protected]:/home/cloudsigma
Desativando o medidor de progresso e mensagens de aviso
O comportamento padrão do SCP é relatar o progresso da operação e as mensagens de aviso/diagnóstico na tela. No entanto, é possível desativar todas essas informações de saída. É útil se você estiver implementando o SCP em um script.
Para desativar as mensagens de progressão e aviso/diagnóstico, use a bandeira “-q”.
$ scp -c -q boneco.cloudsigma [email protected]:/Home/Cloudsigma/Dummy Remote.TXT
Conclusão:
Usar o comando scp é muito simples. Tudo que você precisa é ter um entendimento e experiência adequados usando SSH. Estes são apenas alguns dos métodos mais básicos de usar SCP. Para obter informações mais detalhadas sobre o SCP, consulte a página do homem.
$ man scp
Computação feliz!