In this walk-through we will take you through the steps on how to install NextCloud on your Raspberry Pi.
This walk-through will include:
1) How-to format and mount an external usb disk for data storage.
2) How-to install and setup MariaDB for the SQL backend.
3) How-to instal the NextCloud Software.
VIDEO
Steps – Pdf – NextCloud Setup – Raspberry Pi or follow below.
NextCloud Setup – Raspberry Pi !
Url’s used: Rasbian
https://www.raspberrypi.org/downloads/raspbian/
Components:
Raspberry Pi 3 32 GB SD Card USB Keyboard Monitor with HDMI 2TB External HDD (usb)
Steps:
Setup your raspberry Pi
Download the arm image from https://www.raspberrypi.org/downloads/raspbian/ Extract the image from the file you have downloaded. Flash your SD Card with the image you extracted using Etcher. (Or your preferred tool) Remove the SD Card from your computer and insert it into the Raspberry Pi. Connect all the components to the Raspberry Pi and power it on Complete the usual installation / configuration steps. (https://www.raspberrypi.org/documentation/installation/installing-images/README.md ) Set a static IP. We will use 192.168.1.253 for our lab demosud. ssh to your raspberry pi and follow the below sections.
Preparing the External HDD (usb)
Before you plug in the usb disk, Tail the messages file with the command below:
~$ tail -f /var/log/messages | grep disk
Our output:
We now know that the disk is on ## /dev/sda
Let us now create a partition.
~$ sudo fdisk /dev/sda
Our inputs used in order (m | d | F | n | y | w)
Visual below:
Create the filesystem.
~$ sudo mkfs -t ext4 /dev/sda1
Create a directory to test the mount.
~$ sudo mkdir /mnt/NCSTORE
Verify the disk is able to mount
~$ sudo mount /dev/sda1 /mnt/NCSTORE
list the currently mounted disks.
~$ df -lh
You should see the volume mounted:
If all working as expected, edit the /etc/fstab to make the mount permanent. As per our example we added the following line:
Update the installation.
~$ sudo apt-get update
~$ sudo apt-get upgrade
MariaDB Install & DB / User creation.
Install MariaDB and secure it.
~$ sudo apt install mariadb-server
~$ sudo mysql_secure_installation
Our inputs used in order (y | y | y | y | y)
Don’t forget the password you set during this step!
Create the NextCloud Database & DB user
Login to the SQL server and provide the password you set in the previous step.
~$ sudo mysql -u root -p
Create the Database to be used by NexCloud
CREATE DATABASE ncdb;
Create the user we will use to access the DB we just created
CREATE USER ‘ncdbuser’@’localhost’ IDENTIFIED BY ‘yourpasswordhere’;
Grant the user permissions to use the DB we created
GRANT ALL PRIVILEGES ON ncdb.* TO ‘ncdbuser’@’localhost’;
Finalize the setting with
FLUSH PRIVILEGES;
Install NextCloud
Install Apache, PHP & PHP SQL Connector.
~$ sudo apt-get install apache2 php-mysql php7.3 php7.3-gd php7.3-curl php7.3-zip php7.3-xml php7.3-mbstring
Now restart Apache
~$ sudo service apache2 restart
Fetch NextCloud and extract it.
At the time of this walk through version nextcloud-17.0.2. is the most current.
To view what is available see: https://download.nextcloud.com/server/releases/
~$ cd /var/www/html
We need to set the correct permissions
~$ sudo chown -R www-data:www-data /var/www/html/nextcloud/
~$ sudo chown -R www-data:www-data /mnt/NCSTORE
~$ sudo chmod 750 /mnt/NCSTORE
Open your browser and navigate to your Raspberry pi ip/nextcloud
http://192.168.1.253/nextcloud
Enter the details requested.