Nextcloud external storages挂载本地硬盘权限

一直被困扰nextcloud无法访问本地硬盘的问题,因为不知道如何设置权限;今天意外安装了一个logging APP暂时解决了访问的问题。

环境:基础Openmedaivault(OMV) 的NAS系统,硬件配置了三个数据盘;OMV管理页是安装在/var/www下;而nextcloud安装在lnmp环境下,文件目录为/home/wwwroot, 可参见这篇文章

在nextcloud下安装了logging以便监控程序运行日志,发现以下错误

realpath(): open_basedir restriction in effect. File(/var/www/openmediavault) is not within the allowed path(s): (/home/wwwroot/default/:/tmp/:/proc/) at /home/wwwroot/default/lib/private/Files/Storage/Local.php#69

经查阅是因为lnmp环境权限无法访问/var/www/openmediavault的问题,需要修改open_basedir,位置/usr/local/nginx/conf/fastcgi.conf文件内。于是联想,既然可以修改nginx访问目录,为什么不把上级硬盘目录也写进去,这样不就可以访问了?我的硬盘挂载文件夹是/srv/,于是改了以下代码

#fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/";
fastcgi_param PHP_ADMIN_VALUE "open_basedir=/home/wwwroot/default/:/tmp/:/proc/:/var/www/openmediavault/:/srv/";

再进行到nextcloud-setting-external storages下挂载本地硬盘就成功;

nextcloud如何挂载本地硬盘

但还有一个问题,因为本地硬盘用户组都是root:root,而nextcloud的访问权限仅是www:www,所以我只可以看,而不可以操作;虽然已经给我的工作提供了很多方便,但还是有些不方便。待解决。

Previous/Next

1 Reply

Leave a Reply

Comment List

  • […] 接上篇文章《Nextcloud external storages挂载本地硬盘权限》提到,虽然解决了Nextcloud可以查看挂载硬盘的资料,但无权编辑,因为挂载硬盘的资料是从windows的共享文件是使用Lsyncd同步过来的。同步过来的资料的用户组均是root,而nextcloud的执行用户是www,所以www无权执行root的文件,虽然在上篇文章中开放了查看路径,但仍无权修改。 […]