体验简介

本场景将提供一台配置了Centos 7.7版本的ECS实例(云服务器)和对象存储OSS实例。通过本教程的操作,您可以基于ECS和OSS快速搭建一个个人网盘。

体验此场景后,可以掌握的知识有:

OSS基本操作。

Linux 系统基础命令。

背景知识

本场景主要涉及以下云产品和服务:

云服务器ECS:

云服务器(Elastic Compute Service,简称ECS)是阿里云提供的性能卓越、稳定可靠、弹性扩展的IaaS(Infrastructure as a Service)级别云计算服务。云服务器ECS免去了您采购IT硬件的前期准备,让您像使用水、电、天然气等公共资源一样便捷、高效地使用服务器,实现计算资源的即开即用和弹性伸缩。阿里云ECS持续提供创新型服务器,解决多种业务需求,助力您的业务发展。

对象存储OSS:

阿里云对象存储OSS(Object Storage Service)是阿里云提供的海量、安全、低成本、高持久的云存储服务。其数据设计持久性不低于99.9999999999%(12个9),服务可用性(或业务连续性)不低于99.995%。

OSS具有与平台无关的RESTful API接口,您可以在任何应用、任何时间、任何地点存储和访问任意类型的数据。

您可以使用阿里云提供的API、SDK接口或者OSS迁移工具轻松地将海量数据移入或移出阿里云OSS。数据存储到阿里云OSS以后,您可以选择标准存储(Standard)作为移动应用、大型网站、图片分享或热点音视频的主要存储方式,也可以选择成本更低、存储期限更长的低频访问存储(Infrequent Access)、归档存储(Archive)、冷归档存储(Cold Archive)作为不经常访问数据的存储方式。

创建资源

1.在实验主页面,页面左侧,单击 云产品资源 下拉列表,查看本次实验所需资源。

2.单击屏幕右侧 创建资源 ,免费创建当前实验所需云产品资源。

说明:

资源创建过程需要1~3分钟。完成实验资源的创建后,您可以在 云产品资源 列表查看已创建的资源信息,例如:IP地址、子用户名称和子用户密码等。

连接ECS服务器

在页面右侧,单击 切换至 Web Terminal,将界面切换至 Web Terminal即可自动连接到ECS服务器。

安装Cloudreve

  1. 执行如下命令,下载cloudreve安装包。
wget https://github.com/cloudreve/Cloudreve/releases/download/3.3.1/cloudreve_3.3.1_linux_amd64.tar.gz

  1. 下载完毕后,执行如下命令,解压cloudreve安装包。
tar -zxvf cloudreve_3.3.1_linux_amd64.tar.gz

  1. 执行如下命令,给cloudreve授予权限。
chmod +x ./cloudreve

  1. 执行如下命令,运行cloudreve。
./cloudreve

返回结果如下所示,您可以看到管理员账号和密码。



5. 打开浏览器,访问http://<ECS公网地址>:5212,依次输入管理员账号和密码,单击登录。



登录成功界面如下。



6. 在终端中按下Ctrl+C键,停止cloudreve运行。

安装ossfs

ossfs能让您在Linux系统中,将对象存储OSS的存储空间(Bucket)挂载到本地文件系统中,您能够像操作本地文件一样操作OSS的对象(Object),实现数据的共享。

  1. 执行如下命令,下载ossfs安装包。
wget http://gosspublic.alicdn.com/ossfs/ossfs_1.80.6_centos7.0_x86_64.rpm

  1. 下载完毕后,执行如下命令,安装ossfs。
yum localinstall ossfs_1.80.6_centos7.0_x86_64.rpm -y

返回结果如下所示,表示ossfs安装成功。



3. 执行如下命令,配置账号访问信息,将Bucket名称以及具有此Bucket访问权限的AccessKey ID和AccessKey Secret信息存放在/etc/passwd-ossfs文件中。您需要将BucketName、yourAccessKeyId和yourAccessKeySecret替换成Bucket名称、AccessKey ID和AccessKey Secret。

echo BucketName:yourAccessKeyId:yourAccessKeySecret > /etc/passwd-ossfs

参数说明:

  • BucketName:阿里云OSS控制台中创建的bucket名称,可在第一小节中的云产品资源下拉列表中查看。
  • yourAccessKeyId:具有此Bucket访问权限的AccessKey ID,可在第一小节中的云产品资源下拉列表中的AK

    ID查看。
  • yourAccessKeySecret:具有此Bucket访问权限的AccessKey

    Secret,可在第一小节中的云产品资源下拉列表中的AK Secret查看。

图a:OSSbucket名称



图b:AccessKey ID信息



4. 执行如下命令,给passwd-ossfs文件授予权限。

chmod 640 /etc/passwd-ossfs

挂载OSS

1.在终端中,执行如下命令,创建一个名为oss文件夹。

mkdir oss

2.执行如下命令,将Bucket挂载到指定目录oss,您需要将BucketName、mountfolder和Endpoint替换成bucket名称、创建的oss文件夹和OSS的ECS 的经典网络访问(内网)的Endpoint。

ossfs BucketName mountfolder -o url=Endpoint

参数说明:

  • BucketName:阿里云OSS控制台中创建的bucket名称,可在第一小节中的云产品资源下拉列表中查看。
  • mountfolder:创建的挂载文件夹。
  • Endpoint:OSS的ECS 的经典网络访问(内网)的Endpoint。



    3.查看是否挂载成功
df-h

返回结果如下,表示挂载成功。

4.执行如下命令,在/etc/init.d/目录下建立文件ossfs,设置开机自动启动脚本进行OSS挂载。

vim /etc/init.d/ossfs

进入Vim编辑器后,按下i键进入编辑模式,添加以下内容,添加完成后按下Esc键退出编辑模式,最后输入:wq后按下Enter键,保存并退出Vim编辑器。

注意:

您需要将BucketName、mountfolder和Endpoint替换成bucket名称、创建的oss文件夹和OSS的ECS 的经典网络访问(内网)的Endpoint。

#! /bin/bash
#
# ossfs Automount Aliyun OSS Bucket in the specified direcotry.
#
# chkconfig: 2345 90 10
# description: Activates/Deactivates ossfs configured to start at boot time. ossfs BucketName mountfolder -o url=Endpoint -oallow_other

添加后的文件内容如下所示。



5.执行如下命令,为新建立的ossfs脚本赋予可执行权限。

chmod a+x /etc/init.d/ossfs

6.执行如下命令,把ossfs启动脚本作为其他服务,开机自动启动。

chkconfig ossfs on

配置个人网盘

1.执行如下命令,运行cloudreve。

./cloudreve

2.打开浏览器,访问http://<ECS公网地址>:5212,依次输入管理员账号和密码,单击登录。

3.在cloudreve主界面右上角,单击管理面板。



4.在确定站点URL设置对话框中,单击更改。



5.在左侧导航栏中,单击存储策略。

6.在存储策略页面,单击添加存储策略。



7.在选择存储方式对话框中,选择本机存储。



8. 在添加本机存储策略的上传路径页面中,将存储目录修改为oss/{uid}/{path},单击下一步。

9.在添加本机存储策略的直链设置页面中,单击下一步。

10.在添加本机存储策略的上传限制页面中,单击下一步。

11.在添加本机存储策略的完成页面中,输入存储策略名OSS,单击完成。



12.在左侧导航栏中,单击用户组。



13.在用户组页面中,单击管理员操作中的编辑图标。



14.在编辑管理员页面的存储策略中,选择oss,然后单击保存。





15. 在用户组的右上角,单击返回主页。



16.在个人网盘页面,拖拽任意文件到网页中,待文件上传完毕,关闭上传队列。



17.打开虚拟桌面的FireFox ESR浏览器打开oss控制台,在左侧导航栏中,单击文件管理。



18.在文件管理页面,单击文件名为1的文件夹。

19.在1文件夹中,您可以看到在个人网盘上传的文件。

使用ECS和OSS搭建个人网盘的更多相关文章

  1. 使用cloudreve搭建个人网盘

    这次将腾迅的对象存储cos挂载到了服务器上,就想自己搭建个网盘,虽然每月50G的空间和10G流量,也够用了 之前写过使用owncloud来搭建个人网盘,使用起来挺方便,就是不知道为什么感觉打开速度慢, ...

  2. 编译安装Nginx和php搭建KodExplorer网盘

    编译安装Nginx和php搭建KodExplorer网盘 环境说明: 系统版本    CentOS 6.9 x86_64         软件版本    nginx-1.12.2        php ...

  3. Apache环境下搭建KodExplorer网盘

    Apache环境下搭建KodExplorer网盘 环境说明: 系统版本    CentOS 6.9 x86_64 软件版本    yum安装httpd和php    kodexplorer4.25 1 ...

  4. 编译安装Apache httpd和php搭建KodExplorer网盘

    编译安装Apache httpd和php搭建KodExplorer网盘 环境说明: 系统版本    CentOS 6.9 x86_64 软件版本    httpd-2.2.31        php- ...

  5. 腾讯云函数免费搭建onedrive网盘

    目录 腾讯云函数 介绍 真免费? 搭建教程 准备条件 创建云函数 创建触发器 配置SecretId和SecretKey 添加onedriver盘 自定义域名 访问路径处理 总结 搭建期间遇到的问题 想 ...

  6. 阿里云服务器ECS Ubuntu16.04 + Seafile 搭建私人网盘 (Seafile Pro)

    原文链接:? 传送门 本文主要讲述 使用 Ubuntu 16.04 云服务器 通过脚本实现对 Seafile Pro 的安装,完成私人网盘的搭建 首先给出 Seafile 专业版的下载地址(Linux ...

  7. vps搭建个人网盘不二之选—kodexplorer介绍,包含安装步骤

    之前给大家介绍过seafile.h5ai等网盘系统,今天给大家介绍下kodexplorer网盘系统.Kodexplorer,也叫芒果云.可道云.kodcloud,总之名字改了不少.但其本身作为一个网盘 ...

  8. Linux下使用nextcloud搭建个人网盘

    市面上有那么多的网盘服务提供商,为什么还要自己搭建网盘呢?主要有以下原因: 免费的网盘都有种种限制,要么不限速容量小(onedriver,google driver),要么容量大限速(百度云) 付费网 ...

  9. VPS教程:搭建个人网盘教程—kodexplorer

    kodexplorer网盘系统.Kodexplorer,也叫芒果云.可道云.kodcloud,总之名字改了不少.但其本身作为一个网盘文件系统,还是有很多可圈可点的地方. seafile.h5ai.ko ...

随机推荐

  1. Openresty Lua协程调度机制

    写在前面 OpenResty(后面简称:OR)是一个基于Nginx和Lua的高性能Web平台,它内部集成大量的Lua API以及第三方模块,可以利用它快速搭建支持高并发.极具动态性和扩展性的Web应用 ...

  2. 线程的分离状态(detached state)

    说到线程的分离状态,我认为,之所以会有这个状态,是因为系统对某些线程的终止状态根本不感兴趣导致的. 我们知道,进程中的线程可以调用: [cpp] view plaincopyprint? int pt ...

  3. Kurento实战之二:快速部署和体验

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  4. 002 PCI Express体系结构(二)

    一.PCI总线的信号定义 PCI总线是一条共享总线,在一条PCI总线上可以挂接多个PCI设备.这些PCI设备通过一系列信号与PCI总线相连,这些信号由地址/数据信号.控制信号.仲裁信号.中断信号等多种 ...

  5. Vulnhub -- DC4靶机渗透

    用nmap扫描ip和端口,发现只开启了22ssh端口和80http端口 打开网页只有一个登录界面 目录爆破没有发现什么有用的,尝试对登录进行弱口令爆破 一开始使用burpsuite,使用一个小字典进行 ...

  6. MySQL约束条件 表关系建立 查询数据

    约束条件 unsigned 无符号 即为非负数,用此类型可以增加数据长度 例如 tinyint最大范围是127,那tinyint unsigned 最大就可以到 127 * 2 通常用在不会出现符号的 ...

  7. 项目报错:Invalid bound statement (not found):

    出现这种错误有好多种情况,常见的错误有以下这些: 1.检查xml文件所在package名称是否和Mapper interface所在的包名 <mapper namespace="com ...

  8. 将数组对象相同key的内容合并

    function fireDuplicate (arr) { var arr = JSON.parse(JSON.stringify(arr)) var ids = [] arr.forEach(fu ...

  9. C# 二维数组 [,]与[][] 的区别 及特性

    arr[,] 用于声明等长的二维数组 Eg: //声明数组有3行 每行长度相等为2 var s = new int[3, 2] { { 1, 2 }, { 3, 4 }, { 1, 4 } }; 获取 ...

  10. 关于PLSQL中的一些问题总结:在PLSQL中书写DDL等

    关于问题前导,使用的数据表中涉及到的字段和类型: 在PLSQL中create.drop.truncate等DDL是没有办法直接执行的. 必须要使用: Execute immediate 'DDL语句' ...