Detailed tutorial on building nextcloud private cloud storage network disk

Detailed tutorial on building nextcloud private cloud storage network disk

Nextcloud is an open source and free private cloud storage network disk project that allows you to quickly and easily build a cloud synchronization network disk for yourself or your team, thereby realizing cross-platform and cross-device file synchronization, sharing, version control, team collaboration and other functions. Its clients cover various platforms including Windows, Mac, Android, iOS, Linux, etc. It also provides a web client and WebDAV interface, so you can easily access your cloud disk on almost any device.

Introduction:

When building personal cloud storage, people usually think of ownCloud, which is a classic self-built cloud storage service. Nextcloud is a "next generation" storage system developed by the original development team of ownCloud.

After actually trying it, I wholeheartedly agree with Nextcloud: it is an excellent choice for personal cloud storage service. At first I thought Nextcloud was just a cloud storage.

Nextcloud has built-in Office documents, photo albums, calendar contacts, two-step verification, file management, RSS reading and other rich applications. I found that Nextcloud can only

It can be used for personal or team storage and sharing, and can also be built into a personal office platform, which is almost equivalent to a personal Dropbox. Nextcloud's operating environment is different from our usual

The commonly used programs are similar. LAMP is the official first choice, but LNMP can also run, but you need to write the URL rewriting rules yourself. Of course, the official also provides a SNAP one-click installation package

Note: The above comes from somewhere on the Internet, the focus is on the following installation

This article uses rpm source code installation, which I have personally tested and is effective. It is not difficult to install online or with one click. Please search Baidu by yourself.

1. Install LAMP architecture:

Note: In order to avoid permissions and network issues, please log in with the root user or a higher-level account before operating

yum install -y httpd php php-mysql mariadb-server mariadb sqlite php-dom php-mbstring php-gd php-pdo

Note:

httpd ######apache web server; php #####php

mariadb-server mariadb

Starting from centos 7 system, the mysql database that comes with the system is renamed mariadb-server.

Pdo #### (PHP Data Object) is a lightweight PHP data connection extension with a compatible interface

2. Turn off firewall and selinux:

Vim /etc/seliunux/config

Change Enforcing to disabled. After the change is complete, restart the system to make it effective. Enter the command getenforce to view the status.

For experiments, firewalld can be permanently disabled

systemctl disable firewalld.service

Temporarily shut down systemctl stop firewalld.service

lptables -F

3. Enable LAMP related services:

Systemctl start httpd.service
Systemctl start mariadb.service

4. Upload the nextcloud source package:

I am connected via xshell, so enter the rz command and select nextcloud-13.0.6.zip (the compressed package of nextcloud can be found privately or online) to upload (currently the latest 14)

Unzip: unzip nextcloud-13.0.6.zip

In the root directory: cp -r nextcloud/* /var/www/html/

Note: Copy the files under nextcloud to the root directory of the website, so it is nextcloud/*, not cp -r nextcloud /var/www/html

(I didn't pay attention here, which resulted in failures after several attempts. "Details determine success or failure")

Change the owner and group of the website to apache: chown -R apache:apache /var/www/html

5. Set the database password and create the nextcloud database:

Change password: mysqladmin -u root password "123456"

Login: mysql -u root -p123456

After entering the database, create the database:

create database nextcloud; (The database name can be changed at will, as long as it stores nextcloud)

6. Access nextcloud through the web interface:

Real machine browser access: http://192.68.27.101/index.php

Note: Nextcloud 14 requires PHP 7

7. Update PHP5.4.16 to 5.6:

Check the current PHP version: php -v

Install the RPM upgrade package

Note: Different versions use different commands. Since I installed the centos7 series, I chose the first two commands to execute.

CentOS/RedHat 7:

rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

CentOS/RedHat 6:

rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm

CentOS/RedHat 5:

rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm

After installation, stop httpd and then uninstall the old version of PHP

systemctl stop httpd.service
  yum remove php-common

Start installing php5.6

 yum install -y php56w php56w-opcache php56w-xml php56w-devel php56w-mcrypt php56w-gd php56w-mysql php56w-intl php56w-mbstring

After the installation is complete, start aptech

systemctl start httpd.service

Check the PHP version again and find that it has been upgraded to PHP5.6

8. After installing nextcloud on the web interface and restarting httpd, open the browser again to access

Set the login password and select the relevant settings of the mariadb database

The default database is SQLite. Click mariaDB database and enter the account, password, and table name.

Note: SQLite is also a database

SQLite is a lightweight database, an ACID-compliant relational database management system contained in a relatively small C library.

It is a public domain project established by D. Richard Hipp. The design goal is embedded, and it has been used in many embedded products.

One of its features is that it takes up very little resources. In embedded devices, only a few hundred KB of memory may be enough.

Click Install to install

After entering, I found that it is very similar to Baidu Netdisk. You can upload, download, and share. You can explore the functions by yourself.

Upload data on a web browser

Enter the IP address directly in the browser. Mine is 192.68.27.101. Enter the account and password to enter.

9. Install plugins:

For example: Find Files Right Click in Settings-Apps-Files and enable it (if it cannot be enabled, it is usually related to slow network)

You can also install more plugins to enrich the functionality of nextcloud

Real-time monitoring of CPU load, memory usage, user activity, etc.

Note: The speed of installation and use depends on your network and configuration, please be patient. . .

My environment: Windows 10 real machine (WiFi), vm12 virtual machine (network card bridging), centos7 virtual machine, xshell remote connection software

Windows 10 needs to be able to communicate with centos7, both of them need to be able to connect to the Internet

Win10 IP: 192.68.27.133, centos7 IP: 192.68.27.101

Produced by: OneNote

Since then, the construction has been successful

Summarize

The above is a detailed tutorial on how to build a nextcloud private cloud storage network disk. I hope it will be helpful to everyone. If you have any questions, please leave me a message and I will reply to you in time. I would also like to thank everyone for their support of the 123WORDPRESS.COM website!
If you find this article helpful, please feel free to reprint it and please indicate the source. Thank you!

You may also be interested in:
  • Code example of using nextcloud to build a personal network disk under Linux
  • How to deploy nextcloud network disk using docker
  • How to Install Nextcloud with Nginx and PHP7-FPM in CentOS7

<<:  MySQL briefly understands how "order by" works

>>:  A brief analysis of Vue's asynchronous update of DOM

Recommend

Vue2 implements provide inject to deliver responsiveness

1. Conventional writing in vue2 // The parent com...

Login interface implemented by html+css3

Achieve results First use HTML to build a basic f...

js to realize the production method of carousel

This article shares the specific code for js to r...

A brief analysis of the function calling process under the ARM architecture

Table of contents 1. Background knowledge 1. Intr...

Classification of web page color properties

Classification of color properties Any color can ...

40 fonts recommended for famous website logos

Do you know what fonts are used in the logo desig...

Node.js+express+socket realizes online real-time multi-person chat room

This article shares the specific code of Node.js+...

Details of various font formats in HTML web pages

This section starts with the details of text modi...

Solve the problem when setting the date to 0000-00-00 00:00:00 in MySQL 8.0.13

I just started learning database operations. Toda...

HTML Several Special Dividing Line Effects

1. Basic lines 2. Special effects (the effects ar...

Use CSS to achieve circular wave effect

I often see some circular wave graphics on mobile...

HTML table tag tutorial (34): row span attribute ROWSPAN

In a complex table structure, some cells span mul...

JS implementation of carousel carousel case

This article example shares the specific code of ...

How to modify the location of data files in CentOS6.7 mysql5.6.33

Problem: The partition where MySQL stores data fi...