当前位置:首页-正文

搭建属于自己的私有云网盘(基于Nextcloud),限速神马的不存在喽

Nextcloud介绍

Nextcloud是一套用于创建网络硬盘的客户端-服务器软件。其功能与Dropbox相近,但Nextcloud是自由及开放源代码软件,每个人都可以在私人服务器上安装并运行它。与Dropbox等专有服务相比,Nextcloud的开放架构让用户可以利用应用程序的方式在服务器上新增额外的功能,并让用户可以完全掌控自己的数据。ownCloud原先的开发者弗兰克·卡利切创建了ownCloud的分支——Nextcloud,继而让卡利切与其他原先的ownCloud团队成员持续积极地开发。

特性:Nextcloud的文件存储在一般的目录结构中,并可透过WebDAV访问。用户的文件会在传输时加密。Nextcloud可与在Windows(Windows XP、Vista、7与8、10)、macOS(10.6或更新版本)或是多种Linux散布版上运行的客户端同步。Nextcloud用户可以管理日历(使用CalDAV)、联系人(CardDAV)、计划工作与流媒体(Ampache)。从管理的角度来看,Nextcloud允许用户与组群管理(透过OpenID或LDAP)。透过用户间与/或组群间的读/写权限调整达到分享文件的目的。另外,Nextcloud的用户可以创建公开的URL来分享文件。也可以记录与文件相关的动作,以及利用文件访问规则来禁止对特定文件的访问。此外,用户也可以在Nextcloud上使用基于浏览器的文本编辑器、书签服务、缩略网址服务、相册、RSS阅读器与文件查看器。因为有良好的扩展性,Nextcloud可以透过鼠标点一下即可完成安装的应用程序强化其功能,并可连线至Dropbox、Google云端硬盘与Amazon S3。

更多查看维基百科:https://zh.wikipedia.org/wiki/Nextcloud (小提示:在家庭环境搭建私有云,公网/外网访问的话取决于你的带宽上行速度)

安装前的回顾

给大家重新回顾下LNMP+phpMyAdmin的链接,因为下面的教程是建立在这个基础上面的:

Nginx:https://www.landian.vip/archives/60484.html

PHP(Nginx):https://www.landian.vip/archives/60599.html

MariaDB:https://www.landian.vip/archives/60779.html

phpMyAdmin:https://www.landian.vip/archives/60873.html

RHEL/CentOS:(下面以CentOS7.6为例)

注释:以下命令全部以root用户执行,另外大家复制代码的时候前面的#不要复制,#代表的是root权限

我们搭建好LNMP环境之后,还需要解决一些条件

# yum install -y php73-php-json php73-php-pecl-imagick* php73-php-xml php73-php-cli php73-php-gd php73-php-intl php73-php-mbstring php73-php-process php73-php-pecl-zip php73-php-mysqlnd php73-php-opcache php73-php-pecl-redis5 redis libsmbclient libsmbclient-devel
设置php-cli
# ln -s /usr/bin/php73 /usr/bin/php
把redis设为开机启动和运行redis
# systemctl enable redis && systemctl start redis
开放https,443端口,并重启防火墙
# firewall-cmd --zone=public --add-port=443/tcp --permanent && systemctl restart firewalld.service

配置php及nginx

配置php-fpm
# sed -i "115 s/50/120/g" /etc/opt/remi/php73/php-fpm.d/www.conf
# sed -i "120 s/5/12/g" /etc/opt/remi/php73/php-fpm.d/www.conf
# sed -i "396,400 s/;/ /g" /etc/opt/remi/php73/php-fpm.d/www.conf
配置php.ini
# sed -i "406 s/128/512/g" /etc/opt/remi/php73/php.ini
# sed -i "693 s/8M/16G/g" /etc/opt/remi/php73/php.ini
# sed -i "845 s/2M/16G/g" /etc/opt/remi/php73/php.ini
# mkdir /var/big_temp_file && chown -R nginx:nginx /var/big_temp_file
# sed -i "841 s/;upload_tmp_dir =/upload_tmp_dir = \/var\/big_temp_file\//g" /etc/opt/remi/php73/php.ini
配置php-opcache
# sed -i "18 s/4000/10000/g" /etc/opt/remi/php73/php.d/10-opcache.ini
# sed -i "36 s/;opcache.revalidate_freq=2/opcache.revalidate_freq=1/g" /etc/opt/remi/php73/php.d/10-opcache.ini
# sed -i "43 s/;opcache.save_comments=1/opcache.save_comments=1/g" /etc/opt/remi/php73/php.d/10-opcache.ini
配置nginx
# wget https://dl.lancdn.com/landian/soft/nextcloud/nextcloud.conf -O /etc/nginx/conf.d/nextcloud.conf
创建ssl自签证书,选项翻译随便填,因为是自签,所以一般浏览器都不会认可的
# mkdir /etc/ssl/nginx && openssl req -new -x509 -days 3650 -nodes -out /etc/ssl/nginx/nextcloud.crt -keyout /etc/ssl/nginx/nextcloud.key
重启nginx和php-fpm
# systemctl restart nginx && systemctl restart php73-php-fpm.service

下载Nextcloud解压

# wget https://dl.lancdn.com/landian/soft/nextcloud/nextcloud-16.0.3.zip && unzip nextcloud-16.0.3.zip
# mv nextcloud / && chown -R nginx:nginx /nextcloud
创建Cron,等下安装会需要
# crontab -u nginx -e
把下面一行填入保存退出
*/5 * * * * php -f /nextcloud/cron.php

这个时候打开phpMyAdmin(http://IP地址/phpMyAdmin/)创建nextcloud用户及其数据库

创建完成之后,我们打开nextcloud的网址(https://IP地址/),会出先下图,自己填写就可以啦

完成安装了,但是Nextcloud需要配置缓存,这样页面会流畅很多

执行下面命令之后,Ctrl+F5重新刷新下网页即可
# sed -i "21a 'filelocking.enabled'\ =>\ true,\n'memcache.local'\ =>\ '\\\OC\\\Memcache\\\Redis',\n'redis'\ =>\ array(\n\t'host' => 'localhost',\n\t'port' => 6379,\n\t'timeout' => 0.0,\n\t'password' => '',\n\t)," /nextcloud/config/config.php
安装好打开设置→管理→基本设置页面切换到Cron选项,Nextcloud网盘就搭建成功啦

Debian/Ubuntu:(下面以Debian10为例)

注释:以下命令全部以root用户执行,另外大家复制代码的时候前面的#不要复制,#代表的是root权限

依旧是搭建好LNMP环境之后,还需要解决一些条件

# apt install -y smbclient redis php-imagick php-redis php7.3-json php7.3-xml php7.3-ldap php7.3-mysql php7.3-zip php7.3-mbstring php7.3-curl php7.3-intl php7.3-opcache php7.3-gd

配置php及nginx

配置php-fpm
# sed -i "113 s/5/120/g" /etc/php/7.3/fpm/pool.d/www.conf
# sed -i "118 s/2/12/g" /etc/php/7.3/fpm/pool.d/www.conf
# sed -i "123 s/1/6/g" /etc/php/7.3/fpm/pool.d/www.conf
# sed -i "128 s/3/18/g" /etc/php/7.3/fpm/pool.d/www.conf
# sed -i "401,405 s/;/ /g" /etc/php/7.3/fpm/pool.d/www.conf
配置php.ini
# sed -i "406 s/128/512/g" /etc/php/7.3/fpm/php.ini
# sed -i "693 s/8M/16G/g" /etc/php/7.3/fpm/php.ini
# sed -i "845 s/2M/16G/g" /etc/php/7.3/fpm/php.ini
# mkdir /var/big_temp_file && chown -R nginx:nginx /var/big_temp_file
# sed -i "841 s/;upload_tmp_dir =/upload_tmp_dir = \/var\/big_temp_file\//g" /etc/php/7.3/fpm/php.ini
配置php-opcache
# sed -i "3a opcache.enable=1\nopcache.interned_strings_buffer=8\nopcache.max_accelerated_files=10000\nopcache.memory_consumption=128\nopcache.save_comments=1\nopcache.revalidate_freq=1" /etc/php/7.3/fpm/conf.d/10-opcache.ini
配置nginx
# wget https://dl.lancdn.com/landian/soft/nextcloud/nextcloud.conf -O /etc/nginx/conf.d/nextcloud.conf
创建ssl自签证书,选项翻译随便填,因为是自签,所以一般浏览器都不会认可的
# mkdir /etc/ssl/nginx && openssl req -new -x509 -days 3650 -nodes -out /etc/ssl/nginx/nextcloud.crt -keyout /etc/ssl/nginx/nextcloud.key
重启nginx和php-fpm
# systemctl restart nginx && systemctl restart php7.3-fpm.service

下载Nextcloud解压

# wget https://dl.lancdn.com/landian/soft/nextcloud/nextcloud-16.0.3.zip && unzip nextcloud-16.0.3.zip
# mv nextcloud / && chown -R nginx:nginx /nextcloud
创建Cron,等下安装会需要
# crontab -u nginx -e
把下面一行填入保存退出
*/5 * * * * php -f /nextcloud/cron.php

这个时候打开phpMyAdmin(http://IP地址/phpMyAdmin/)创建nextcloud用户及其数据库

创建完成之后,我们打开nextcloud的网址(https://IP地址/),会出先下图,自己填写就可以啦

完成安装了,但是Nextcloud需要配置缓存,这样页面会流畅很多

执行下面命令之后,Ctrl+F5重新刷新下网页即可
# sed -i "21a 'filelocking.enabled'\ =>\ true,\n'memcache.local'\ =>\ '\\\OC\\\Memcache\\\Redis',\n'redis'\ =>\ array(\n\t'host' => 'localhost',\n\t'port' => 6379,\n\t'timeout' => 0.0,\n\t'password' => '',\n\t)," /nextcloud/config/config.php
安装好打开设置→管理→基本设置页面切换到Cron选项,Nextcloud网盘就搭建成功啦

终于结束啦、泪奔

为了这篇教程,疯子的虚拟机不知道重置了多少次快照?,疯子以前搭这个网盘是用的LAMP,这是第一次尝试用LNMP环境,所幸成功了,感谢大家的支持~?

本文来源蓝点网,由疯子转载或编译发布,如需转载请联系原作者。

相关文章

换一批