将ubuntu设置为NAS——3. 私人网盘nextcloud安装(中)

2019-10-19 15:18:51 67点赞 650收藏 52评论

前言的前言

想通过本平台记录一些折腾小主机的过程,同时方便自己查阅,还能赚点金币,于是就有了这个小系列。之前写了2篇

《将ubuntu设置为NAS——1. Transmission-daemon安装》

《将ubuntu设置为NAS——2. 新增硬盘挂载》

将ubuntu设置为NAS——3. 私人网盘nextcloud安装(上)前言的前言想通过本平台记录一些折腾小主机的过程,同时方便自己查阅,还能赚点金币,于是就有了这个小系列。之前写了2篇《将ubuntu设置为NAS——1.Transmission-daemon安装》《将ubuntu设置为NAS——2.新增硬盘挂载》我目前的主机外壳采用蜗牛星际外壳,主板是暴风酷播云主板J杨某人| 6 评论10 收藏53查看详情



我目前的主机外壳采用蜗牛星际外壳,主板是暴风酷播云主板J3455,电源是暴风酷播云的台达电源,硬盘是一块固态硬盘,3块1T的机械硬盘,原蜗牛星际背板拆除,电源与数据线直接接硬盘的方式。软件层面主要是用Kubuntu18.04系统(ubuntu其他风味版,和原版功能上没有太大区别),安装了Transmission-daemon用于下载,nextcloud用于网络硬盘,kvm作为虚拟机开软路由,还有其他一些简单功能,基本实现NAS的作用。后面我将慢慢分享其中的过程,作为小白,很多都是自己参考网上根据其他作者文章,再自己摸索实践出来,如有谬误,请各位指正,大家共同学习。后面涉及的命令行都是在ubuntu终端(不要问我终端是什么 )中输入,请大家注意。

正式前言


上一篇,基本完成了nextcloud安装,访问主机网站,应该也能访问自己搭建的网盘,基本使用应该问题不大了,本片主要介绍在使用中,可能会出现的问题,及解决办法。

1、手机app下载安装

使用nextcloud,我们是看中它的跨平台性,几乎所有平台都有其应用支持,Windows、Mac、Linux、安卓和iOS,这里主要使用安卓app为例子。下载地址官网下载地址,选择f-droid.org吧,毕竟大家手机上都没有google商店,选最新版app就好了。

也可以通过其他平台下载也可以通过其他平台下载

将ubuntu设置为NAS——3. 私人网盘nextcloud安装(中)

2、 APP设置


点击登陆,设置服务器地址 http://你小主机的ip/nextcloud,输入账户和密码,就好了。

输入自己ubuntu主机IP地址输入自己ubuntu主机IP地址

将ubuntu设置为NAS——3. 私人网盘nextcloud安装(中)

将ubuntu设置为NAS——3. 私人网盘nextcloud安装(中)

将ubuntu设置为NAS——3. 私人网盘nextcloud安装(中)

app上的设置就不介绍了,比较简单,可以选择同步文件夹,也可以自己上传文件。如果提示不受信任域名访问,下文介绍如何处理。

3、 nextcloud连接外部存储

nextcloud安装后,会有默认data文件(存储文件目录),后面上传文件都会存到这里,但有时我们需要换个位置,或者将其他文件夹设置为nextcloud网盘里的目录,就需要设置外部链接,同样原理也可以设置其他网盘的地址。

需要先添加nextclou外部存储应用,选择应用,选择已禁用的应用启用External storage support。

设置下方应用选项打开设置下方应用选项打开

选择已禁用的应用包启用External storage support选择已禁用的应用包启用External storage support

回到设置就可以看到外部存储了。

设置里出现了外部存储设置里出现了外部存储

设置对应文件夹路径,也可以设置密码,这里都是本地存储,就不设置密码。

进行设置进行设置

设置完成,点击,打开文件界面就可以看到对应文件夹及里面的资料。

类似图标就是外部存储类似图标就是外部存储

你可以直接复制到外部存储目录,然后在nextcloud页面就能看到文件了。也可以直接把视频或图片目录直接设置为外部存储,就不用再重复上传了,视频或图片目录直接成了你的网盘目录,是不是很方便。

而且当你的系统盘空间比较小的情况下,而你的nextcloud目录又在系统盘下面,基本就没法使用网盘了,但你可以直接设置下面挂载的其他大空间盘作为网盘外部存储来使用,也很方便,就不用重新设置nextcloud的目录了。

4、nextcloud不受信任域名访问

用路由映射后,再使用DDNS登陆或外网访问,出现不受信任的域名访问提醒,无法使用。

手机上截图,PC端访问也会出现手机上截图,PC端访问也会出现

先找到nextcloud的设置

sudo nano /var/www/html/nextcloud/config/config.php


将ubuntu设置为NAS——3. 私人网盘nextcloud安装(中)

找到图上位置添加需要信任的IP或地址,比如DDNS地址或自己小主机固定域名,或小主机的外网IP。

array(
0 => '本机IP',
1 => '需要信任的IP或地址',
)

后续手机登陆,或外网登陆,登陆管理员账户,选择信任就可以登录使用。也可以直接设置'*.*.*.*',作为信任地址,这样就没有限制,但总感觉可能不安全。

5、还有可能出现的部分问题

下面这些问题出现在概览中的安全及设置警告,如果你不是完美主义,这部分内容其实可以不用看了,一般使用无影响。想解决问题的话,找对应问题,照着做即可。

将ubuntu设置为NAS——3. 私人网盘nextcloud安装(中)

问题1:

您的数据目录和文件可以从互联网直接访问。.htaccess 文件不起作用。强烈建议您配置 Web 服务器,以便数据目录不再可访问,或都你可以将数据目录移出 Web 服务器文档根目录。

解决:找到apache2设置目录 /etc/apache2/apache2.conf ,

修改

sudo nano /etc/apache2/apache2.conf

找到对应条目,添加如下代码

将ubuntu设置为NAS——3. 私人网盘nextcloud安装(中)


AllowOverride FileInfo Options


问题2:

所使用的数据库为MySQL但没有对4字节字符的支持。为正确处理文件名或评论中使用的4字节字符(比如emoji表情),建议开启MySQL的4字节字符支持。详细信息请阅读相关文档页面

根据官方文档进行处理

之前安装数据库是MariaDB,而ubuntu默认安装的是MariaDB 10.1版。

1)确认innodb_file_per_table为ON

sudo mysql -u root -p //进入数据库
mysql> show variables like 'innodb_file_per_table'; //输入命令查看
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| innodb_file_per_table | ON |
+-----------------------+-------+
1 row in set (0.00 sec) //显示为ON就可以

如果不是请修改(应该在数据库设置my.cnf)一般在/etc/mysql/my.cnf或/etc/my.cnf,用sudo nano /etc/mysql/my.cnf添加

[mysqld]
innodb_large_prefix=true
innodb_file_format=barracuda
innodb_file_per_table=1

2)重启数据库服务器

sudo service mysql restart

3)改变数据库类型设置

ALTER DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; //进入数据库后再输入此命令

4)在nextcloud中设置应用mysql.utf8mb4

sudo -u www-data php /var/www/html/nextcloud/occ config:system:set mysql.utf8mb4 --type boolean --value="true"

这里官方有点坑,请根据occ的实际路径输入,官方只是occ,没有路径,会提示Could not open input file: occ,当然也可能是权限的问题,可以改一下occ权限。

sudo chown -Rf www-data:www-data /var/www/html/nextcloud/occ

5) 修复之前的数据库数据,转化utf8mb4

sudo -u www-data php /var/www/html/nextcloud/occ maintenance:repair

不应该有错误提示,有错误说明有些文件没有装换过来,之后日志里还会有数据库的问题。

6)关闭维护模式

sudo -u www-data php /var/www/html/nextcloud/occ maintenance:mode --off

不关闭,可能提示nextcloud处于维护模式,无法打开

问题3:

PHP 的组件 OPcache 没有正确配置。 为了提供更好的性能,我们建议在 php.ini中使用下列设置:

找到php.ini目录,之前测试php安装页面有地址:etc/php/7.2/apache2,进行修改

sudo nano /etc/php/7.2/apache2/php.ini

修改对应条目,并删去前面 ; ,表示去掉注释生效。

重启

service apache2 restart

问题4:

有些应用程序目录是由与 Web 服务器不同的用户拥有的。如果应用程序是手动安装的,情况可能是这样的。检查以下应用程序目录的权限:

修改对应文件夹权限,由于 www-data是apache2运行用户,所以改成www-data。apps对应我出现问题的文件夹名。

sudo chown -R www-data apps

问题5:

您的网页服务器未正确设置以解析“/.well-known/caldav”。更多信息请参见文档

您的网页服务器未正确设置以解析“/.well-known/carddav”。更多信息请参见文档

这个问题参考官方文档无法成功解决!!!

后来看这篇

参考realshadow答案

1)进入/etc/apache/sites-availalbe目录

sudo cd /etc/apache/sites-availalbe

2)编辑000-default.conf文件,

sudo nano /etc/apache/sites-availalbe/000-default.conf

3)在/>下面添加如下语句

Redirect 301 /.well-known/carddav /nextcloud/remote.php/dav
Redirect 301 /.well-known/caldav /nextcloud/remote.php/dav

4)保存退出后,重启apache。

sudo service apache2 restart

5)回到nextcloud页面,再次检查,可以发现这个错误消失了。

问题6:

内存缓存未配置,为了提升使用体验,请尽量配置内存缓存。更多信息请参见文档

参看官方文档

有三种内存缓存形式,APCu,Memcached,Redis,个人用户建议选择APCu。

1)安装APCu(php-apcu-bc也需要的)

sudo apt-get install php-apcu php-apcu-bc

2)在php配置APCu

sudo nano /etc/php/7.2/mods-available/apcu.ini

添加代码apc.enable_cli=On,保证功能开启,

将ubuntu设置为NAS——3. 私人网盘nextcloud安装(中)

3)在nextcloud配置中设置APCu

sudo nano /var/www/html/nextcloud/config/config.php


添加APCu配置添加APCu配置

添加

'memcache.local' => 'OCMemcacheAPCu',

重启服务器

sudo service apache2 restart

回到nextcloud设置页面,这个错误就消失了。开启之后,感觉整个网页速度快了很多。

总结

基本上nextcloud的问题都解决了,大家可以愉快的使用了,欢迎大家交流使用心得,但为什么这是中篇呢,其实我下篇想再介绍用docker安装nextcloud的方式,那种方式相对简单许多,如果采取docker-compose的方式,只要下载一个脚本,输几个简单命令,就万事大吉,一般也不会有这么多问题1-6。

希望大家多多点赞,收藏,打赏!!!将ubuntu设置为NAS——3. 私人网盘nextcloud安装(中) 这绝对是呕心沥血之作。。。将ubuntu设置为NAS——3. 私人网盘nextcloud安装(中)


展开 收起

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

1799元起

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

2179元起

QNAP 威联通 TS-464C 4盘位NAS(赛扬N5095、8GB)

QNAP 威联通 TS-464C 4盘位NAS(赛扬N5095、8GB)

2036.01元起

ZSpace 极空间 Z4 4盘位 NAS存储 黑色 (J4125 8GB)

ZSpace 极空间 Z4 4盘位 NAS存储 黑色 (J4125 8GB)

2584元起

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

2190.84元起

极空间私有云Z4Pro 性能版 8核16G内存 四盘位Nas网络存储服务器家庭个人云【配4T希捷酷狼硬盘】珍珠白

极空间私有云Z4Pro 性能版 8核16G内存 四盘位Nas网络存储服务器家庭个人云【配4T希捷酷狼硬盘】珍珠白

4299元起

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

3599元起

HUAWEI 华为 新品华为家庭存储nas家用网络存储主机扩容储存备份文件同步共享

HUAWEI 华为 新品华为家庭存储nas家用网络存储主机扩容储存备份文件同步共享

1999元起

TERRAMASTER 铁威马 F4-424 四盘位 NAS存储(Intel Celeron N95、8GB)黑色

TERRAMASTER 铁威马 F4-424 四盘位 NAS存储(Intel Celeron N95、8GB)黑色

2499元起

海康威视MAGE10个人私有云盘网络存储nas家庭共享资料备份服务器

海康威视MAGE10个人私有云盘网络存储nas家庭共享资料备份服务器

1583元起

QNAP 威联通 TS-453Dmini 4盘位NAS(J4125、8GB)

QNAP 威联通 TS-453Dmini 4盘位NAS(J4125、8GB)

暂无报价

QNAP 威联通 TS-453Bmini 4盘位NAS(J3455、4GB)

QNAP 威联通 TS-453Bmini 4盘位NAS(J3455、4GB)

1899元起

QNAP 威联通 TS-212P3 双盘位NAS(Realtek RTD1295、1GB)

QNAP 威联通 TS-212P3 双盘位NAS(Realtek RTD1295、1GB)

799元起

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

1798元起

HIKVISION 海康威视 Mage20 2盘位NAS (4GB)

HIKVISION 海康威视 Mage20 2盘位NAS (4GB)

567元起

QNAP 威联通 TS-462C 4盘位NAS(赛扬N4505、4GB)

QNAP 威联通 TS-462C 4盘位NAS(赛扬N4505、4GB)

1899元起
52评论

  • 精彩
  • 最新
  • 这个跟seafile比起来哪个好用呢?

    校验提示文案

    提交
    没用过seafile,我之前对比2个网盘,看nextcloud界面感觉更好点,而且扩展性更强。但看seafile介绍,是国人开发,安装上也更简单便利,您也可以试试

    校验提示文案

    提交
    都用过,nextcloud,架设相对麻烦,容器安装问题多多,处理起来基础要求高,是文件整个上传,后台可以看到各种用户文件。 seafile,起初不屑用这个,但是nc一直出问题,试了试这个seafile,已经绝对好评了,稳定用了大半年,工作效率高了太多了。 文件是碎片形式上传,好用。好评!!!

    校验提示文案

    提交
    还有5条回复
    收起所有回复
  • 不知道是不是我用的不对,感觉很慢,很卡,owncloud nextcloud 都卡卡的,不知道神马情况

    校验提示文案

    提交
    要开缓存,装个redis,立马飞起来

    校验提示文案

    提交
    建议看看文中提到的设置里面是否有什么警告,估计是缓存问题,可以先参考本文,开启APCu缓存,php的内存设置大一点

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 能休眠吗?静态功耗是多少?

    校验提示文案

    提交
    能不能休眠没有研究,下次研究一下。目前3块2.5寸硬盘和1块固态,平均功耗26W,峰值30W,算下来一天不到1度电,按26W算一个月,电费按0.538元/度,26*24*30*0.538/1000=10元,一个月10块钱电费。

    校验提示文案

    提交
    收起所有回复
  • 和黑裙比那个爽?

    校验提示文案

    提交
    群晖装了一下,没有很深入体验,感觉自由度不满足自己需要。不喜欢折腾,就试试白裙。目前我觉得nextcloud挺不错,尤其它的插件库,可折腾空间很大

    校验提示文案

    提交
    收起所有回复
  • 对硬件要求高么?弄个迷你主机家用能不能跑起来?

    校验提示文案

    提交
    硬件要求不高的,部分路由器都能跑nextcloud,貌似N1也能跑

    校验提示文案

    提交
    收起所有回复
  • 一个下载宝+百度云能解决的事,弄这么复杂

    校验提示文案

    提交
    确实您的方案比较简单,当然还有更简单的,比如玩客云+u盘。不同需求,不同选择吧

    校验提示文案

    提交
    层次低眼界就小了 [看热闹] 那我评价超融合也是不是说,就加个SSD和cpu的事,弄的这么复杂~

    校验提示文案

    提交
    收起所有回复
  • ubuntu 为什么不用 server版

    校验提示文案

    提交
    本人水平比较差,感觉桌面好用些,比较适合小白,虽然其实用终端的时间更多。等我学明白了,再尝试server版吧。

    校验提示文案

    提交
    收起所有回复
  • 我搞了个贝壳云的盒子,改装加了pwm风扇,4个usb3.0接口插上2.5硬盘盒子,4核a53,armbian装了个samba,aria2,openmediavault,配合我的个人服务器和域名,tsl可以访问文件,添加下载任务,硬盘自动休眠,感觉我的更加实用也更省电 [口水] [口水] [口水]

    校验提示文案

    提交
    您的方案挺好的。我看到您提到个人服务器,其实我是把这个作为个人服务器用的,目前分享的只是其中的一部分应用,它可折腾的空间还是很大的。后面还会介绍用它做软路由,做在线影音服务等等,也能做协同办公应用。当然可能这些用处对每个人不一定有什么实质意义,但它确实都能做到。

    校验提示文案

    提交
    因为我没有公网ip,所以需要服务器做转发,好在p2p穿透速度也很快,可以在公司愉快的访问。

    校验提示文案

    提交
    收起所有回复
  • Docker不好用么 还自己搭环境

    校验提示文案

    提交
    docker挺好用的,snap安装也很简单,3种方式我都试过了 [惊喜] ,自己搭环境感觉更锻炼人 [小眼睛] 。之前用snap安装方式速度太慢,且版本不新。docker感觉就像再在主机里装了个虚拟电脑,自己错误地认为效率不高,后来想想也是很不错的方法

    校验提示文案

    提交
    Docker运行效率超过95%,后续升级维护性极佳,也很小出现兼容性问题,相当于你从各个官方拉了一个电脑过来,还按官方要求接上了线,出问题几率很低

    校验提示文案

    提交
    收起所有回复
  • 不知道能不能备份照片

    校验提示文案

    提交
    可以的,跟百度网盘什么用法差不多。但nextcloud可以自动同步文件,手机文件和服务器里的文件同步起来。不过有个小问题是,只能同步手机里在安装nextcloud之后新增的文件,之前的文件需要自己手动上传。

    校验提示文案

    提交
    收起所有回复
  • j3455安装qnap多实在 方便好用app支持多

    校验提示文案

    提交
    适合自己就好了,喜欢折腾的话,可以多多尝试尝试

    校验提示文案

    提交
    收起所有回复
  • 这个有手机客户端app没有?

    校验提示文案

    提交
    有啊,文中第一部分写的就是app下载

    校验提示文案

    提交
    收起所有回复
  • 我的本地磁盘挂载不了是个红色的感叹号!是因为docker安装吗?

    校验提示文案

    提交
    应该是本地磁盘挂载,您用的地址其实是指向docker内的地址,这个地址不一定存在,得进入您得容器确定。我想您是想挂载docker外部地址,可以采用将nextcloud的data文件映射到外部对应地址,注意文件权限应该设置www-data,而且不要设置整改磁盘,可能会被格式化掉。

    校验提示文案

    提交
    收起所有回复
  • 小白一枚我是照着你的文章采用docker-compose安装的,意思是将宿主机的磁盘挂载到宿主机的nextcloud目录下吗然后再赋权给www-data吗?

    校验提示文案

    提交
    docker-compose安装,里面已经设置了挂载,数据就在主机/docker/nextcloud/data,权限自动是www-data,您可以修改这份地址的方式,改变挂载目录,不用手动设置。如果您是指nextcloud应用“外部存储”挂载,docker内挂载是内部目录,不能指定主机目录,会出现感叹号,可以把你要设置的地址再映射出去,docker-compose设置就可以。

    校验提示文案

    提交
    收起所有回复
  • 给楼主推荐可道云,宝塔面板一键安装很简单。关键界面对国内用户更友好一些,很像windows的感觉,在线操作是真丝滑,有各种插件功能也挺丰富的

    校验提示文案

    提交
    之前试过,由于不开源,有功能限制就没有继续用

    校验提示文案

    提交
    收起所有回复
  • 感觉张大妈越来越像CSDN了……

    校验提示文案

    提交
  • 先从安装ubuntu开始啊

    校验提示文案

    提交
  • seafile好用

    校验提示文案

    提交
  • 算比较全面的配置了

    校验提示文案

    提交
  • Nextcloud还是seafile好像一坏就没得救,之前在树莓派上折腾过,树莓派的usb不稳定,很容易就把配置文件弄坏,后来都放弃了

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
天猫超级红包
距结束::
早春焕新必领红包,最高8888元
红包按钮
最新文章 热门文章
650
扫一下,分享更方便,购买更轻松