说到云盘,大家第一时间应该想到的就是百度云,但是对于非会员的用户,它会对你进行及其恶心的限速,虽然对于会员来说没有这一限制,但是百度云盘毕竟是别人家的东西,数据隐私难免会被泄露出去,这时候我们就需要一个自己的私人云盘了。
如标题,服务器我选择的是阿里云,系统我选择的是centos7.5,而一般云服务器的存储空间都不是很大,这里我额外又购买了阿里云的oss对象储存服务。
云盘系统的话我则是选择的next cloud这套开源的云盘系统,这里附上这个项目的官网地址:nextcloud
1、搭建网站运行环境
或者你也可以直接输入下面的这句命令
做好准备,首先需要在云服务器上搭建一个网站可以正常运行的运行环境,我选择的是lnmp环境,用的lnmp一键脚本,省去麻烦,lnmp一键脚本官网地址:lnmp
wget http://soft.vpser.net/lnmp/lnmp1.6.tar.gz -cO lnmp1.6.tar.gz && tar zxf lnmp1.6.tar.gz && cd lnmp1.6 && ./install.sh lnmp
Mysql本版我选择的是5.7,需要注意的是MySQL 5.6,5.7及MariaDB 10必须在1G以上内存的更高配置上才能选择!
然后PHP的版本建议选择7.0以上,整个lnmp环境的安装时间耗时较长,大概在20-60分钟不等。
安装完成后如果显示Nginx: OK,MySQL: OK,PHP: OK,如下图所示:
并且Nginx、MySQL、PHP都是running,80和3306端口都存在,并提示安装使用的时间及Install lnmp V1.5 completed! enjoy it.的话,说明已经安装成功。
某些系统可能会一直卡在Install lnmp V1.5 completed! enjoy it.不自动退出,可以按Ctrl+c退出。
这时当你在浏览器输入你服务器IP的时候则会出现如下显示:
2、安装软件程序
lnmp脚本搭建好的环境,网站默认运行目录是存放在/home/wwwroot目录下的,这个你可以在添加网站指定的时候自行修改
2-1、添加网站指定
lnmp vhost add
这一步你也可以放到网站程序安装完成以后
2-2、安装网站程序
如果在这之前你还没有添加网站指定,你需要在/home/wwwroot目录先创建一个目录
cd /home/wwwroot
mkdir aaa #aaa改为你自己的网站名或者你自己想要的,网站指定目录时两者名称要一致
进到刚创建好的目录里下载网站程序并解压
wget https://download.nextcloud.com/server/releases/nextcloud-16.0.0.zip
unzip nextcloud-16.0.0.zip
mv /home/wwroot/#你创建的网站目录名#/nextcloud/* /home/wwroot/#你创建的网站目录名#
2-3、修改用户组
做到2-2那步其实就已经完成了,通过你绑定的域名就可以访问网站了,但这时你通过域名访问网站时你会发现网页提示“服务器内部错误”,遇到这个问题一般都是权限问题,但并不是读写权限,而是用户权限
我们在wwwroot目录下 输入ls -l #你网站目录名# 就可以看到用户组了,这时你会发现此时的用户和用户组,都是root(不同的安装方式用户权限可能不同,如果查看的用户组非root,可以忽略)
遇到这种情况,我们可以通过下面这条命令进行修改,将root用户组改为www
chown -R www:www #你的网站目录#
修改完成后再次用ls -l #你网站目录名# 查看,发现此时的用户组都已经改为了www
这时我们再次通过域名访问网站一切就正常了
3、挂载阿里云oss
3-1、挂载oss
根据阿里云官方文档,我们需要用到官方的ossfs插件,注意,此插件只适用linux系统 官方文档
- ossfs安装方法
对于Ubuntu,安装命令为:
apt-get update
apt-get install gdebi-core
gdebi your_ossfs_package
对于CentOS6.5及以上,安装命令为:
yum localinstall your_ossfs_package
对于CentOS5,安装命令为:
yum localinstall your_ossfs_package --nogpgcheck
- 使用方法
设置bucket name 和 AccessKeyId/Secret信息,将其存放在/etc/passwd-ossfs 文件中。注意这个文件的权限必须正确设置,建议设为640。
echo my-bucket:my-access-key-id:my-access-key-secret > /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs
将OSS bucket 挂载到指定目录。
ossfs my-bucket my-mount-point -ourl=my-oss-endpoint
示例:
将my-bucket
这个bucket挂载到/tmp/ossfs
目录下,OSS endpoint是http://oss-cn-hangzhou.aliyuncs.com
ossfs my-bucket /tmp/ossfs -ourl=http://oss-cn-hangzhou.aliyuncs.com
如果您使用从阿里云购买的云服务器(ECS)来提供ossfs服务,您可以使用内网域名,在这个示例中您可以将OSS endpoint 改为 oss-cn-hangzhou-internal.aliyuncs.com
,这样可以节省带宽方面的费用。OSS的内网域名请参考访问域名和数据中心。
注意:直接通过这条命令挂载的用户组为root,如果你是挂载到了nextcloud的数据目录data目录下,你需要将用户组修改为www,同时还需要将权限也修改为770,挂载时需将命令修改如下:
ossfs my-bucket /tmp/ossfs -ourl=http://oss-cn-hangzhou.aliyuncs.com -o uid=1001 -o gid=1001 -o umask=007 -o allow_other
//如果你想挂载下来的目录属于某个用户,则可以设置uid和gid参数。user_id和group_id是用户的uid和gid参数(通过id user_name命令即可查看)
//上面的umask是用来设置挂载下来的文件夹及文件的权限的。比如如果你想挂载下的文件夹的权限为770,你就设置umask=007,也即777-770。一定不能直接设置umask=770,而是要用777减去你想赋予的权限,也即777-770!
//allow_other是为了允许其他用户访问挂载文件夹
注意:挂载时,你所要挂载的目录一定要是空的,里面没有任何文件,否则将会挂载不上
3-2、设置开机自动挂载
cd /etc/init.d/
新建ossfs文件,写入信息
#! /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 my-bucket /tmp/ossfs -ourl=http://oss-cn-hangzhou.aliyuncs.com -o uid=1001 -o gid=1001 -o umask=007 -o allow_other
保存退出
之后执行命令:
chmod a+x /etc/init.d/ossfs
把新建立的ossfs脚本赋予可执行权限。
执行命令:
chkconfig ossfs on
挂载完毕后利用df -h命令查看会发现一个256T的容量,因为oss最大支持容量为256T
3-3、卸载bucket
fusermount -u /tmp/ossfs
至此,利用阿里云服务器+oss搭建的私人云盘就搭好了
视频教程
上篇
下篇
协助安装
本站提供付费协助搭建,有这个需要的可以留言或者联系站长!