私人网盘搭建(利用阿里云oss搭建)

1、个人网盘场景说明

个人网盘架构

使用ECS安装Cloudreve提供网盘服务,OSS提供存储服务。当用户使用个人网盘时,访问部署Cloudreve ECS的公网IP地址即可完成文件上传、下载、删除、分享等服务。

img

什么是Cloudreve

Cloudreve可帮助您即刻构建出兼备自用或公用的网盘服务,通过多种存储策略的支持、虚拟文件系统等特性实现灵活的文件管理体验。

什么是ossfs

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

个人网盘场景需要收集的信息

在搭建过程中,需要收集以下信息,方便后续搭建步骤配置时使用。其中cloudreve初始管理员密码是随机值,需要记录。

请注意:输入网址和命令符时,输入法需要切换为英文模式,否则会无法执行。

信息类型作用备注
BucketName配置ossfs挂载OSS配置cloudreve存储策略时使用。通过OSS控制台>>Bucket列表获取
AccessKeyId配置ossfs时使用点击此链接获取[获取AccessKeyId]
AccessKeySecret配置ossfs时使用点击此链接获取获取AccessKeySecret
Endpoint配置ossfs、挂载OSS时使用通过OSS控制台>>Bucket列表>>Bucket概览>>访问端口获取
ECS公网地址cloudreve登陆时使用通过阿里云控制台获取 ECS云服务器-弹性IP
OSS挂载点挂载OSS时使用固定值:/root/oss
cloudreve端口cloudreve登陆时使用固定值:5212
cloudreve初始管理员账号cloudreve登陆时使用固定值:admin@cloudreve.org
cloudreve初始管理员密码cloudreve登陆时使用随机值:需要记录
cloudreve存储目录cloudreve配置存储策略时使用固定值:/root/oss/uploads/{uid}/{path}

2.创建OSS Bucket

登陆OSS控制台

  1. 单击浏览器阿里云控制台首页页面左上角img 图标,搜索框输入"OSS",单击搜索结果中的对象存储OSS,进入OSS管理控制台

img

**说明:**如下图所示,代表您已经进入OSS管理控制台。

img

创建OSS Bucket

  1. 您可以通过OSS管理控制台,选择Bucket列表,单击创建Bucket,进行Bucket的创建。

img

2.创建Bucket时,填入Bucket名称,选择正确的地域其它参数使用默认值,单击确认完成Bucket的创建。

说明:

  • **Bucket名称:**具有全局唯一性,填入Bucket时如遇“该Bucket已存在,或被其他用户占用”请更换Bucket名称。
  • 地域:个人网盘场景中需要和ECS实例处于同一个地域。您可以通过控制台,找到云ESC服务器,获取ECS地域信息。
  • **其它参数:**使用默认值。

img

3.安装Cloudreve

登陆ECS实例

  1. 找到需要部署网盘的ECS实例,切换至Terminal

安装运行Cloudreve

  1. 安装包**。

说明wget 是Linux系统用于从Web下载文件的命令行工具。wget加上需要下载文件的链接,即可完成文件的下载。

wget https://labfileapp.oss-cn-hangzhou.aliyuncs.com/cloudreve_3.3.1_linux_amd64.tar.gz

**说明:**返回结果如下所示,即完成cloudreve安装包的下载。img

3.下载完毕后,执行如下命令,解压cloudreve安装包。

说明tar是Linux系统用于解压与压缩命令,解压参数中z表示配合解压**.gz类型的压缩包,x表示解压缩,v**表示显示解压缩详细信息,f表示被处理文件。

tar -zxvf cloudreve_3.3.1_linux_amd64.tar.gz

**说明:**返回结果如下所示,即完成cloudreve安装包的解压。

img

4.执行如下命令,给cloudreve授予权限。

说明**:chmod用于改变文件或目录的访问权限,+x**表示赋予可执行权限,下一步需要运行cloudreve程序,您必须赋予cloudreve可执行权限。

chmod +x ./cloudreve

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

./cloudreve

说明:返回结果如下所示,您可以看到初始管理员账号初始管理员密码监听端口。初始密码是随机生成的,您可以记录初始管理员密码,或后续使用时返回此处查询。

img

验证Cloudreve

1.网盘访问时,需要使用到公网IP,您需要获取ECS实例的公网地址。

2.在您的本机浏览器中,打开新页签,访问http://<ECS公网地址>:<cloudreve****监听端口>,依次输入初始化管理员账号初始化管理员密码,单击登录注意冒号为英文格式字符。

说明:假设ECS公网地址为192.168.1.1,cloudreve****监听端口为固定值5212,那么cloudreve的访问地址则为:http://192.168.1.1:5212 。请将实际的ECS实例的公网IP地址进行替换。img

3.登录成功界面如下。

img

停止Cloudreve

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

4.安装ossfs

安装ossfs

ossfs能让您在Linux系统中,将对象存储OSS的存储空间(Bucket)挂载到本地文件系统中,您能够像操作本地文件一样操作OSS的对象(Object),实现数据的共享。在本部署中通过ossfs挂载OSS Bucket到ECS实例中,作为个人网盘的存储使用。

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

说明wget 是Linux系统用于从Web下载文件的命令行工具。wget加上需要下载文件的链接,即可完成文件的下载。

ls 

**说明:**返回结果如下所示,即完成ossfs安装包的下载。

img

2.安装ossfs。

yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。在本场景中我们需要安装ossfs软件,在安装ossfs过程中通过yum可以自动下载和安装ossfs软件的依赖软件包。

  1. 执行如下命令,更换yum源。

**说明:**ECS系统为Centos 8,由于Centos8 yum官方源下线,需要更换为阿里云yum源。

step1:先删除系统内过期的.repo文件

rm -f /etc/yum.repos.d/*

step2:下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

step3:运行 yum makecache 生成缓存

yum clean all && yum makecache

**说明:**返回结果如下所示,即完成yum源的更换。

img

3.执行如下命令,安装ossfs。

说明:使用yum命令安装ossfs时,yum install xx.rpm表示为安装xx.rpm软件包,-y参数表示安装过程中自动选择yes

yum install -y ./ossfs_1.80.6_centos8.0_x86_64.rpm

说明:****执行安装命令后返回结果显示Complete!,如下图所示,表示ossfs安装成功。

img

配置ossfs

  1. 获取到OSS Bucket和AccessKey ID和AccessKey Secret信息。
  • BucketName:您在对象存储OSS控制台中创建的Bucket名称,可在对象存储OSS控制台>Bucket列表中查看。
  • AccessKey IDAccessKey SecretAK IDAccessKey ID,AK Secret即AccessKey Secret。
  • 获取ak方式

2.执行如下命令,配置账号访问信息,将Bucket名称以及具有此Bucket访问权限的AccessKey ID和AccessKey Secret信息存放在/etc/passwd-ossfs文件中。

说明:您需要将命令中的BucketName、yourAccessKeyId和yourAccessKeySecret替换成您创建的Bucket名称、主账号的AccessKey ID和主账号的AccessKey Secret请注意使用英文格式字符。

echo BucketName:yourAccessKeyId:yourAccessKeySecret > /etc/passwd-ossfs
示例:echo hhbtest:sdafsdfasdf12313:hjhsdjfhkjhkjhkjhkj > /etc/passwd-ossfs

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

说明:后续挂载OSS Bucket阶段,需要使用passwd-ossfs中的AccessKeyId和AccessKeySecret去验证是否具有passwd-ossfs文件中Bucket的权限。

chmod 640 /etc/passwd-ossfs

5.挂载OSS Bucket

创建挂载点

  1. 在ECS命令行界面,执行如下命令,创建一个名为oss文件夹。
mkdir oss

手动挂载OSS Bucket

2.执行如下命令,将Bucket挂载到指定目录**/root/oss**,您需要将命令中的BucketName、mountfolder和Endpoint替换成之前创建的bucket名称、创建的oss文件夹和OSS的内网Endpoint。

ossfs BucketName mountfolder -o url=Endpoint

说明:

  • BucketName:您在对象存储OSS控制台中创建的bucket名称,可在对象存储OSS控制台>Bucket列表中查看。
  • mountfolder:上一步创建的挂载文件夹(为**/root/oss**)。
  • Endpoint:OSS的ECS的经典网络访问(内网)的Endpoint,可在Bucket列表>>Bucket概览>>访问端口中查看。

img

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

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

img

设置开机自动挂载OSS Bucket

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

  2. 进入Vim编辑器。

vim /etc/init.d/ossfs

3.按下i键进入编辑模式,vim编辑器左下方看到**–INSERT–**字样,即表明已经进入编辑模式。

img

4.复制下列示例脚本内容,右键粘贴,会跳出粘贴对话框,此时您需要将命令最后一行中的BucketName、mountfolder和Endpoint替换成您创建的Bucket名称、创建的ossfs挂载点文件夹路径和OSS的内网Endpoint

  • BucketName:您在对象存储OSS控制台中创建的Bucket名称,可在对象存储OSS控制台>Bucket列表中查看。
  • ossfs挂载点/root/oss。
  • Endpoint:OSS的ECS的经典网络访问(内网)的Endpoint,可在Bucket列表>>Bucket概览>>访问端口中查看。
#! /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

img

说明:显示如下图所示,表示完成粘贴。

img

5.按下Esc键退出vim编辑模式,即vim编辑器左下方**–INSERT–字样消失。**

img

6.保存文件,输入**:wq**,vim编辑器左下方看到**:wq**字样,**按下Enter键,**保存并退出Vim编辑器。

img

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

说明:chmod是添加更改权限的命令,a是指所有的用户组,+x是指添加执行权限。

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

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

chkconfig ossfs on

6.配置个人网盘

运行Cloudreve

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

配置Cloudreve

配置cloudreve主要是对存储策略进行配置,并将存储策略与用户组进行绑定。存储策略定义了文件的存储平台、上传和功能限制。用户组与存储策略绑定,此用户组下的用户将共享同一个存储策略。

  1. 登陆cloudreve。打开浏览器,访问http://<ECS公网地址>:****<cloudreve监听端口>,依次输入管理员账号和密码,单击登录请注意冒号使用英文格式字符。

说明:****您可以通过云产品资源列表查看ECS的公网地址,假设ECS公网地址为192.168.1.1,cloudreve****监听端口为固定值5212,cloudreve的访问地址为:http://192.168.1.1:5212 。

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

img

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

img

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

img

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

img

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

img

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

img

说明:/root/oss为oss Bucket的挂载点。

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

img

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

img

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

img

配置用户组

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

img

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

img

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

img

img

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

img

上传文件到个人网盘

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

img

OSS Bucket验证个人网盘上传结果

  1. 复制下方地址,在Chromium网页浏览器打开新页签,粘贴并访问OSS管理控制台。
https://oss.console.aliyun.com/

2.在左侧导航栏中,单击Bucket列表

img

3.在Bucket页面,找到创建的Bucket,单击Bucket名称

img

4.在文件列表页面,根据云产品资源列表中的Object路径,单击对应的文件夹名称,进入Object路径。

imgimg

5.在文件列表页面,单击文件名为1的文件夹。

img

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

img

至此,个人网盘完成搭建,可尽情使用;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/18655.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

视频太大怎么压缩变小?视频压缩技巧快来学

我们都知道&#xff0c;视频分辨率越高&#xff0c;文件体积也就越大&#xff0c;为了更好的存储、传输和播放&#xff0c;我们需要适当压缩视频的大小&#xff0c;那么怎么才能轻松的将视频文件压缩变小呢&#xff1f;下面就给大家分享几个简单的方法&#xff0c;一起来看看吧…

利用尺度因子方法恢复GRACE水储量变化

1.背景 重力恢复与气候实验&#xff08;GRACE&#xff09;观测地球重力势的时间变化。在考虑了大气和海洋效应后&#xff0c;每月到年际尺度上剩余的信号主要与陆地水储存&#xff08;TWS&#xff09;的变化有关。水储存变化的估计受到测量误差和噪声的信号退化影响&#xff0…

11年编码经验程序员惨遭淘汰解雇,原因竟是不会使用AI工具

近日&#xff0c;Twitter 上一名技术人分享了一个事件&#xff0c;即拥有11年Java编码经验、会 100% 手写代码的程序员因拒绝使用辅助代码工具&#xff0c;只想写可控的代码&#xff0c;竟败给一位仅有4年经验、却善用编码工具的后辈&#xff0c;惨遭面试淘汰。 当「拒绝使用编…

PHP代码审计——实操!

ctfshow PHP特性 web93 八进制与小数点 <?php include("flag.php"); highlight_file(__FILE__); if(isset($_GET[num])){$num $_GET[num];if($num4476){die("no no no!");}if(preg_match("/[a-z]/i", $num)){die("no no no!")…

建网站一般使用Windows还是liunx好?

建网站一般使用Windows还是liunx好&#xff1f; 1&#xff1b;服务器配置比较低时&#xff0c;最好使用linux系统。 对于一个电脑新手&#xff0c;刚开始做网站时&#xff0c;都会选择入门级的服务器&#xff0c;我刚开始做网站时&#xff0c;就是这样的。我购买了一台入门级服…

CS5265 USB-C to HDMI 4k@60Hz单转方案

CS5265AN是一款高性能Type-C/DP1.4至HDMI2.0b转换器芯片&#xff0c;集成了DP1.4兼容接收机和HDMI2.0b兼容发射机&#xff0c;还配备了CC控制器用于CC通信&#xff0c;实现DP Alt模式。DP接口包括4条主通道、辅助通道和HPD信号&#xff0c;接收器支持每通道最大5.4Gbps数据速率…

浅入浅出MySQL事务

什么是事务 事务是由数据库中一系列的访问和更新组成的逻辑执行单元。 事务的逻辑单元中可以是一条SQL语句&#xff0c;也可以是一段SQL逻辑&#xff0c;这段逻辑要么全部执行成功&#xff0c;要么全部执行失败。 事务处理的基本原则是“原子性”、“一致性”、“隔离性”和…

114.(cesium篇)cesium去掉时间轴并用按钮控制运动

地图之家总目录(订阅之前必须详细了解该博客) 地图之家:cesium+leaflet+echart+地图数据+地图工具等相关内容的介绍 文章末尾处提供保证可运行完整代码包,运行如有问题,可“私信”博主。 效果如下所示: cesium去掉时间轴并用按钮控制运动 下面献上完整代码,代码重要位…

《网络是怎样连接的》(二.2)

(6条消息) 《网络是怎样连接的》&#xff08;二.1&#xff09;_qq_38480311的博客-CSDN博客 本文主要取材于 《网络是怎样连接的》 第二章 2.5 2.6章节。 目录 简述&#xff1a; 本文的主要内容是 以太网的收发操作 和 UDP协议的收发操作。 IP与以太网的包收发操作 包是什…

Java反射(一)

目录 1.了解反射 2.Class类的三种实例化方法 3.反射机制与对象实例化 4.反射与单例设计模式 5.通过反射获取类结构的信息 1.了解反射 什么是反射&#xff0c;反射有什么作用 1.在Java中&#xff0c;反射是一种机制&#xff0c;允许程序在运行时动态地获取、使用和修改类的…

ChatGPT学python——制作自己的AI模型(一)初步了解

前言 「作者主页」&#xff1a;雪碧有白泡泡 「个人网站」&#xff1a;雪碧的个人网站 「推荐专栏」&#xff1a; ★java一站式服务 ★ ★前端炫酷代码分享 ★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff0c;vue成神之路★ ★ 解决算法&#xff0c;一个专栏就够了★ ★ 架…

大数据课程E1——Flume的概述

文章作者邮箱&#xff1a;yugongshiyesina.cn 地址&#xff1a;广东惠州 ▲ 本章节目的 ⚪ 了解Ganglia的概念&#xff1b; ⚪ 了解Ganglia的拓扑结构和执行流程&#xff1b; ⚪ 掌握Ganglia的安装操作&#xff1b; 一、简介 1. 概述 1. Flume原本是由Cloude…

【华为HCIP | 高级网络工程师】刷题日记(11)

个人名片&#xff1a; &#x1f43c;作者简介&#xff1a;一名大二在校生&#xff0c;喜欢编程&#x1f38b; &#x1f43b;‍❄️个人主页&#x1f947;&#xff1a;落798. &#x1f43c;个人WeChat&#xff1a;见文末 &#x1f54a;️系列专栏&#xff1a;&#x1f5bc;️ 零…

数据结构和算法入门(时间/空间复杂度介绍--java版)

数据结构和算法入门&#xff08;时间/空间复杂度介绍–java版&#xff09; write in front 作者&#xff1a; 向大佬学习 专栏&#xff1a; 数据结构&#xff08;java版&#xff09; 作者简介&#xff1a;大二学生 希望能学习其同学和大佬的经验&#xff01; 本篇博客简介&…

微信小程序页面传值为对象[Object Object]详解

微信小程序页面传值为对象[Object Object]详解 1、先将传递的对象转化为JSON字符串拼接到url上2、在接受对象页面进行转译3、打印结果 1、先将传递的对象转化为JSON字符串拼接到url上 // info为对象 let stationInfo JSON.stringify(info) uni.navigateTo({url: /pages/statio…

jenkins自定义邮件发送人姓名

jenkins发送邮件的时候发送人姓名默认的&#xff0c;如果要自定义发件人姓名&#xff0c;只需要修改如下信息即可&#xff1a; 系统管理-system-Jenkins Location下的系统管理员邮件地址 格式为&#xff1a;自定义姓名<邮件地址>

VMware虚拟机安装Linux教程(超详细)

一、安装 VMware 官方正版VMware下载&#xff08;16 pro&#xff09;&#xff1a;https://www.aliyundrive.com/drive/file/backup/64c9fa3c132e0d42c60d489c99f3f951ef112ad5 下载Linux系统镜像&#xff08;阿里云盘不限速&#xff09;&#xff1a;https://www.aliyundrive.c…

CCL 2023 电信网络诈骗案件分类评测-第一名方案

1 任务内容 1.1 任务背景 2022年12月1日起&#xff0c;新出台的《反电信网络诈骗犯罪法》正式施行&#xff0c;表明了我国治理当前电信网络诈骗乱象的决心。诈骗案件分类问题是打击电信网路诈骗犯罪过程中的关键一环&#xff0c;根据不同的诈骗方式、手法等将其分类&#xff…

tp-link端口映射设置教程及快解析内网穿透

通常情况下&#xff0c;我们希望互联网的其他用户访问到我们本地局域网内部的一台服务器、监控……等设备或应用&#xff0c;就要在本地路由器或防火墙的出接口/路由器WAN口 上做端口映射&#xff0c;将内部局域网某台计算机的私网IP&#xff0c;如&#xff1a;192.168.1.101 内…

手写一个锁其实也很easy

懵逼的状态&#xff1a; 面试中经常被问到&#xff0c;如何手写一个锁&#xff0c;很多时候一脸懵逼&#xff0c;不知所措&#xff0c;多少年前深有体会&#xff0c;然而回过头来细细分析&#xff0c;只需使用AtomicReference类 即可以轻松搞定。首先咱们先来了解一下Atomi…