写在开头
Nextcloud是一套用于创建网络硬盘的客户端-服务器软件。其功能与Dropbox相近,但Nextcloud是自由及开放源代码软件,每个人都可以在私人服务器上安装并运行它。
本文将介绍如何在树莓派3B Raspbian 中安装Nextcloud。
本来我没有写这篇文章的打算,但是通过中文搜索引擎(x度)搜到的一大堆教程,基本都无法正确安装,所以就自己摸索,完美安装了Nextcloud。
Nextcloud官网链接
安装Raspbian、SSH链接
Raspbian更换软件源
首先,我们需要更换一个更快的软件源,否则接下来的操作非常耗时。
编辑
/etc/apt/sources.list
文件,删除原文件所有内容,用以下内容取代:1
2deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main non-free contrib编辑
/etc/apt/sources.list.d/raspi.list
文件,删除原文件所有内容,用以下内容取代:/etc/apt/sources.list.d/raspi.list 1
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ stretch main
更新软件源
1
sudo apt-get update && sudo apt-get upgrade -y
安装所需依赖
- 注意,若直接安装php等包,则可能安装到7.0版本的php,而nextcloud16最低要求7.1版本,所以请勿直接安装php等包。
错误信息:
解决方法参阅文章末尾故障排除。
安装软件源拓展工具
安装软件源拓展工具 1
sudo apt -y install software-properties-common apt-transport-https lsb-release ca-certificates
添加GPG
添加 GPG 1
wget -O /etc/apt/trusted.gpg.d/php.gpg https://mirror.xtom.com.hk/sury/php/apt.gpg
添加sury软件源
添加 sury 软件源 1
sh -c 'echo "deb https://mirror.xtom.com.hk/sury/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
更新软件源缓存
更新软件源缓存 1
sudo apt-get update
安装 PHP7.3、Apache2等
安装 PHP7.3 1
2sudo apt install php7.3-fpm php7.3-mysql php7.3-curl php7.3-gd php7.3-mbstring php7.3-xml php7.3-xmlrpc php7.3-zip php7.3-opcache -y
sudo apt install mlocate apache2 libapache2-mod-php mariadb-client mariadb-server wget unzip bzip2 curl php php-common php-curl php-gd php-mbstring php-mysql php-xml php-zip php-intl php-apcu php-redis php-http-request
开启支持exfat
1 | sudo apt-get install exfat-utils |
通过fdisk了解你的硬盘的路径
1 | sudo fdisk -l //或lsblk |
这里,我得到的路径为'/dev/sda'
,我将用此路径进行下一步操作。
- 格式化硬盘为ext4格式
格式化硬盘为ext4格式 1
sudo mkfs.ext4 /dev/sda
挂载
创建硬盘挂载点/home/pi/sda
1 | mkdir /home/pi/sda |
挂载硬盘
1 | sudo mount -t ext4 /dev/sda /home/pi/sda |
设置为开机自动挂载
1 | sudo nano /etc/fstab |
加入以下文字
1 | /dev/sda /home/pi/sda ext4 defaults 0 0 |
创建Apache2 nextcloud配置文件
创建nextcloud.conf
,加入如下文字
1 | <VirtualHost *:80> |
创建MariaDB 数据库和用户
登录MariaDB控制台:
1 | sudo mysql -u root |
1 | CREATE DATABASE nextcloud; //创建新nextcloud数据库 |
安装Nextcloud
进入/var/www
目录。
1 | cd /var/www |
下载Nextcloud.zip文件并提取其中文件
{%note danger%}
注意
目前最新版本的Nextcloud为16.0.3
{%endnote%}
1 | sudo wget https://download.nextcloud.com/server/releases/nextcloud-16.0.1.zip |
- 这里,我将nextcloud-16.0.1.zip同时保存到了我的Nextcloud上,可以点击下载
修改权限
1 | sudo chown -R www-data:www-data nextcloud //将nextcloud目录中所有文件的所有者和组更改为www-data |
使用命令启用nextcloud
1 | sudo a2ensite nextcloud.conf //启用nextcloud.conf站点配置 |
将apache2和mariadb添加到系统服务
1 | sudo systemctl enable apache2 mariadb |
现在,您应该能通过树莓派的IP地址
打开Nextcloud。
配置Nextcloud
创建一个管理员用户,自行创建。
点击下方的箭头,选择MariaDB作为数据库。
输入你的数据存放目录,我的是
/home/pi/sda
点击安装完成,并稍等一段时间。
安装完成
故障排除
列举了部分Nextcloud安装时的故障。
PHP版本过低
施工中