公有云、xx云盘的各种不靠谱相信都众人皆知了。在近几年,多家云盘厂商宣布停止提供服务。而在为数不多的选择中,百度云盘又在近日暂停了磁力链和种子的下载。

度盘官微公告

现在的云盘中,大多数都是必须通过购买会员才能解锁限速,达到满速下载。所有的云盘又必须经过审查,公有云中的文件隐私让人担忧。

公有云的优势正在慢慢的消失,这个时候我们就可以考虑搭建一个属于自己的网盘,想存什么就存什么。

优点

1.云盘程序免费且开源。客户端平台齐全(Windows, Android, iOS, macOS...)
2.不限速(你网速多块,下载就多快。)*取决于服务器带宽
3.可以将文件生成共享链接发给朋友。
4.可以做到离线下载功能(需要单独安装插件或配置aria2,教程将在以后推出)

操作系统

本教程已在 Ubuntu 16.04 LTS 测试通过。如遇到问题欢迎在评论区留言
此教程不适用于 CentOS
此教程改写自 NextCloud 官方文档。

最简单的方法

如果你不想折腾,那么这个方法最适合你。

你可以执行这条命令去安装 NextCloud.

sudo snap install nextcloud

手动安装

首先,我们需要将当前用户切换为 root 用户。

安装 Apache2

你可以直接输入这些命令来安装。
apt update

apt-get install apache2 libapache2-mod-php7.0

apt-get install php7.0-gd php7.0-json php7.0-mysql php7.0-curl php7.0-mbstring

apt-get install php7.0-intl php7.0-mcrypt php-imagick php7.0-xml php7.0-zip

安装NextCloud

你可以前往NextCloud官网获取最新版本的安装ZIP,并替换掉本教程wget内容。

cd
wget https://download.nextcloud.com/server/releases/nextcloud-14.0.3.zip
unzip nextcloud-14.0.3.zip
cp -rv nextcloud /var/www/

创建配置文件:

nano /etc/apache2/sites-available/nextcloud.conf

*这里我比较推荐使用 nano 编辑器,你可以使用其他编辑器(比如 vim)。

之后写入以下内容:

Alias /nextcloud "/var/www/nextcloud/"

 

<Directory /var/www/nextcloud/>

 

 

Options +FollowSymlinks

 

 

AllowOverride All

 

 

Satisfy Any

 

 

<IfModule mod_dav.c>

 

 

Dav off

 

 

</IfModule>

 

 

SetEnv HOME /var/www/nextcloud

 

 

SetEnv HTTP_HOME /var/www/nextcloud

 

</Directory>

链接配置文件

ln -s /etc/apache2/sites-available/nextcloud.conf /etc/apache2/sites-enabled/nextcloud.conf

修改 Apache 的默认网站目录

nano /etc/apache2/sites-available/000-default.conf

找到 DocumentRoot /var/www/html 

将它修改为:DocumentRoot /var/www/nextcloud

修改后:

关于DocumentRoot设置

配置文件夹权限

chown -R www-data:www-data /var/www/nextcloud/

添加必要的模块:

a2enmod rewrite

 

a2enmod headers

 

a2enmod env

 

a2enmod dir

 

a2enmod mime

创建配置脚本

nano script

写入以下内容:

#!/bin/bash

 

ocpath='/var/www/nextcloud'

 

htuser='www-data'

 

htgroup='www-data'

 

rootuser='root'

 

printf "Creating possible missing Directories\n"

 

mkdir -p $ocpath/data

 

mkdir -p $ocpath/updater

 

printf "chmod Files and Directories\n"

 

find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640

 

find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750

 

printf "chown Directories\n"

 

chown -R ${rootuser}:${htgroup} ${ocpath}/

 

chown -R ${htuser}:${htgroup} ${ocpath}/apps/

 

chown -R ${htuser}:${htgroup} ${ocpath}/config/

 

chown -R ${htuser}:${htgroup} ${ocpath}/data/

 

chown -R ${htuser}:${htgroup} ${ocpath}/themes/

 

chown -R ${htuser}:${htgroup} ${ocpath}/updater/

 

chmod +x ${ocpath}/occ

 

printf "chmod/chown .htaccess\n"

 

if [ -f ${ocpath}/.htaccess ]

 

 

then

 

 

chmod 0644 ${ocpath}/.htaccess

 

 

chown ${rootuser}:${htgroup} ${ocpath}/.htaccess

 

fi

 

if [ -f ${ocpath}/data/.htaccess ]

 

 

then

 

 

chmod 0644 ${ocpath}/data/.htaccess

 

 

chown ${rootuser}:${htgroup} ${ocpath}/data/.htaccess

 

fi

存储后,执行此脚本

chmod +x script
./script

重启 Apache 服务

service apache2 restart

安装 MySQL

MySQL 的安装只需要一行指令即可,不需要其他的配置。
apt-get install mysql-server

在安装过程中会提示创建一个 root 账户的密码,请牢记此密码,设置过程中会用到。

创建数据库

mysql -u root -p

 

create database nextcloud;

 

quit;

设置 NextCloud

当以上过程全部做完时,你就可以尝试访问 http://[你的IP地址] 进入 NextCloud 。
<如果你的服务器是阿里云、腾讯云,可能需要配置80端口的安全组,具体请查看阿里云腾讯云的文档。>
配置NextCloud
管理员账号密码可以根据自己的需要填写。
数据库信息:
用户名:root
密码:<就是你在安装MySQL的时候设置的>
数据库名:nextcloud
地址不用变动。
之后猛戳安装完成,即可完成安装。
安装完成

推荐

如果你希望将 NextCloud 设置为 Windows 的网络硬盘,可以查看这篇文章:

WebDAV 链接查看方式:

如果在安装过程中出现问题,请在评论区留言,不定时解答。