`
d2hellen
  • 浏览: 105717 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

[转]linux下使用lftp的小结

 
阅读更多

今天在解决一个远程服务器备份的问题时,用到了lftp的相关知识。整理如下:

lftp的功能比较强大,相比原来用ftp,方便了很多。

1、登陆:

lftp ftp://yourname@site

pwd:*****

或 open ftp://yourname@site



2、基本操作(转)

lftp使用介绍

lftp 是一个功能强大的下载工具,它支持访问文件的协议: ftp, ftps, http, https, hftp, fish.(其中ftps和https需要在编译的时候包含openssl库)。llftp的界面非常想一个shell: 有命令补全,历史记录,允许多个后台任务执行等功能,使用起来非常方便。它还有书签、排队、镜像、断点续传、多进程下载等功能。
命令行语法
要看lftp的命令行语法,只要在shell中输入lftp --help
lftp [OPTS]
'lftp'是在 rc 文件执行后 lftp 执行的第一个命令
-f 执行文件中的命令后退出
-c 执行命令后退出
--help 显示帮助信息后退出
--version 显示 lftp 版本后退出
其他的选项同 'open' 命令
-e 在选择后执行命令
-u [,] 使用指定的用户名/口令进行验证
-p 连接指定的端口
主机名, URL 或书签的名字
如果在命令行中输入的站点名称,lftp将直接登录站点,比如
$lftp ftp://.............
如果在命令行不输入站点名称,则必须在进入到lftp界面后用open命令打开
[yhj@ccse-yhj yhj]$ lftp
lftp :~> open ftp://...................
常用命令
* 下载单个文件和一组文件,断点续传用-c参数
lftp ................:/> get -c ls-lR.txt
lftp ...............:/> mget *.txt
* 镜像(反镜像即上传)一个目录,可以用多个线程并行镜像一个目录(--parallel=N)
lftp ................:/> mirror incoming local_name
lftp ................:/> mirror -R local_name
lftp ................:/> mirror --parallel=3 incoming local_name
* 多线程下载,类似网络蚂蚁的功能;缺省是5个线程
lftp ................:/> pget -n 4 ls-lR.txt
* 后台任务管理
缺省情况下,按 Ctrl+z,正在执行的任务将转为后台执行,也可以在命令行末尾加&符号使任务在后台执行。用jobs命令可以查看所有的后台进程。用queue命令可以排队新的任务。如果退出lftp是还有任务在后台执行,lftp将转为后台执行。
* 其它用法
lftp支持类似bash的管道操作,例如用下面的命令可以将ftp服务器上的特定目录下(也可以是整个站点)所有文件的大小存到本地的文件ls.txt中
lftp ................:/> du incoming > ls.txt
相关文件
/etc/lftp.conf
全局配置文件,实际位置依赖系统配置文件目录,可能在/etc,也可能在/usr/local/etc
~/.lftp/rc, ~/.lftprc
用户配置文件,将在/etc/lftp.conf之后执行,所以这里面的设置会覆盖/etc/lftp.conf中的设置。
lftp 缺省不会显示 ftp 服务器的欢迎信息和错误信息,这在很多时候不方便,因为你有可能想知道这个服务器到底是因为没开机连不上,还是连接数已满。如果是这样,你可以在 ~/.lftprc 里写入一行
debug 3
就可以看到出错信息了。
更多的配置选项请查man手册或在lftp界面内用命令 set -a 获得。
~/.lftp/log
当lftp转为后台非挂起模式执行时,输出将重定向到这里
~/.lftp/bookmarks
这是lftp存储书签的地方,可以lftp查看bookmark命令
~/.lftp/cwd_history
这个文件用来存储访问过的站点的工作目录

~/.lftprc
在用lftp访问国内一些ftp服务器时,往往看到的中文是乱码
^_^不用慌,这是由于服务器和本地编码不一致造成的。我们只要在主目录下新建一个文件~/.lftprc或者~/.lftp/rc
并在其中加入以下内容:
debug 3set ftp:charset GBKset file:charset UTF-8#set ftp:passtive-mode no#alias utf8 " set ftp:charset UTF-8"#alias gbk " set ftp:charset GBK"
登录ftp服务器
言归正传,我们先来看看怎么登录ftp服务器
lftp ftp://user:password@site:port
lftp user:password@site:port
lftp site -p port -u user,password
lftp site:port -u user,password
上面的几种方式都能正常工作,不过密码都是明文,这样好像不太安全哦。没关系
lftp user@site:port
系统会提示输入password,密码就回显为******了
不过每次都输入这么多,好麻烦哦。 如果有类似leapftp的站点管理器就好了,其实lftp早就给我们想好了: 这就是bookmark。后面我们将会看到。
常用命令
在终端运行
man lftp
或登录ftp后输入
help
就可以看到命令列表
下面我们看一下lftp常用的命令:
ls
显示远端文件列表(!ls 显示本地文件列表)。
cd
切换远端目录(lcd 切换本地目录)。
get
下载远端文件。
mget
下载远端文件(可以用通配符也就是 *)。
pget
使用多个线程来下载远端文件, 预设为五个。
mirror
下载/上传(mirror -R)/同步 整个目录。
put
上传文件。
mput
上传多个文件(支持通配符)。
mv
移动远端文件(远端文件改名)。
rm
删除远端文件。
mrm
删除多个远端文件(支持通配符)。
mkdir
建立远端目录。
rmdir
删除远端目录。
pwd
显示目前远端所在目录(lpwd 显示本地目录)。
du
计算远端目录的大小
!
执行本地 shell的命令(由于lftp 没有 lls, 故可用 !ls 来替代)
lcd
切换本地目录
lpwd
显示本地目录
alias
定义别名
bookmark
设定书签。
exit
退出ftp
快捷书签
补充作者:aBiNg
ftp中的bookmark命令,是将配置写到~/.lftp/bookmarks文件中;我们可以直接修改此文件,快速登陆ftp服务器。





3、mirror 同步镜像,备份服务器文件

今天主要的问题是解决如何备份服务器端文件的问题。了解了mirror指令的用法后,发现比较适合而且好用。



基本使用方法:

1)、下载服务器端文件:

# mirror –vn RCD LCD   //RCD为远程路径,LCD为本地路径

2)、上传文件:

# mirror –R LCD RCD



下附一个自动同步的脚本:

#!bin/bash
echo “script start at  `date ”+%Y-%m-%d %H:%M:%S”
HOST=”hostname”
USER=”yourname”
PASS=”password”
LCD=”LocalePath”
RCD=”RemotePath”
/usr/sbin/lftp << EOF
open ftp://$USER:$PASS@$HOST
mirror $RCD $LCD
EOF
echo “script end at “ `date ”+%Y-%m-%d %H:%M:%S” 


 

P.S:

昨天刚到,今天立马开工干活,还是有点压力的,但有压力是好事,督促自己努力加油!

认真思考总结,才能更好更快的成长!

多思考,多总结,快乐成长!

以下为一个老外写的同步脚本,待验证
#!/bin/bash    
HOST="your.ftp.host.dom"
USER="username"
PASS="password"
LCD="/path/of/your/local/dir"
RCD="/path/of/your/remote/dir"
lftp -c "set ftp:list-options -a;
open ftp://$USER:$PASS@$HOST; 
lcd $LCD;
cd $RCD;
mirror --reverse \
       --delete \
       --verbose \
       --exclude-glob a-dir-to-exclude/ \
       --exclude-glob a-file-to-exclude \
       --exclude-glob a-file-group-to-exclude* \
       --exclude-glob other-files-to-exclude"

分享到:
评论

相关推荐

    Linux 下LFTP工具详细使用方法

    Linux 下 LFTP 工具详细使用方法 LFTP 是一个功能强大的文件传输程序,支持 FTP、FTPS、HTTP、HTTPS、HFTP 和 FILE 等六种文件访问方法。LFTP 的使用方法非常灵活,支持多种命令语法,下面我们将详细介绍 LFTP 的...

    LINUX下FPT客户端LFTP4.5.1源码

    总的来说,LFTP是Linux环境下强大的文件传输工具,其丰富的功能和协议支持使其成为开发者和系统管理员的得力助手。无论是在日常工作中传输文件,还是进行系统备份,LFTP都能提供可靠且高效的解决方案。熟悉并掌握...

    linux环境下的lftp下载

    linux环境下的lftp下载超好用直接在环境下tar 得到的文件中运行configure文件就OK啦 其他的命令去百度一下吧

    lftp工具离线安装包

    lftp是一款功能强大的命令行FTP客户端,适用于Linux和Unix-like系统,它提供了丰富的交互式功能和高级特性,如镜像、多线程下载、断点续传以及安全的SFTP连接。 **lftp的主要特点** 1. **多协议支持**:除了FTP,...

    windows下的lftp安装

    在Linux系统中,LFTP是默认可用的,但在Windows环境下,我们需要手动安装。本文将详细介绍如何在Windows操作系统上安装并使用LFTP。 1. **获取LFTP for Windows** 在Windows上安装LFTP,通常需要借助于CYGWIN或者...

    lftp4.4.8离线安装包

    lftp是一款功能强大的命令行FTP客户端,适用于Linux和Unix-like操作系统。本文将详细解析lftp 4.4.8离线安装包及其依赖包的安装过程,帮助IT从业者高效地进行文件传输操作。 首先,我们来了解一下lftp的核心特性。...

    lftp-4.8.4.tar.gz

    lftp-linux离线安装包lftp-4.8.4.tar.gz, 安装lftp时yum源不知咋的装不上,只能自己找安装包手动安装了。 安装教程请移步https://mp.csdn.net/editor/html/103489680

    windows 版本的 lftp

    在Windows上使用LFTP,通常需要通过编译源代码或者下载预编译的二进制版本。对于初学者,推荐下载预编译的版本,例如`lftp-4.9.2.win64-openssl`这样的打包文件。解压后,将可执行文件添加到系统路径,即可在命令...

    linux下lftp连接ftp服务器上传下载命令.docx

    Linux 下 lftp 连接 FTP 服务器上传下载命令 概述 LFTP(Linux File Transfer Program)是一个功能强大的 FTP 客户端程序,可以在 Linux 操作系统中使用,用于连接 FTP 服务器,上传和下载文件。LFTP 的主要特点是...

    [Linux_FTP工具]lftp命令详解

    lftp 是一个功能强大且灵活的 FTP 客户端工具,在 Linux 系统中非常流行。下面是 lftp 命令的详细解释: 一、登录站点 lftp 提供了多种方式来登录 FTP 站点,包括: 1. 一气呵成式: `$ lftp (ftp://)user:...

    lftp_3.7.8.orig

    在Linux环境下,通常可以通过包管理器如apt或yum进行安装。例如,在Ubuntu上,可以使用以下命令安装: ```bash sudo apt-get update sudo apt-get install lftp ``` 安装完成后,通过`lftp`命令即可启动程序。使用...

    用lftp 定时增量下载整个目录中最新文件

    1. **安装lftp**:在大多数Linux发行版中,可以通过包管理器(如`apt`或`yum`)来安装lftp。 ``` sudo apt install lftp # 对于Ubuntu/Debian sudo yum install lftp # 对于CentOS/RHEL ``` 2. **编写脚本**:...

    lftp结合sftp文件传输.zip

    本文将深入探讨如何在Linux系统中使用lftp工具结合SFTP(Secure File Transfer Protocol)协议,实现安全地向Windows系统发送文件。 首先,我们需要理解lftp是什么。Lftp是一款功能强大的命令行文件传输客户端,...

    Linux redhat lftp-4.0.9-1.el6-5.1.x86-64

    linux环境下ftp上传下载工具,支持批量上传下载,支持文件夹同步,逆同步等,功能比普通ftp强大

    lftp-4.0.1安装包 附加教程

    此外,提供的`lftp的第一次使用.doc`文档应包含更多详细的使用示例和技巧,建议仔细阅读以深入理解和掌握lftp。 总之,lftp作为一款功能强大的FTP客户端,其易用性和灵活性使其成为服务器管理和文件传输的理想工具...

    lftp for Windows

    在Windows环境下安装和使用lftp,通常需要下载编译好的二进制文件或者使用软件包管理器(如Chocolatey或Scoop)进行安装。安装完成后,用户可以通过命令提示符(CMD)或者PowerShell来启动lftp并进行相关操作。由于...

    lftp-4.0.9-14.el6.x86_64.rpm

    lftp-4.0.9-14.el6.x86_64.rpm 忘记哪里用的 做ftp服务器?

    ftp和lftp安装包.zip

    - 安装`lftp`同样通过包管理器完成,比如在Ubuntu/Debian系统中使用`sudo apt-get install lftp`,在Fedora/CentOS/RHEL系统中使用`sudo yum install lftp` 或 `sudo dnf install lftp`。 在“ftp和lftp安装包.zip...

    lftp使用手册

    - 对于大多数 Linux 发行版,可以通过包管理器轻松安装 lftp,例如使用 `apt-get install lftp`(Ubuntu/Debian)或 `yum install lftp`(Fedora/CentOS)。 - 在 Windows 系统上,可以使用 Cygwin 或者通过编译源...

    lftp-4.0.9-1.el6.x86_64.rpm

    lftp工具 lftp-4.0.9-1.el6.x86_64.rpm

Global site tag (gtag.js) - Google Analytics