Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >搭建Cloudreve云盘

搭建Cloudreve云盘

作者头像
Melody132
发布于 2020-03-11 10:10:13
发布于 2020-03-11 10:10:13
11.1K00
代码可运行
举报
文章被收录于专栏:时光笔记时光笔记
运行总次数:0
代码可运行

说到云盘,想来最初用到的其实是网吧的临时存储盘,临时存储盘其实就是网吧搭建的局域网云盘系统,可以通过网管软件进行访问。主要用途就是可以存储一下游戏存档,因为网吧的电脑一般重启后数据就全部丢失了,下次再来上网,上次的游戏数据就没了。

后来接触到了QQ的文件中转站功能,相比网吧的临时存储盘,QQ文件中转站不仅限于局域网访问,可以实现互联网中任意电脑之间的文件网络中转和文件存储

大概在2012年的时候,大批网盘应用相应上线,腾讯微云、百度网盘、360网盘等等等。由于是之前用的是QQ的文件中转站,所以最先用到的是腾讯微云,最开始的容量貌似是2GB。后来百度网盘,360网盘的上T容量吸引了我,百度网盘是下载手机版送2T的空间,360网盘也是做任务送容量,当时我做到了40T,而且当时360网盘没有会员制度,下载速度比百度网盘感人的多,360还有文件共享群,有分享系统镜像的、电影电视剧的,可以一键转存到自己网盘空间,相当方便。家里也是一直在用360全家桶,而且360主要的产品就是安全软件,心里可能觉得360云盘更安全一点,所以最后360网盘成为了我主要的存储以及备份途径。

然而就在短短4年的时间,2016年就有大批网盘相继关停了,属于用户的网盘时代可以说就此结束了。360网盘在这次风波中也没能幸免,最后它转型做了企业网盘。现在想来感觉也还是很惋惜,因为对360网盘的印象很好,在这也希望它能重新开放个人网盘业务。这场风波过后网盘用户就像待宰的绵羊,会员价格一高再高,出了VIP还有出超级VIP,而且用户数据隐私也是一大问题。

在前段时间看了博友大大的小熊的一篇关于搭建Cloudreve云盘的文章,所以利用这段时间自己也折腾起了私有云盘。Cloudreve支持VPS的本地存储、云存储(七牛、COS)、onedrive、远程存储服务器 等等。这里面吸引我的就是远程存储服务器的存储方式,因为它可以实现将网盘数据存储到自建的远程存储服务器上。而我就想要将数据存储到家里路由器的外接硬盘里,这样数据就在我身边,更放心一些。

但是想要在路由器上搭建远程存储服务器,那就必须需要在路由器上安装PHP环境。但我的TPLink家用路由器安装PHP有些吃力。本想就此作罢,但临睡前灵光乍现,想到了一套可行的解决方案,大体步骤就是Cloudreve的使用本地存储方案,也就是将数据存储到VPS的/public/upload路径,而路由器再开SMB文件共享,然后通过Frp将445端口映射到VPS的4451端口上,此时VPS与路由器的SMB网路就通了,然后再将SMB共享挂载到VPS的/public/upload路径上。

路由器端步骤

安装软件包,创建存储目录

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 安装软件包
opkg update
opkg install shadow-common
opkg install shadow-useradd
opkg install samba36-server

# 创建SMB共享目录
mkdir -p /share/pan
# 创建用户并授权
useradd -s /sbin/nologin www
smbpasswd www # 设置个密码:123456
chown -R www /share/pan

frpc.ini

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[common]
server_addr = 服务地址
server_port = 服务端口
token = 授权Token

[smb]
type = tcp
local_ip = 127.0.0.1
local_port = 445
remote_port = 4451

/etc/samba/smb.conf.template

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[global]
    netbios name = Home 
    display charset = utf-8
    interfaces = 127.0.0.1/8 lo 192.168.3.1/24 br-lan
    server string = OpenWrt
    unix charset = utf-8
    workgroup = WORKGROUP
    browseable = yes
    deadtime = 30
    domain master = yes
    encrypt passwords = true
    enable core files = no
    guest account = nobody
    guest ok = yes
    #invalid users = root
    local master = yes
    load printers = no
    map to guest = Bad User
    max protocol = SMB2
    min receivefile size = 16384
    null passwords = yes
    obey pam restrictions = yes
    os level = 20
    passdb backend = smbpasswd
    preferred master = yes
    printable = no
    security = user
    smb encrypt = disabled
    smb passwd file = /etc/samba/smbpasswd
    socket options = TCP_NODELAY IPTOS_LOWDELAY
    syslog = 2
    use sendfile = yes
    writeable = yes

/etc/config/samba

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
config samba
    option 'name'            'OpenWrt'
    option 'workgroup'        'WORKGROUP'
    option 'description'        'OpenWrt'
    option 'homes'            '1'

config 'sambashare'
    option 'name' 'pan'
    option 'path' '/share/pan'
    option 'writable' 'yes'
    option 'guest_ok' 'no'
    option 'users' 'www'
    option 'create_mask' '0755'
    option 'dir_mask' '0755'
    option 'read_only' 'no' 
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#重启samba
/etc/init.d/samba restart
#启动frpc
/root/frp/frpc

VPS操作

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#安装cifs
yum install cifs-utils
#挂载
mount -t cifs -o port=4451,username=www,password=123456,vers=1.0,iocharset=utf8,rw,dir_mode=0755,file_mode=0755 //127.0.0.1/pan /www/wwwroot/pan/public/uploads/

#因为路由器通过frp将445端口映射到VPS4451端口,所有VPS的路径直接写回环地址127.0.0.1即可

如此这般操作后,在Cloudreve在读写/public/upload目录时,实际上是通过SMB共享去读写家里路由器上的硬盘。技术含量不高,但这里需要注意一点SMB权限的问题,SMB不能使用匿名登录方式共享,不然VPS挂载后Cloudreve将因为权限问题没办法写入。但是建议使用正规套路去实现远程存储,比如在路由器上搭建Cloudreve的远程存储服务器来实现。

另外Cloudreve的BUG实在有点多,没有点编程基础会用不来。大家有什么推荐的开源云盘程序吗?

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-02-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
与时俱进 | 博客现已运行在 .NET Core 3.0 及 Azure 上
9月23日,微软正式发布了 .NET Core 3.0,这个版本具有大量新功能和改进。我也在第一时间将自己的博客网站更新到了 .NET Core 3.0,并且仍然跑在微软智慧云 Azure 国际版的应用服务上。本文总结了我在博客迁移过程中所有的要点。
Edi Wang
2019/09/26
1.1K0
与时俱进 | 博客现已运行在 .NET Core 3.0 及 Azure 上
译 | Azure App Service 上的 .NET 6 预览版
我们很高兴地宣布,Azure App Service 现在可以通过预览版在所有地区和场景支持面向 Windows 和 Linux 的 .NET 6 Preview 4 应用。
Edi Wang
2021/07/07
5760
译 | Azure App Service 上的 .NET 6 预览版
.NET Core 2.1 Preview 2发布 - April 10, 2018
原文: https://blogs.msdn.microsoft.com/dotnet/2018/04/11/announcing-net-core-2-1-preview-2/ 我们今天宣布发布 .NET Core 2.1 Preview 2。这也是我们在接下来的两到三个月内接近最终发布的版本,该版本现已准备好进行广泛的测试。我们希望您有任何反馈意见。 ASP.NET Core 2.1 Preview 2和Entity Framework 2.1 Preview 2也在今天发布。 您可以在Windows
张善友
2018/06/19
9140
官宣!微软跨平台 UI 框架 .NET MAUI 6 正式发布!
欢迎使用 .NET 多平台应用程序 UI。此版本标志着我们在统一 .NET 平台的多年旅程中的新里程碑。现在,您和超过 500 万其他 .NET 开发人员拥有面向 Android、iOS、macOS 、Windows和Linux(由Github开源社区支持) 的一流跨平台 UI 技术栈,以补充 .NET 工具链 (SDK) 和基础类库 (BCL)。您可以使用 .NET 构建任何东西。
JusterZhu
2022/12/07
4.5K0
官宣!微软跨平台 UI 框架 .NET MAUI 6 正式发布!
.NET 9 预览版 3 发布
我们很高兴地宣布发布 .NET 9 预览版 3,其中包含 .NET 库、运行时和 SDK 的新功能和改进。此预览版带来了旨在提高性能、提高开发人员工作效率以及向 .NET 生态系统引入新功能的增强功能。让我们来探讨一下此版本中的一些主要亮点:
郑子铭
2024/04/16
2080
.NET 9 预览版 3 发布
【译】宣告推出.NET Core 3.0 Preview 7(英雄的黎明)
今天,我们宣布推出.NET Core 3.0 Preview 7。我们已经从创建新特性阶段过渡到了完善版本阶段。对于接下来的预览版,我们将把重点放在质量(改进)上。
AI.NET 极客圈
2019/07/30
5630
官宣 .NET MAUI 预览版 6
最近,我们发布了 .NET 多平台应用程序 UI (MAUI)的最新进展。在此版本中,我们全力支持 Visual Studio 2022 预览版 2。这也标志着我们首次将 .NET MAUI 作为工作负载安装发布。现在提供了一些新功能,包括手势、模态页面、视图剪辑、本机警告、灵活布局等。随着采用最新版本的Windows App SDK和Visual Studio 插件,单个项目也继续得到改进。让我们更深入地了解一下。
沙漠尽头的狼
2021/12/01
2.7K0
官宣 .NET MAUI 预览版 6
Aspire 框架预览版发布,使云原生开发和运维更加简单
随着 .NET 8 的发布,.NET Aspire 也随之发布[1],这是一个全家桶框架旨在加快基于云的应用程序的构建。.NET Aspire 从一开始就集成了关键组件,例如遥测和运行状况检查。它还承诺提供无缝的本地开发人员体验,该体验可以有效扩展以满足云应用程序开发的需求。Microsoft 鼓励对 .NET Aspire 预览版(目前在 GitHub 上提供[2])提供反馈。
JusterZhu
2023/11/17
2930
Aspire 框架预览版发布,使云原生开发和运维更加简单
Aspire 框架预览版发布,使云原生开发和运维更加简单
随着 .NET 8 的发布,.NET Aspire 也随之发布[1],这是一个全家桶框架旨在加快基于云的应用程序的构建。.NET Aspire 从一开始就集成了关键组件,例如遥测和运行状况检查。它还承诺提供无缝的本地开发人员体验,该体验可以有效扩展以满足云应用程序开发的需求。Microsoft 鼓励对 .NET Aspire 预览版(目前在 GitHub 上提供[2])提供反馈。
张善友
2023/11/17
6850
Aspire 框架预览版发布,使云原生开发和运维更加简单
.NET 7.0 Preview 6、.NET 6.0.7、.NET Core 3.1.27 和 Visual Studio 2022 17.3 预览版也发布了
昨天发布了大量的补丁更新,.NET和Visual Studio 2022也分别收到了更新。.NET 7.0,下一个主要版本已发布了预览版 6。 当前主要版本.NET 6,已更新到 6.0.7。以及 .NET Core 3.1 更新到了 3.1.27。
张善友
2022/09/08
6730
官宣 .NET 7 Preview 2
今天,我们很高兴发布 .NET 7 预览版 2。.NET 7 的第二个预览版包括对 RegEx 源生成器的增强、将 NativeAOT 从实验状态转移到运行时的进展,以及对"dotnet new"CLI 的一系列重大改进经验。这些可供您立即获取_并_开始尝试新功能,例如: 在编译时使用源生成器而不是在运行时使用较慢的方法来构建专门的 RegEx 模式匹配引擎。 dotnet new利用 SDK 改进提供全新的简化选项卡完成体验来探索模板和参数。 不要削减用你自己的创新解决方案尝试 NativeAOT。 EF
IT大咖说
2022/03/25
8700
官宣 .NET 7 Preview 2
今天,我们很高兴发布 .NET 7 预览版 2。.NET 7 的第二个预览版包括对 RegEx 源生成器的增强、将 NativeAOT 从实验状态转移到运行时的进展,以及对“dotnet new”CLI 的一系列重大改进经验。这些可供您立即获取并开始尝试新功能,例如:
郑子铭
2022/04/19
1.1K0
.NET周刊【5月第3期 2025-05-18】
https://www.cnblogs.com/eventhorizon/p/18873400
InCerry
2025/06/09
640
.NET周刊【5月第3期 2025-05-18】
【翻译】发布 .NET 8 Preview 1
欢迎使用 .NET 8!第一个预览版已经发布,您可以获取第一个 .NET 8 预览版并开始构建应用程序。请往下滑动以查看此预览版中包含的功能列表。.NET 8 是一次长期支持 (LTS) 发布。本博客文章介绍了主要的主题和目标,驱动开发过程中的增强选择和优先级。.NET 8 预览版和候选版本将每月发布。像往常一样,最终版本将在十一月的 .NET Conf 上发布。
晓晨
2023/03/11
1.2K0
【翻译】发布 .NET 8 Preview 1
重磅!!!微软发布.NET Core 2.2
我们很高兴地宣布发布.NET Core 2.2。它包括对运行时的诊断改进,对ARM32 for Windows和Azure Active Directory for SQL Client的支持。此版本中最大的改进是在ASP.NET Core中。
justmine
2019/02/15
8550
官宣 .NET 7 预览版3
很高兴地宣布,我们发布了.NET 7 预览版3。.NET 7的第三个预览版包括了对可观察性、启动时间、codegen、GC regions、本地AOT编译等方面的增强。您现在就可以获取并开始尝试新功能,包括:
郑子铭
2022/06/10
7530
官宣 .NET 7 预览版3
.NET Core 2.2 正式发布
我们很高兴地宣布.NET Core 2.2版本。它包括对运行时诊断的改进、对 Windows 的 ARM32 和 SQL 客户端的 Azure Active Directory 的支持。此版本中最大的改进是 ASP.NET Core。
Edi Wang
2019/07/10
1.1K0
.NET周刊【2月第2期 2024-02-11】
https://www.cnblogs.com/Can-daydayup/p/18006914
InCerry
2024/02/26
2870
.NET周刊【2月第2期 2024-02-11】
.NET 9发布的最后一个预览版Preview 7, 下个月发布RC
微软在2024年8月9日 发布了.NET 9 Preview 7[1],这是它在2024 年 11 月 12 日 RTM 之前进入发布候选阶段之前的最后预览版, 将在.NET Conf 2024 一起发布[3]。该预览版也于也与 Visual Studio 2022 17.12 预览版1一起发布,现在可以直接通过 Visual Studio 安装程序安装 .NET 9。还可以将 Visual Studio Code 和 C# Dev Kit[2] 扩展与 .NET 9 一起使用。
张善友
2025/02/04
1220
.NET 9发布的最后一个预览版Preview 7, 下个月发布RC
拥抱.NET Core,如何开发跨平台的应用并部署至Ubuntu运行
本人用Windows环境就直接用Visual Studio了,当然也可以用记事本或Visual Code。
落跑架构师M
2020/02/11
1.9K0
拥抱.NET Core,如何开发跨平台的应用并部署至Ubuntu运行
推荐阅读
相关推荐
与时俱进 | 博客现已运行在 .NET Core 3.0 及 Azure 上
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验