Openmediavault安装nextcloud无smbclient问题解决方案

基于Openmediavault(OMV)的NAS系统暂时没找到好的基于web的文件管理软件,只好退一步用私有网盘软件来管理文件,可道云KodExplorer非常适合方便简洁,而且集成了许多的软件;安装也方便,只是在安全性上还有待加强;国外的Owncloud商业化,而衍生分离出来的nextcloud适合个人需要,安装方便,主要是安全性上比可道云要好点。如果不需要连通外网,推荐使用可道云。

在OMV的基础上安装了LNMP环境,因为本身OMV已经安装了nginx,所以不知道什么原因,LNMP下的nginx无法自动启动;但OMV的管理页面又是可以正常使用,非理科生无法理解!但至少找到的方法解决。解决方案即是使用systemctl单独启动ngnix; 在/etc/systemd/system下增加一个nginx.service,具体内容如下:

[Unit]
Description=nginx for nextcloud
After=network.target

[Service]
Type=forking
ExecStart=/etc/init.d/nginx start
ExecReload=/etc/init.d/nginx restart
ExecStop=/etc/init.d/nginx stop
TimeoutStopSec=3
KillMode=mixed

[Install]
WantedBy=multi-user.target

然后再用systemctl启动

systemctl enable nginx.service

这个问题解决后,就是解决OMV下nextcloud显示没有安装smbclient; 其实后来经了解nextcloud在OMV下不显示smbclient不是因为OMV系统问题,而是lnmp环境编码问题,lnmp没有增加这个smbclient.so这个文件,所以我们要在不重新安装PHP的情况下安装smbclient. 具体步骤如下:

1,进入PHP的ext目录

一般安装完LNMP php源码都是自动删除了的,需要自己进入src目录下解压。

cd /usr/local/src/lnmp1.5/src/
tar -jxvf php-7.3.6.tar.bz2
cd php-7.3.6/ext/

2,从源码安装, 增加libsmbclient.h支持

git clone git://github.com/eduardok/libsmbclient-php.git
cd libsmbclient-php ; 
phpize

configure前需要安装libsmbclient-dev

apt-get install libsmbclient-dev

开始编译

./configure --with-php-config=/usr/local/php/bin/php-config
make && make install

3,修改php.ini

vim /usr/local/php/etc/php.ini

查找:extension_dir 再下面一行添加上

extension="smbclient.so"

保存,执行以下命令重启。

/etc/init.d/php-fpm restart

Previous/Next

1 Reply

Leave a Reply

Comment List