自建云盘-在win10种通过wsl2安装nextcloud

一、正确安装wsl和ubuntu(20.04)

点击查看安装方法

二、配置ubuntu

1、设置ubuntu root用户密码(如无安全需要可省略)

 sudo passwd root

2、检查所有可更新的包

sudo apt update

3、更新已安装的软件包

sudo apt upgrade

三、安装apache

点击查看安装方法

四、安装数据库(MySQL)

点击查看安装方法

五、安装php

点击查看安装方法

六、安装nextcloud

下载最新版nextcloud至/tmp目录,下载连接可至官网获取 Install – Nextcloud

wget -P /tmp https://download.nextcloud.com/server/releases/nextcloud-20.0.7.zip

解压下载包至 /var/www/html

sudo unzip /tmp/nextcloud-20.0.4.zip -d /var/www/html

授予www-data用户权限

在debian/ubuntu上,www-data是默认运行web服务的用户/组,一般在通过apt安装web服务程序时生成。提供web服务的文件夹/文件一般所有权要设置成www-data的。

不过,你也可以不用www-data,自己建一个新的用户和组,然后对apache/ngnix等web服务程序进行配置。不过这样比较麻烦。

如果你是编译的,不会生成www-data用户/组,需要自己弄

sudo chown www-data:www-data /var/www/html/nextcloud -R
sudo chmod -R 755 /var/www/html/nextcloud/

创建用于nextcloud的数据库和数据库用户

sudo mysql -u root -p
mysql> create database nextcloud;
mysql> create user 'nextcloud'@'localhost' identified by 'nextcloud用户的密码';
mysql> grant all privileges on nextcloud.* to 'nextcloud'@'localhost';
mysql> flush privileges;
mysql> quit

创建nextcloud的配置文件

cd /etc/apache2/sites-available/
sudo vim nextcloud.conf

输入以下内容保存并退出

<VirtualHost *:80>

DocumentRoot /var/www/html/nextcloud/

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

<Directory /var/www/html/nextcloud/>
Options +FollowSymlinks
AllowOverride All
Require all granted
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/html/nextcloud
SetEnv HTTP_HOME /var/www/html/nextcloud
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

重启apache

sudo service apache2 reload

 激活虚拟主机配置

sudo a2ensite nextcloud.conf
sudo a2enmod rewrite headers env dir mime setenvif ssl
sudo service apache2 restart

访问 http://服务器ip/nextcloud,如果出现如下缺少模块提示则安装相应模块

安装缺少的模块

sudo apt install php-imagick php7.4-common php7.4-mysql php7.4-fpm php7.4-gd php7.4-json php7.4-curl php7.4-zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-bcmath php7.4-gmp
sudo service apache2 restart

再次访问 http://服务器ip/nextcloud,终于到了安装页

按提示填入管理员账号/密码,数据目录、数据库连接信息后按完成按钮即可。如果希望将数据库目录挂载到ntfs的目录,首先要在此处修改数据目录,wsl里可直接访问win10的系统目录,比如我在win10环境f盘的根目录下创建了一个nextcloud用作数据目录

将/mnt/f/nextcloud填入数据目录即可,点击完成按钮后,数据目录里会自动创建以下文件

七、将nextcloud相关服务设置为开机自启

1、在Ubuntu中的etc目录下创建init.wsl

sudo vim /etc/init.wsl

输入以下内容保存并退出,nextcloud依赖mysql和apache2,下面的脚本即启动这两个服务。

#! /bin/sh
/etc/init.d/mysql start
/etc/init.d/apache2 start

然后执行下面的命令

 sudo chmod +x init.wsl

2、在win10中按win+r打开的运行窗口输入“shell:startup”

3、在打开的目录中新建文件"linux-start.vbs",输入以下内容保存并关闭

Set ws = WScript.CreateObject("WScript.Shell")        
ws.run "wsl -d ubuntu -u root /etc/init.wsl", vbhide

4、然后重启电脑后在浏览器输入 “http://localhost/nextcloud”查看是否能访问

八、允许通过不同ip和域名访问

如果不设置则会提示下面的错误

设置方法:进入nextcloud目录下的config目录,比如我的是 /var/www/html/nextcloud/config,然后编辑config.php文件,加入以下代码,然后保存退出

1 => preg_match('/cli/i',php_sapi_name())?'127.0.0.1':$_SERVER['SERVER_NAME']

重启apache

sudo service apache2 restart

至此,安装已完成,后续使用欢迎加微信交流

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

压码路

如果帮到你,可以意思一下吗?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值