使用lftp进行文件备份

最近碰到一个需求,需要将一些服务器上的文件(主要是一些重要的数据和资源,例如sql,操作产生的图片,文件等等)。

方法有很多种,最简单的我看下来还是用lftp算了,但是注意考虑到具体的需求,我这边是因为文件本身是不大的。

文件压缩,sql提取,定时任务这种就不说了,都是基操。

然后是使用lftp把要备份的文件发送过去。

这里不写sh脚本了,就简单列举一下操作步骤

一.在存放备份的服务器上搭建一个FTP服务。

推荐使用docker搭建,方便高效,基本命令如下:

yum install docker

安装docker,已安装直接跳过下一步。

然后是保证20,21端口不被占用,学过计网的应该都知道,然后启动docker

service docker start

接着远程下拉镜像一行运行ftp服务

docker run -d -v /home/vsftpd:/home/vsftpd -p 20:20 -p 21:21 -p 21100-21110:21100-21110 -e FTP_USER=ftpadmin -e FTP_PASS=ftpadmin --privileged --name vsftpd fauria/vsftpd

这样就运行了一个ftp服务,然后去打开防火墙相应端口,这里就不赘述了。

扫描二维码关注公众号,回复: 4990505 查看本文章

这里配置的ftp服务的用户名是ftpadmin,密码也是ftpadmin,可以根据实际需求更改用户名。

然后就配置ftp完成了,可以电脑上登录试一下,windows访问linux搭建的ftp,可能会发生一些错误,但是并不影响linux之间的ftp访问。

二.如何使用lftp发送文件

这边也不用脚本了,就命令行,脚本可自行编写。

安装lftp

yum install lftp

安装完成后即可使用

建立访问请求

lftp X.X.X.X

X.X.X.X刚刚搭建的备份ftp服务器的ip地址或域名

登录ftp,使用ftp服务

user username password

username和password是刚刚设置的用户名和密码

找到本地的待备份文件存在路径如/A/B

lcd /A/B

lcd操作的是本地,cd操作的是ftp服务器的路径

分两种情况

一.复制一个文件夹C

mirror -R C

二.复制一个文件C

put -R C

然后就可以看到传输成功,在ftp服务器上也出现了相应的文件。bash脚本可根据需求灵活编写,此外还有rsync等方式在某些需求场景下更加好用,可以另外参考。

猜你喜欢

转载自blog.csdn.net/TateBrwonJava/article/details/86559018
今日推荐