ftp-server(对象存储)
1、背景
在腾讯云弄了一个对象存储,想通过ftp上传照片
说明连接:
腾讯云:https://cloud.tencent.com/document/product/436/7214
GitHub:https://github.com/tencentyun/cos-ftp-server-V5
安装Pyhon2.7:https://cloud.tencent.com/document/product/436/10866
本次试用所用打的软件包:
链接:https://pan.baidu.com/s/1CN5XtDxun0HJjrnakli0Lg
提取码:dvim
2、操作
2.1、软件下载

2.2、配置主配置文件
unzip cos-ftp-server-V5-master.zip
mv cos-ftp-server-V5-master /usr/local/cos-ftp-server
cd /usr/local/cos-ftp-server/conf
cp vsftpd.conf.example vsftpd.conf
vim vsftpd.conf
[COS_ACCOUNT_0] #第一个规则
cos_secretid = AKID************************ #管理秘钥
cos_secretkey = Z9lDv**********************
cos_bucket = ***b**er-**** #存储桶的名字
#cos_region =
cos_region = ap-beijing #存储桶所在的区域,我的在北京
cos_protocol = https #默认不修改,当然也可以修改为http
#cos_endpoint = ap-xxx.myqcloud.com
home_dir = /home/cjs #系统中存在的目录,实际使用中这里不会有上传的文件,都跳转到存储桶里了
ftp_login_user_name = cjs #ftp的账号,系统中不必存在
ftp_login_user_password = pyw #ftp的密码
authority = RW
delete_enable = true [COS_ACCOUNT_1] #第二个规则,我是删除了
cos_secretid = XXXX
cos_secretkey = XXXXX
cos_bucket = {bucket name}-
cos_region = ap-xxx
cos_protocol = https
#cos_endpoint = ap-xxx.myqcloud.com
home_dir = /home/user1
ftp_login_user_name=user1
ftp_login_user_password=pass1
authority=RW
delete_enable=true [NETWORK]
masquerade_address = 114.114.114.114 #存储桶的IP地址
listen_port = #端口 #passive_port可以设置passive模式下,端口的选择范围,默认在(, )区间上选择
passive_port = , [FILE_OPTION]
# 默认单文件大小最大支持到200G,不建议设置太大
single_file_max_size = [OPTIONAL]
config_check_enable = true # 以下设置,如无特殊需要,建议保留default设置 如需设置,请合理填写一个整数
min_part_size = default
upload_thread_num = default
max_connection_num =
max_list_file = 10000# ls命令最大可列出的文件数目,建议不要设置太大,否则ls命令延时会很高log_level = DEBUG log_dir = log
2.3、运行
yum install gcc libffi-devel python-devel openssl-devel
2.3.1、安装setuptools
# wget https://files.pythonhosted.org/packages/1d/64/a18a487b4391a05b9c7f938b94a16d80305bf0369c6b0b9509e86165e1d3/setuptools-41.0.1.zip
# unzip setuptools-41.0..zip
cd setuptools-41.0./
# python setup.py build
# python setup.py install
[root@localhost setuptools-41.0.]# ls -l /usr/lib/python2./site-packages/setuptools-41.0.-py2..egg
-rw-r--r--. root root 5月 : /usr/lib/python2./site-packages/setuptools-41.0.-py2..egg
2.3.2、安装psutil
https://pypi.org/project/psutil/#files
tar xf psutil-5.6..tar.gz
cd psutil-5.6./
yum install gcc python-devel #可能需要
python setup.py install
2.3.3、安装pyftpdlib
ntpdate ntp1.aliyum.com #校对系统时间
yum -y install epel-release
yum -y install python-pip
pip install --upgrade pip
pip install pysendfile
2.3.4、安装ftp-server
ftp配置文件默认需要2G内存空间,请考虑减少最大连接数或释放一些系统内存。您也可以通过将“config-check-enable”设置为false来禁用配置检查。
python setup.py install
python ftp_server.py #前台运行
nohup python ftp_server.py >> /dev/null 2>&1 & #后台运行
2.3.5、停止运行
ps -ef | grep python | grep ftp_server.py | grep -v grep | awk '{print $2}' | xargs -I{} kill {}
2.4、开放端口
除了系统本身的IPtable防火墙外,还要在安全组内开放2121和60000~65535端口


2.5、测试
可以使用ftp软件来测试也可以使用linux来测试
注释:ftp用法参看文档:https://www.cnblogs.com/mingforyou/p/4103022.html
ftp-server(对象存储)的更多相关文章
- 对象存储服务-Minio
Mino 目录 Mino 对象存储服务 Minio 参考 Minio 架构 为什么要用 Minio 存储机制 纠删码 MinIO概念 部署 单机部署: Docker 部署Minio 分布式Minio ...
- SQL Server 列存储索引强化
SQL Server 列存储索引强化 SQL Server 列存储索引强化 1. 概述 2.背景 2.1 索引存储 2.2 缓存和I/O 2.3 Batch处理方式 3 聚集索引 3.1 提高索引创建 ...
- 人人都是 DBA(VIII)SQL Server 页存储结构
当在 SQL Server 数据库中创建一张表时,会在多张系统基础表中插入所创建表的信息,用于管理该表.通过目录视图 sys.tables, sys.columns, sys.indexes 可以查看 ...
- Application对象、Session对象、Cookie对象、Server对象初步认识
Application对象:记录应用程序参数的对象 用于共享应用程序级信息,即多个用户共享一个Application对象.在第一个用户请求ASP.NET文件时,将启动应用程序并创建Applicatio ...
- [转载] 对象存储(2):OpenStack Swift——概念、架构与规模部署
原文: http://www.testlab.com.cn/Index/article/id/1085.html#rd?sukey=fc78a68049a14bb228cb2742bdec2b9498 ...
- [转载] 文件系统vs对象存储——选型和趋势
原文: http://www.testlab.com.cn/Index/article/id/1082.html#rd?sukey=fc78a68049a14bb2699b479d5e730f6f45 ...
- iOS使用阿里云OSS对象存储 (SDK 2.1.1)
最近项目中用到了阿里云OSS对象存储,用来存储APP中图片.音频等一些数据.但坑爹的阿里云居然在11月20日将SDK版本更新到了2.1.1,然而网上给出的教程都是1.*版本的(针对iOS),两个版本所 ...
- OpenStack对象存储——Swift
OpenStack Object Storage(Swift)是OpenStack开源云计算项目的子项目之一,被称为对象存储,提供了强大的扩展性.冗余和持久性.本文将从架构.原理 和实践等几方面讲述S ...
- SQL SERVER大话存储结构(1)_数据页类型及页面指令分析
如果转载,请注明博文来源: www.cnblogs.com/xinysu/ ,版权归 博客园 苏家小萝卜 所有.望各位支持! SQLServer的数据页大 ...
- SQL SERVER大话存储结构(3)_数据行的行结构
一行数据是如何来存储的呢? 变长列与定长列,NULL与NOT NULL,实际是如何整理存放到 8k的数据页上呢? 对表格进行增减列,修改长度,添加默认值等DDL SQL ...
随机推荐
- Leetcode题目461:汉明距离(位运算-简单)
题目描述: 两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目. 给出两个整数 x 和 y,计算它们之间的汉明距离. 注意:0 ≤ x, y < 231. 示例: 输入: x = ...
- SpringBoot + Vue前后端分离图片上传到本地并前端访问图片
同理应该可用于其他文件 图片上传 application.yml 配置相关常量 prop: upload-folder: E:/test/ # 配置SpringMVC文件上传限制,默认1M.注意MB要 ...
- 纯CSS画三角形(带边框)
实例一: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...
- js回车键事件
js回车键事件 一.总结 一句话总结: $("#focus").keypress(function(event){if(event.which === 13) { /*点击回车要执 ...
- vim 操作命令大全(转)
1. 关于Vim vim是我最喜欢的编辑器,也是Linux下第二强大的编辑器. 虽然emacs是公认的世界第一,我认为使用emacs并没有使用vi进行编辑来得高效. 如果是初学vi,运行一下vimtu ...
- Uber如何搭建一个基于Kafka的跨数据中心复制平台 原创: 徐宏亮 AI前线 今天
Uber如何搭建一个基于Kafka的跨数据中心复制平台 原创: 徐宏亮 AI前线 今天
- 《你不知道的JavaScript(上)》笔记——this全面解析
首先要理解调用位置: 调用位置就是函数在代码中被调用的位置(而不是声明的位置). 最重要的是要分析调用栈(就是为了到达当前执行位置所调用的所有函数). 我们关心的调用位置就在当前正在执行的函数的前一个 ...
- 【转】nodejs获取post请求发送的formData数据
前端post请求发送formData的类型数据时,需要服务端引入中间件body-parser,主要原因是post请求发送的数据,是在http的body里面,所以需要进行解析,否则获取不到数据(数据为空 ...
- 使用oid2name列出数据库和对应的oid
[postgres@postgre base]$ ll total 172 drwx------ 2 postgres postgres 12288 Dec 6 09:21 1 drwx------ ...
- 设备树中指定的中断触发方式与request_irq中指定的触发方式不一致时,内核会使用哪种中断触发方式呢?
答:会使用request_irq中指定的触发方式
