这次我们要在树莓派上搭建个私有云盘,在局域网内为家里的设备提供24小时不间断的磁盘服务。

  • 树莓派 :我用了4B,需要刷个64位的linux系统,推荐 Debian- pi -Aarch64。
  • 蓝眼云盘:开源的云盘系统很多,经过一番筛选后选择了蓝眼云盘。它是用golang写成,后台操作界面很完善,github上star数不少,维护人员也很活跃,代码地址:。
  • 移动硬盘:树莓派内置的SD卡存储量有限,需要挂个外接硬盘。
  • mariadb : mysql 是兼容的数据库,蓝眼云盘需要的。

直接用root用户登录树莓派进行操作。

1、挂载移动硬盘

前面的一篇文章已经详细介绍过,请移步 ,我们假设已经成功挂载在在/home/pi/warehouse/disk目录下。

2、安装mariadb

apt-get install mariadb-server
 

安装好后配置下允许外部访问,命令行操作不太方便。

mysql -uroot -p
 

安装好后默认的密码是空,输密码的地方按enter就好,顺便修改下数据库的密码。

use mysql;
set password=PASSWORD('you-password');
flush privileges;
 

开始配置允许 远程访问

首先在配置文件里注释掉绑定本地ip的配置项,配置文件如下。

vim /etc/mysql/mariadb.conf.d/50-server.cnf
 

配置允许root用户远程登录,这个要修改数据库,先用命令行连接上数据库。

mysql -uroot -p
 

查询下用户现在的配置,可以看到host是localhost.

select User, host from mysql.user;
 

把它修改成允许所有ip访问,IDENTIFIED BY后面跟的是远程访问的密码, 一定要注意这个访问密码!不然你可能找问题找到吐血!

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'new-password' WITH GRANT OPTION;
 

刷新一下

FLUSH PRIVILEGES;
 

再次查看用户host配置。

select User, host from mysql.user;
 

这样应该就可以远程访问了。

3、安装蓝眼云盘

准备工作都已经完成了,开始进入正题。

首先下载个蓝眼云盘,tank-3.0.5.linux-arm64.tar.gz是我们需要的版本。执行 wget 命令下载。

wget 
 

解压。

tar -xzvf tank-3.0.5.linux-arm64.tar.gz
 

改下名字舒服点儿。

mv tank-3.0.5 tank
 

在我们的数据库中给云盘创建一个数据库,一定要选utf8mb4,不然很多中文和特殊字符都没法存储。

初次启动蓝眼云盘,到云盘目录的service目录执行下

 ./startup.sh
 

访问树莓派的ip,我的是 。按照引导步骤安装就好。

首先填写的是数据库。

然后开始创建表,点一键建表。

之后创建管理员账号

然后就搞定啦

我们配置下云盘文件的存储位置,让他存储到我们的移动硬盘上,配置文件是云盘目录下的./config/tank. json

红色箭头所指的就是文件存储目录,我们改成/home/pi/warehouse/disk。

后记

局域网里的其他设备都可以访问http://树莓派ip:6010来使用云盘。这样做其实不是很完美,如果我们在搞个dns服务器用域名访问就比较舒服了。还有一个缺陷是不能 外网 访问,还可以搞下内网穿透,让外网也能访问到。