前言
本教程参考官方文档编写,加以一些补充说明。
本文系统为Debain10,实际操作时请以你的系统为准
在debain10系统中,以root用户登陆时输入所有命令均无需sudo
为了适合一般情况,本文在所有命令前添加了sudo
对于一些操作过程中可能遇到的问题,写在了额外说明一章中,可供参考。
安装过程
一、安装依赖
安装PHP4.7
1 2 3 4 5
| sudo apt -y install lsb-release apt-transport-https ca-certificates sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list sudo apt update sudo apt -y install php7.4
|
安装apache、mariadb及依赖的PHP模块
1 2 3 4
| sudo apt update sudo apt -y install apache2 mariadb-server libapache2-mod-php7.4 sudo apt -y install php7.4-gd php7.4-mysql php7.4-curl php7.4-mbstring php7.4-intl sudo apt -y install php7.4-gmp php7.4-bcmath php-imagick php7.4-xml php7.4-zip
|
配置数据库
首先创建root用户:
1 2
| sudo /etc/init.d/mysql start sudo mysql -u root -p
|
回车之后会要求为root账户设定密码,输入之后回车,即可看见类似如下的字样:
接下来为nextcloud创建用户名:
1 2 3 4
| CREATE USER 'username'@'localhost' IDENTIFIED BY 'password'; CREATE DATABASE IF NOT EXISTS nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; GRANT ALL PRIVILEGES ON nextcloud.* TO 'username'@'localhost'; FLUSH PRIVILEGES;
|
将上述命令中的username
替换为你自己的用户名,password
替换为你自己的密码
之后,可以输入
退出数据库命令行。
二、安装nextcloud
首先,进入apache的web目录:
接下来前往https://nextcloud.com/install/下载服务端安装包,选择Download for server:
之后,可以点击download按钮将压缩包下载到本地,再用FTP传到服务端,也可以右键复制下载链接之后用命令行下载:
1
| wget https://download.nextcloud.com/server/releases/nextcloud-21.0.0.zip
|
解压:
1
| sudo unzip nextcloud-21.0.0.zip
|
如果你不是21.0.0,记得换成相应的版本,反正tab一打就补全了
重启apache:
1
| systemctl restart apache2
|
三、配置apache
编辑apache的配置文件:
1
| nano /etc/apache2/sites-available/nextcloud.conf
|
将其内容写为:
1 2 3 4 5 6 7 8 9 10 11
| Alias /nextcloud "/var/www/nextcloud/"
<Directory /var/www/nextcloud/> Require all granted AllowOverride All Options FollowSymLinks MultiViews
<IfModule mod_dav.c> Dav off </IfModule> </Directory>
|
按CTRL+O保存,CTRL+X退出。
之后使配置文件生效:
1 2
| a2ensite nextcloud.conf systemctl reload apache2
|
接下来,设置启用一些模块:
1 2 3 4 5 6 7 8
| a2enmod rewrite a2enmod headers a2enmod env a2enmod dir a2enmod mime a2enmod ssl a2ensite default-ssl systemctl reload apache2
|
四、从网页端完成安装
当上面所有信息配置完毕之后,访问 serverIP/nextcloud 即可看到网盘的初始化界面:
等待安装完成之后,即可看到相应的界面:
额外说明
一、关于数据库
可以不安装mariadb而换用SQLite,但是当网盘文件存放较多,使用者也较多时,还是建议安装mariadb。
二、使用phpMyAdmin图形化管理数据库
首先进入apache的web根目录,一般为:
之后在根目录下载:
1 2 3 4
| sudo wget https://files.phpmyadmin.net/phpMyAdmin/5.1.0/phpMyAdmin-5.1.0-all-languages.zip sudo unzip phpMyAdmin-5.1.0-all-languages.zip sudo cp -R phpMyAdmin-5.1.0-all-languages phpMyAdmin sudo rm -rf phpMyAdmin-5.1.0-all-languages
|
有点蠢(其实就是我忘了剪切的指令又懒得去搜罢了)
然后重启apache:
1
| systemctl restart apache2
|
之后前往 serverIP/phpMyAdmin 即可访问管理界面:
若发现无法通过root用户登录数据库,可以先从命令行登录数据库后,执行:
1 2
| ALTER USER 'root'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES;
|
之后就可以通过密码登录了。
参考文档