如何快速安装OSSFTP工具?阿里云OSS FTP安装图文详细教程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何快速安装OSSFTP工具?阿里云OSS FTP安装图文详细教程相关的知识,希望对你有一定的参考价值。

参考技术A

OSSFTP工具是一个特殊FTPserver,它接收普通FTP请求后,将对文件、文件夹的操作映射为对OSS的操作,从而使得您可以基于FTP协议来管理存储在OSS上的文件。

注意生产环境请使用osssdk,OSSFTP工具主要面向个人用户使用。

主要特性

跨平台:

无论是Windows、Linux还是Mac,无论是32位还是64位操作系统,无论是图形界面还是命令行都可以运行。

免安装:

解压后可直接运行。

免设置:

无需设置即可运行。

透明化:

FTP工具是python写的,您可以看到完整的源码,我们稍后也会开源到Github。

主要功能

支持文件和文件夹的上传、下载、删除等操作。

通过Multipart方式,分片上传大文件。

支持大部分FTP指令,可以满足日常FTP的使用需求。

注意

1.目前在1.0版本中,考虑到安装部署的简便,OSSFTP工具没有支持TLS加密。由于FTP协议是明文传输的,

为了防止您的密码泄漏,建议将FTPserver和client运行在同一台机器上,通过127.0.0.1:port的方式来访问。

2.不支持rename和move操作。

3.安装包解压后的路径不要含有中文。

4.FTPserver的管理控制页面在低版本的IE中可能打不开。

5.FTPserver支持的Python版本:Python2.6,Python2.7。

下载

由于Windows不会默认安装Python2.7,所以安装包中包含了Python2.7,免去您python安装配置的麻烦,解压即可使用。

由于Linux/Mac系统默认会安装Python2.7或Python2.6,所以安装包中不再包含可执行的python,只包含了相关依赖库。

运行

首先解压之前下载的文件,然后根据环境情况选择不同的运行方式。

Windows:双击运行start.vbs即可

Linux:打开终端,运行 i.$bashstart.sh

Mac:双击start.command,或者在终端运行 i.$bashstart.command

上述步骤会启动一个FTPserver,默认监听在127.0.0.1的2048端口。同时,为了方便您对FTPserver的状态进行管控,还会启动一个web服务器,监听在127.0.0.1的8192端口。如果您的系统有图形界面,还会自动打开控制页面,

如下所示:

大部分情况不要任何配置,就可以运行一个FTPserver了,如果想对FTPserver进行配置,请注意需要重启才能生效。

连接到FTPserver推荐使用FileZilla客户端去连接FTPserver。

下载安装后,按如下方式连接即可:

主机:127.0.0.1

登录类型:正常

用户:access_key_id/bucket_name

密码:access_key_secret

注意:

用户中,/是必须的,如用户

tSxyiUM3NKswPMEp/test-hz-jh-002。

-access_key_id和access_key_secret的获取

高级使用

通过控制页面管理FTPserver

修改监听地址

如果需要通过网络来访问FTPserver,那么需要修改监听地址,因为默认的监听地址127.0.0.1只允许来自本地的访问。可以修改成内网ip或公网ip。

修改监听端口

修改FTPserver监听的端口,建议端口大于1024,因为监听1024以下的端口时需要管理员权限.

修改日志等级

设置FTPserver的日志级别。FTPserver的日志会输出到data/ossftp/目录下,可以通过控制页面的日志按钮在线查看。默认的日志界别为INFO,打印的日志信息较少,如果需要更详细的日志信息,可以修改为DEBUG模式。如果希望减少日志的输出,可以设置级别为WARNING或ERROR等。

设置Bucketendpoints

FTPserver默认会探索bucket的所属location信息,随后将请求发到对应的region(如oss-cn-hangzhou.aliyuncs.com或oss-cn-beijing.aliyuncs.com),FTPserver会优先尝试内网访问oss。如果您设置了bucketendpoints,如设置为test-bucket-a.oss-cn-hangzhou.aliyuncs.com,那么当访问test-bucket-a时,就会使用oss-cn-hangzhou.aliyuncs.com域名。

注意

所有修改都需要重启才能生效。

上述的所有修改其实都是修改的ftp根目录下的config.json,所以您可以直接修改该文件。

直接启动FTPserver(Linux/Mac)

可以直接启动ossftp目录下的ftpserver.py,免去web_server的开销。

1.python ossftp/ftpserver.py  

配置修改方式同上。

可能遇到的问题

如果连接FTPserver时,遇到以下错误:

有两种可能:

输入的access_key_id和access_key_secret有误。

解决 :请输入正确的信息后再重试。

所用的access_key信息为ram子账户的access_key,而子账户不具有Listbuckets权限。

解决 :当使用子账户访问时,请在控制页面中指定bucketendpoints,即告诉FTPserver某个bucket应该用什么endpoint来访问。同时,子账户也需要一些必须的权限,关于使用ram访问oss时的访问控制。

只读访问

OSSFTP工具需要的权限列表为ListObjects、GetObject、HeadObject。关于如何创建一个具有只读访问的ram子账户,请参考图文教程如何结合ram实现文件共享。

上传文件

如果允许ram子账户上传文件,还需要PutObject。

删除文件

如果允许ram子账户删除文件,还需要DeleteObject。

如果您在Linux下运行FTPserver,然后用FileZilla连接时遇到如下错误:

501 can\'t decode path (server filesystem encoding is ANSI_X3.4-1968)

一般是因为本地的中文编码有问题。在将要运行start.sh的终端中输入下面的命令,然后再重新启动即可。

1 .$ export LC_ALL=en_US.UTF-8; export LANG="en_US.UTF-8"; locale

Linux目录同步到阿里云OSS工具ossutil

背景

​ 最近公司服务用户激增,常规文件服务器不能满足需求,严重影响性能,决定将静态文件迁移到阿里云OSS,用来解决性能问题,提高用户体验。毕竟之前文件服务器有很多历史文件,需要同步到OSS上,但是研究了很多,大佬使用Python脚本,感觉体验很是一般,后来发现阿里官网提供的ossutil体验还是很不错

下载安装

官网有很详细的教程

1、切换到安装目录

cd /data/app
//1、运行以下命令下载ossutil。
wget http://gosspublic.alicdn.com/ossutil/1.7.6/ossutil64
//2、运行以下命令修改文件执行权限。
chmod 755 ossutil64

2、配置
通过交互式命令生成配置文件:

./ossutil64 config
请输入配置文件路径: # 直接回车跳过,使用默认配置文件即可:/home/deploy/.ossutilconfig (deploy是我当前的登录用户),如果你设置为其它路径,在使用命令时需使用--config-file参数指定路径  
#下述配置,回车将跳过相关配置项的设置,配置项的具体含义,请使用"help config"命令查看。 
请输入endpoint:http://oss-cn-shenzhen.aliyuncs.com 
请输入accessKeyID:yourAccessKeyID 
请输入accessKeySecret:yourAccessKeySecret 
请输入stsToken: # 非必要参数,可以直接回车跳过 

如果上述过程配置有误,可以修改.ossutilconfig文件

vi /data/app/.ossutilconfig 

3、使用方式

参数说明:
./ossutil64 cp <目标文件(文件夹)> <oss路径> [-u|-r|....等可选参数]
cp: 贝命令,将本地文件拷贝到oss
-u: cp的可选参数,表示对于相同文件名的文件,如果oss上的modifyTime早于本地的modifyTime则执行覆盖操作
-r: cp的可选参数,表示可以上传文件夹(包含文件夹中的所有文件以及子文件夹遍历上传)
--exclude: 过了掉某些文件,支持通配符
    <oss路径>组成: oss://<bucket名称>/[你在bucket中建立的目录]
目录可以没有,没有的话直接拷贝到bucket根目录

创建Bucket

./ossutil64 mb oss://bucket

上传文件

./ossutil64 cp local_file oss://bucket

下载文件

./ossutil64 cp cloud_url local_file

上传多个使用

./ossutil64 cp /home/resource-files/ oss://your-bucket-name/your-dir --exclude "*.html" --exclude "*.htm" -ur

关注我的微信公众号

以上是关于如何快速安装OSSFTP工具?阿里云OSS FTP安装图文详细教程的主要内容,如果未能解决你的问题,请参考以下文章

安装 OSS-FTP 时出现 ImportError: No module named gtk的解决

Linux目录同步到阿里云OSS工具ossutil

阿里云oss云存储-----ossutil工具的使用

阿里云 oss 工具上传图片

阿里云ECS数据迁移到阿里云OSS

阿里云OSS工具类