Cómo subir o descargar carpetas completas y archivos mediante FTP por la consola de Linux – NCFTP

Quieres descargar o mover archivos con la terminal de Linux de un servidor a otro? O quieres guardar una copia de seguridad de tu página web en tu PC local, usando la consola? Entonces sigue leyendo porque aquí te demostraré cómo usar FTP sin un cliente de interfaz gráfica!

Instalación de NCFTP

Antes de comenzar a usar los comandos de este tutorial necesitas tener instalado la herramienta NCFTP en tu PC.

Si usas Ubuntu o Debian, ejecuta este comando como usuario root:

apt-get install ncftp

y confirma la instalación presionando [Enter].

Si prefieres el sistema CentOS, entra en éste enlace para instalar el repositorio necesario para tu version de CentOS (5.x, 6.x o 7.x). Después de instalar el repositorio de software ejecuta:

yum update
yum install ncftp

Confirma la instalación escribiendo “y” y presionando [Enter].

Ya está instalada la aplicación NCFTP en tu Computadora? A usarla!

En el caso que quieras descargar un sitio web, una carpeta completa o un archivo determinado mediante FTP usando la consola o terminal de Linux, usa el siguiente comando:

ncftpget -R -v -u <User> -p '<Password>' <Hostname> <Local_Path> <Remote_Path>

Reemplaza:

  1. <User> con el nombre de usuario FTP del servidor remoto.
  2. <Password> con la contraseña del usuario FTP (entre comillas).
  3. <Hostname> con la dirección o IP del servidor remoto.
  4. <Local_Path> con un directorio local existente al cual quieres descargar los archivos. Ejemplo: “/var/www/html” (sin comillas).
  5. <Remote_Path> con un directorio en el servidor remoto que quieres descargar. Ejemplo: “/public_html/” o sólo “/” (sin comillas).

Presiona la tecla [Enter] y espera… La transferencia puede tardar un poco para empezar – más si son muchos archivos que quieres transferir.

En el caso que quieras subir un sitio web, una carpeta completa o un archivo determinado, usa el siguiente comando:

ncftpput -R -v -u <User> -p '<Password>' <Hostname> <Local_Path> <Remote_Path>

Reemplaza <User>, <Password>, <Hostname>, <Local_Path> y <Remote_Path> con los mismos datos que en el comando anterior.

Presiona la tecla [Enter] y espera…

Información adicional – Parámetros de comando

El parámetro “-R” de “Recursive” sirve para descargar o subir las carpetas con todos sus contenidos, ya sean más subcarpetas o archivos.

El parámetro “-v” de “verbose” sirve para mostrar el progreso de la transferencia de archivos. No es necesario usar éste parámetro.

Recomendación

Si usas estos comandos para mover carpetas y archivos de un servidor remoto a otro servidor remoto utilizando SSH y si la cantidad de archivos a transferir es muy grande, usa la herramienta screen para hacer la transferencia.

Para ello, crea un archivo temporal “ftp.sh” en tu servidor (no importa en qué carpeta esté) con el comando de ncftpget o ncftpput que quieres ejecutar, modifica los permisos del archivo para poder ejecutarlo (chmod +x ftp.sh) y ejecuta el archivo con screen:

screen –mS ftp ./ftp.sh

Ahora, si de repente se interrumpe la conexión entre tu PC local y el servidor remoto, la transferencia no se cancelará sino que seguirá hasta finalizar.

Espero que te haya servido en algo éste artículo 😉 Si tienes preguntas o algo que decir me encantaría si te tomaras el tiempo dejar un comentario aquí abajo. Además sería genial si podrías votar por artículo y compartirlo!

Jens Wagner

Fundador de Fosforito.Net y aficionado de las tecnologías de información, del viajar y cocinar. Trabaja en la IT y mantiene éste blog actualizado desde 2012.

2 comentarios en “Cómo subir o descargar carpetas completas y archivos mediante FTP por la consola de Linux – NCFTP”

  1. Hola Jens,
    Gracias por compartir tus conocimientos lo primero.
    Tengo una duda: si quiero llevar un fichero de una maquina windows a una linux y necesito que se grabe en esta ultima con permisos 777 ¿como puedo utilizar el chmod?
    Un saludo

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio está protegido por reCAPTCHA y se aplican la política de privacidad y los términos de servicio de Google.