Tutorial LFTP sobre Linux con ejemplos

Tutorial LFTP sobre Linux con ejemplos

Ciertamente no hay escasez de cliente FTP en Linux: algunos vienen con una interfaz gráfica de usuario como Filezilla, otras son aplicaciones de línea de comandos que se pueden usar incluso cuando los servidores de visualización, como Xorg o Wayland no están disponibles. En este artículo hablamos sobre uno de los clientes CLI FTP más utilizados y ricos en características: LFTP.

En este tutorial aprenderás:

  • Cómo instalar LFTP en las distribuciones de Linux más utilizadas
  • Cómo conectarse y autenticarse con un host remoto
  • Cómo crear, eliminar, editar y enumerar marcadores
  • Algunos de los comandos LFTP más utilizados
  • Cómo ejecutar comandos de forma no interactiva
  • Cómo descargar archivos torrent con LFTP
Tutorial LFTP sobre Linux con ejemplos

Requisitos y convenciones de software utilizados

Requisitos de software y convenciones de línea de comandos de Linux
Categoría Requisitos, convenciones o versión de software utilizada
Sistema Distribución independiente
Software LFTP
Otro Permisos de raíz para instalar el paquete LFTP
Convenciones # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio
$-Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado

Instalación

Como se describe en su página manual, LFTP es un programa sofisticado de transferencia de archivos que permite conexiones a hosts remotos que utilizan una variedad de protocolos como FTP, FTPS, SFTP, HTTP, HTTPS, protocolos BitTorrent, etc. Al ser de código abierto, el programa está disponible en el repositorio de todos los sistemas operativos basados ​​en Linux más utilizados; Instalar la aplicación en Debian y sus derivados como Ubuntu y Linux Mint es solo una cuestión de ejecutar:

$ sudo apt-get update && sudo apt-get install lftp 

En versiones recientes de Fedora, el paquete se puede instalar utilizando el DNF Administrador de paquetes, solo emitiendo el siguiente comando:

$ sudo dnf instalación LFTP 


Si Archlinux es su controlador diario, puede instalar LFTP usando Pacman. El paquete está disponible en el repositorio "extra":

$ sudo Pacman -S LFTP 

Con el software instalado en nuestro sistema, podemos comenzar a echar un vistazo a algunas de sus características más interesantes.

Conectarse a un servidor remoto

Cuando usas LFTP Básicamente, hay dos formas en que podemos conectarnos a un host remoto. El primero es invocar la aplicación desde nuestro shell y proporcionar la URL del host remoto, el segundo es usar el abierto Comando, cuando ya está en el aviso de LFTP.

Conectarse a un host remoto al invocar LFTP

Para conectarse a un host remoto al invocar la aplicación LFTP desde nuestro shell, todo lo que tenemos que hacer es proporcionar la URL de la máquina remota, tal como se muestra en el siguiente ejemplo:

$ lftp ftp: // ftp.servidor remoto.comunicarse 

Después de iniciar el comando, si la conexión con el host remoto es exitosa, se nos presentará con el mensaje LFTP, listo para aceptar nuestros comandos (también podemos ingresar el indicador LFTP simplemente invocando la aplicación sin ninguna opción o argumento):

LFTP FTP.servidor remoto.com: ~> 

En este punto, dado que ya estamos conectados al host remoto, para autenticarnos podemos usar el acceso alias, o el usuario Comando (el primero es solo un alias incorporado para el segundo). Para realizar la autenticación lo haríamos
Por lo tanto, corre:

LFTP FTP.servidor remoto.com: ~> Iniciar sesión en nuestro nombre de Ourpassword 

Si no se proporciona la contraseña, se le preguntará de manera interactiva:

LFTP FTP.servidor remoto.com: ~> Iniciar sesión OurUsername Password: 

Finalmente, para lograr una autenticación completamente no interactiva, las credenciales de inicio de sesión se pueden proporcionar directamente en la URL que pasamos a LFTP para la conexión:

$ lftp ftp: // ourUsername: [email protected] remoto.comunicarse 

Conectarse a un host remoto cuando está en la solicitud de LFTP

Para conectarse a un host remoto cuando ya usa el indicador LFTP, debemos usar el abierto comando, que usa la siguiente sintaxis:

Abrir [Opciones] Sitio 

Para conectarnos a la misma máquina remota ficticia que utilizamos en el ejemplo anterior, ejecutaríamos:

LFTP: ~> Abrir ftp: // ftp.servidor remoto.comunicarse 

El abierto El comando, cuando se usa como en el ejemplo anterior, simplemente nos conectará al host remoto, sin realizar ninguna autenticación. Sin embargo, es posible proporcionar información de inicio de sesión a través del --usuario y --contraseña opción. Por ejemplo, para conectar e iniciar sesión en la máquina remota con nuestras credenciales, ejecutaríamos:

LFTP: ~> Abrir ftp: // ftp.servidor remoto.com -user ouruserName --sword ourpassword 

Alternativamente, podemos proporcionar la información de inicio de sesión como parte de la URL, tal como lo hicimos antes:

lftp: ~> abre ftp: // ourUsername: [email protected] remoto.comunicarse 

Creación y administración de marcadores

Para acceder y autenticarse fácilmente a un host remoto, sin tener que proporcionar toda la información necesaria cada vez que deseemos conectarnos a él, podemos crear marcadores. Para lograr esta tarea podemos usar el marcador comando cuando está en la solicitud de LFTP. El comando acepta una serie de subcomandos que nos permiten crear y manipular marcadores; Veamos que son.

Creación de un marcador (Agregar subcomando)

El primer subcomando, agregar, Permítanos crear un nuevo marcador. Todo lo que tenemos que proporcionar es el nombre que queremos usar para el marcador y la información de conexión. Por ejemplo, para crear un marcador para ftp: // ftp.servidor remoto.comunicarse que incluye la información de inicio de sesión que ejecutaríamos:

LFTP: ~> Bookmark RemoteHost ftp: // ouruser: [email protected] remoto.comunicarse 

Como puede ver, proporcionamos la contraseña para la autenticación en la máquina remota como parte de la URL que se utilizará con el marcador. Aquí debemos notar dos cosas importantes: la primera es que, por defecto, las contraseñas no se almacenan en el archivo de marcadores (~/.local/compartir/lftp/marcadores o ~/.LFTP/marcadores) a menos que especifiquemos la opción Establecer BMK: Guardar pasas y sí En el archivo de configuración de la aplicación (la configuración por usuario se almacena en el ~/.LFTPRC o ~/.LFTP/RC archivos, el archivo de configuración de todo el sistema, en su lugar, es /etc/lftp.confusión).

La segunda cosa a notar es que las contraseñas se almacenan en forma de texto y esto podría representar un riesgo de seguridad si no se puede confiar en la máquina en la que estamos trabajando.

Proporcionar la URL que se utilizará para un marcador no siempre es necesario. Si ya estamos conectados al host remoto para el que estamos creando un marcador, podemos invocar el marcador comandar y proporcionar solo el nombre del marcador que queremos usar:

LFTP [email protected] remoto.com: ~> marcador remoto 

Para usar el marcador "Remotehost" y conectarse al host remoto correspondiente, ejecutaríamos:

$ LFTP RemoteHost 

O, usando el abierto dominio:

LFTP: ~> Abra RemoteHost 


Eliminar un marcador (del subcomand)

Eliminar un marcador es realmente fácil: todo lo que tenemos que hacer es usar el deleño subcomando y proporcione el nombre del marcador que queremos eliminar, por ejemplo:

LFTP: ~> Bookmark del Remotehost 

Edición de marcadores (editar subcomando)

Para editar nuestros marcadores podemos usar el editar subcomando. Una vez que lo ejecutemos, el archivo que contiene los marcadores se abrirá en nuestro editor de texto predeterminado:

LFTP:-> Editar marcador 

Todo lo que tenemos que hacer es hacer los cambios apropiados y entonces guardarlos como lo haríamos normalmente. El archivo de marcadores también se puede editar invocando a nuestro editor directamente (es solo un archivo de texto, nada oscuro), cuando no está en la solicitud de LFTP.

Lista de marcadores (subcomando de la lista)

Para enumerar todos nuestros marcadores, todo lo que tenemos que hacer es usar el lista subcomando. La lista de marcadores se informará en la pantalla, y si las contraseñas se almacenan dentro de ella, se enmascarará con un X personaje:

LFTP:-> Lista de marcadores RemoteHost ftp: // ouruser: [email protected] remoto.com/ 

Comandos LFTP

Hasta ahora acabamos de ver cómo conectarnos, autenticar y crear marcadores con LFTP. Ahora veamos algunos de los comandos más útiles que podemos usar cuando se conectan a un servidor remoto. Para obtener una lista completa de los comandos disponibles, podemos escribir ayuda y presione ENTER, cuando esté en la solicitud de LFTP:

LFTP: ~> Ayuda 

Enumerar el contenido de un directorio remoto

Lo primero que podemos querer hacer cuando se establece una conexión y estamos autenticados en un servidor remoto, es enumerar el contenido del directorio de trabajo remoto. Para lograr la tarea, tal como lo haríamos localmente, podemos usar el LS dominio:

LFTP [email protected] remoto.com:/> ls dr-xr-xr-x 2 19304109 19304109 4096 7 de julio de 2016 . DR-XR-XR-X 2 19304109 19304109 4096 7 de julio de 2016 ... [...] 

De la misma manera, para cambiar el directorio de trabajo remoto, podemos usar el cd dominio. ¿Qué pasa si queremos ejecutar la versión "local" de esos comandos para enumerar el contenido de nuestro directorio de trabajo local o cambiarlo?? Todo lo que tenemos que hacer es prefijo los comandos con un ! (marca de exclamación): todos los comandos con ese prefijo se considerarán como comandos de shell locales. En el siguiente ejemplo, enumeramos el contenido de nuestro directorio de trabajo local:

LFTP [email protected] remoto.com:/> !LS Documentos de escritorio Descargas Música Fotos de plantillas públicas Videos 

Editar un archivo remoto

Para editar un archivo remoto podemos usar el editar dominio. Cuando lo hacemos, el archivo remoto se recupera a un directorio temporal en nuestra máquina local, y se abre en nuestro editor de texto predeterminado. Una vez que el contenido se cambia y se guarda,
El archivo se vuelve a cargar automáticamente.

Recuperar y cargar archivos y directorios

Para recuperar un archivo remoto a nuestro directorio de trabajo local, podemos usar el conseguir dominio. En su uso básico, proporcionamos la ubicación del archivo remoto y, opcionalmente, la ruta local donde se debe guardar (de forma predeterminada, el archivo se guardará utilizando su nombre de base). Para guardar el control remoto muestra de wp-config.php archivo remoto localmente, como muestra.php, Corríamos:

LFTP [email protected] remoto.com/> obtener wp-config-sample.Muestra de PHP -O.php 

Múltiples archivos se pueden descargar a la vez repitiendo la misma sintaxis.

Para realizar la operación opuesta, para cargar un archivo local en el host remoto, podemos usar el poner dominio. Básicamente, proporcionamos la ruta del archivo local que se cargará como argumento al comando. Si el archivo debe guardarse de forma remota con un nombre diferente, lo proporcionamos como el argumento del -O opción, tal como lo hicimos arriba. En el siguiente ejemplo, cargamos el archivo local muestra de wp-config.php, y guárdelo en el host remoto como muestra.php:

LFTP [email protected] remoto.com/> poner WP-config-sample.Muestra de PHP -O.php 

El conseguir y poner Los comandos solo pueden recuperar y cargar archivos regulares: esto significa que no funcionarán con directorios. Si queremos descargar o cargar directorios y su contenido debemos usar el espejo dominio'. El comando, como su nombre lo indica, crea un espejo de un directorio remoto en nuestra máquina local, o viceversa. Todo lo que tenemos que proporcionar es el objetivo de origen, que por defecto se considera el remoto y, opcionalmente, el directorio de destino, que por defecto es el local. Veamos un ejemplo:

LFTP [email protected] remoto.com/> espejo -p 10 sitio local_backup 


El comando anterior creará un espejo del remoto sitio directorio en nuestra máquina local donde se guardará como local_backup. Cuál es el -PAG Opción que usamos? El -PAG opción (abreviatura de --paralelo) acepta un entero como argumento, que es el número máximo de archivos que se descargarán en paralelo (descargar un archivo en ese momento sería realmente tedioso!).

Para invertir los directorios remotos y locales, debemos usar el -Riñonal opción, formulario corto para --contrarrestar: Esta opción hará para que se cree un espejo inverso, por lo que el primer argumento pasado al comando espejo se considera como el local
directorio, y el segundo como el remoto. Los archivos se pueden incluir explícitamente o excluidos del espejo utilizando el

-i (--incluir) y -X (--excluir) Opciones respectivamente. Ambas opciones aceptan una expresión regular como argumento: todos los nombres de archivo que coincidan con la expresión se incluirán o se excluyen del espejo.

También es posible usar el -mi opción (abreviatura de --borrar) para crear espejos idénticos: los archivos existentes en el destino pero no en la fuente se eliminarán.

Ejecución de comandos no interactivos

Hasta ahora vimos cómo podemos ejecutar algunos comandos desde el mensaje LFTP. ¿Qué pasa si queremos ejecutarlos de una manera completamente no interactiva?? Todo lo que tenemos que hacer es usar el LFTP -C opción. Cuando se usa esta opción, los comandos aprobados como argumentos se ejecutan, y luego LFTP sale automáticamente. Los comandos deben estar separados
por un punto y coma. Supongamos que queremos conectarnos a un host remoto y crear un espejo del sitio directorio localmente a un directorio nombrado local_backup. Corríamos:

$ lftp -c "abierto ftp: // ouruser: [email protected] remoto.com; Mirror - -Parallel = 10 sitio local_backup " 

Descargar archivos torrent

LFTP también se puede usar como cliente de torrents. Todo lo que tenemos que hacer es proporcionar la ubicación de un archivo torrent (puede ser un archivo local, una URL o un imán enlace). Por defecto, los archivos recuperados se almacenan en el directorio de trabajo actual, pero se puede especificar una ubicación diferente a través de un -O opción. Para descargar el ISO de Debian Stable a través de Torrent en el ~/Descargar Directorio, por ejemplo, ejecutaríamos:

lftp: ~> torrent https: // cdimage.debian.org/Debian-CD/Current/AMD64/BT-CD/Debian-10.7.0-amd64 netinst.Yo asi.torrent -o ~/descargas 

Conclusiones

En este tutorial aprendimos el uso básico de la aplicación LFTP: vimos cómo instalar la aplicación en algunas de las distribuciones de Linux más utilizadas, cómo conectarse y autenticarse con un servidor remoto, cómo crear marcadores para el acceso a ubicaciones rápidas y el acceso a ubicaciones rápidas y el acceso a ubicaciones rápidas y el acceso a las ubicaciones rápidas y el acceso a las ubicaciones rápidas y el Comandos que deben usarse para enumerar el contenido de directorios remotos y locales, para editar archivos remotos y cargar y descargar archivos desde y desde un host remoto. También vimos cómo ejecutar comandos de forma no interactiva. Finalmente vimos cómo podemos usar LFTP como Torrent Client. Para una lista completa de la
características y los comandos que podemos ejecutar cuando usan LFTP, Consulte su manual!

Tutoriales de Linux relacionados:

  • Lista e instalación de clientes FTP en Ubuntu 20.04 Linux ..
  • Lista e instalación de clientes FTP en Ubuntu 22.04 Linux ..
  • Cosas para instalar en Ubuntu 20.04
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Configurar servidor FTP en Linux
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Cómo conectarse a un servidor FTP usando Python
  • Archivos de configuración de Linux: los 30 principales más importantes
  • Cómo configurar el servidor FTP/SFTP y el cliente en Almalinux
  • Cómo habilitar/deshabilitar Wayland en Ubuntu 22.04 escritorio