0 Compartilhamentos 679 Views 1 Comments

Transferindo arquivos entre servidores Linux via linha de comando com FTP

5 de maio de 2016

O Linux é um sistema operacional bastante versátil. Como sabemos, além disso, ele é amplamente utilizado em servidores web, e geralmente, quem administra tais ambientes, precisa realizar inúmeras tarefas através do SSH (Secure Shell).

A linha de comando, em sistemas Unix, permite que um número enorme de recursos e funções, bem como variações, sejam utilizados, para as mais diversas finalidades.

Transferência de arquivos, por exemplo. Podemos realizar tal procedimento de diversas formas, mas vamos aqui falar a respeito de uma em especial.

Antes, porém, confira alguns artigos relacionados, já publicados aqui mesmo no Código Fonte:

Transferindo arquivos

É extremamente simples transferir arquivos entre um servidor e outro utilizando, por exemplo, o protocolo FTP (“File Transfer Protocol”, ou “Protocolo de Transferência de Arquivos”) através da linha de comando. É possível tanto enviar quanto receber arquivos e pastas, desta maneira, e os procedimentos são bem rápidos.

Download - UploadApós realizar login em um servidor via SSH, utilize o comando “ftp” para se conectar ao servidor remoto, usando uma das alternativas abaixo:

Por exemplo: “ftp 127.0.0.1<ENTER>” ou “ftp host.dominio.tld<ENTER>”.

Logo em seguida, você deverá fornecer os dados de login para a conexão (“Name/User” = Usuário / “Password” = Senha). Confira abaixo:

[email protected] [/]# ftp ipdoservidorremoto
Connected to ipdoservidorremoto (ipdoservidorremoto).
220———- Welcome to Pure-FTPd [privsep] [TLS] ———-
220-You are user number 3 of 50 allowed.
220-Local time is now 13:59. Server port: 21.
220-This is a private system – No anonymous login
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 15 minutes of inactivity.
Name (ipdoservidorremoto:root): usuario
331 User usuario OK. Password required
Password:
230 OK. Current restricted directory is /
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

O usuário e a senha são solicitados de maneira sequencial, e não se preocupe se ao digitar a senha nada aparecer na linha de comando. Continue normalmente e tecle <ENTER> após a inserção da mesma (alguns clientes, como o Bitvise Tunnelier, por exemplo – veja acima – ainda suportam CTRL+C e CTRL+V).

Para a transferência de arquivos, utilizaremos os comandos “get” (para o download / recepção) e “put” (para o envio / upload). Vale lembrar que, após a conexão ao servidor remoto, também podemos utilizar os comandos “cd” (para acessar diretórios) ou “ls”, para listar o conteúdo dos diretórios. O “pwd” também pode ser bastante útil caso você se “perca”.

Confira abaixo:

ftp> ls
227 Entering Passive Mode (ipdoservidorremoto)
150 Accepted data connection
drwxr-x—    3 usuario      99               4096 Sep 18 14:06 .
drwx–x–x    9 usuario      usuario      4096 Sep 18 13:32 ..
drwxr-xr-x    2 usuario      usuario      4096 Sep 18 13:29 cgi-bi
226-Options: -a -l
226 3 matches total
ftp>

Enviando um arquivo via FTP, do servidor local para um remoto

Agora, vamos enviar um arquivo para o servidor remoto. A sintaxe é a seguinte:

Confira:

ftp> put /usertest/Codigofonte.php /public_html/Codigofonte.php
local: /usertest/Codigofonte.php remote: /public_html/Codigofonte.php
227 Entering Passive Mode (ipdoservidorremoto)
150 Accepted data connection
226-File successfully transferred
226 0.012 seconds (measured here), 1.52 Kbytes per second
19 bytes sent in 0.0113 secs (1.69 Kbytes/sec)
ftp>

Ou seja, no exemplo acima, enviamos o arquivo “Codigofonte.php” do diretório “/usertest/”, no servidor local, para o diretório “/public_html/” no servidor remoto.

Baixando um arquivo via FTP, do servidor remoto para o local

Neste caso, a sintaxe é a seguinte:

Confira:

ftp> get /public_html/Codigofonte.php /usertest/Codigofonte.php
local: /usertest/Codigofonte.php remote: /public_html/Codigofonte.php
227 Entering Passive Mode (ipdoservidorremoto)
150 Accepted data connection
226-File successfully transferred
226 0.000 seconds (measured here), 475.68 Kbytes per second
19 bytes received in 2e-05 secs (950.00 Kbytes/sec)
ftp>

No exemplo acima, baixamos o arquivo “Codigofonte.php” do diretório “/public_html/”, no servidor remoto, para o diretório “/usertest/” do servidor local.

Finalizando

E para sair do FTP na linha de comando, basta digitar “quit” e teclar <ENTER>.

Utilizando os comandos “put” e “get”, você pode facilmente realizar transferências de arquivos. Transferências de backups compactados, por exemplo (arquivos .tar.gz, digamos), entre diversos servidores web.

Não se esqueça de observar as sintaxes de cada comando e também os nomes dos arquivos (respeitando maiúsculas e minúsculas ) e seus respectivos locais/pastas/caminhos/paths, conforme suas necessidades, seu ambiente e a utilização.

E fique de olho no Código Fonte para mais dicas como esta.

Carregando...

Você pode se interessar

15 ferramentas de desenvolvimento para melhorar sua produtividade em 2021 sem gastar nada
Artigos
95 visualizações
Artigos
95 visualizações

15 ferramentas de desenvolvimento para melhorar sua produtividade em 2021 sem gastar nada

Carlos L. A. da Silva - 2 de abril de 2021

O cenário de desenvolvimento está em constante mudança e muitas vezes uma ferramenta nova pode agilizar muito seu trabalho.

A tecnologia por trás do deep fake de Deep Nostalgia
Artigos
100 visualizações
Artigos
100 visualizações

A tecnologia por trás do deep fake de Deep Nostalgia

Carlos L. A. da Silva - 22 de março de 2021

Serviço do My Heritage permite "animar" fotos do passado, trazendo vida para seus antepassados. Como isso é possível?

Como se tornar um Engenheiro DevOps em 2021
Artigos
98 visualizações
Artigos
98 visualizações

Como se tornar um Engenheiro DevOps em 2021

Carlos L. A. da Silva - 1 de março de 2021

A consultora de DevOps e evangelista Nana Janashia apresenta um passo a passo de tudo que você precisa saber para dominar o DevOps em 2021.

One Response

Deixe um Comentário

Your email address will not be published.

Mais publicações

Seus dados vazaram. E agora?
Artigos
79 visualizações
79 visualizações

Seus dados vazaram. E agora?

Carlos L. A. da Silva - 19 de fevereiro de 2021
Entendendo o elemento time em HTML 5
Artigos
91 visualizações
91 visualizações

Entendendo o elemento time em HTML 5

Carlos L. A. da Silva - 5 de fevereiro de 2021
Como cortar texto sem usar uma linha de script
Dicas
91 visualizações
91 visualizações

Como cortar texto sem usar uma linha de script

Carlos L. A. da Silva - 11 de janeiro de 2021