Instalare si configurare Nextcloud pe Raspberry Pi 3

Instalarea si configurarea Nextcloud

 

Dupa ce am vazut cum sa folosim Raspberry Pi pe post de NAS, putem trece la un alt proiect usor de realizat si bun pentru a exersa cunostintele de Linux dobandite la cursul Basic + Server: configurarea pe post de cloud local.

In acest proiect am folosit o instalare curata de Raspbian cu PIXEL pe un card microSD nou, iar pe post de unitate externa de stocare am folosit un hard disk de 160 GB ceva mai vechi, caruia nu ii mai gaseam nicio utilizare.

Primul pas dupa pornirea Rpi 3 cu noul microSD instalat este sa facem un update de sistem folosind comenzile:

 

sudo apt update

sudo apt upgrade -y

 

Configurarea Raspberry Pi

 

Dupa actualizarea sistemului, vom executa comanda

sudo raspi-config

pentru a seta unele aspecte minimale cu privire la securitate.

Primul pas este sa schimbam parola utilizatorului implicit “pi” din cea default cu care vine orice sistem de operare PIXEL intr-una pe care o stim doar noi. Pentru asta, din meniul de configurare selectam optiunea “Change User Password”. Dupa ce introducem noua parola de doua ori, selectam optiunea “Advanced Options > Expand Filesystem” din acelasi meniu. Aceasta comanda face ca intreg microSD-ul pe care este instalat PIXEL sa fie folosit de catre sistem.

 

Lucrul cu unitatea de stocare externa

Vom executa comanda

sudo fdisk -l

pentru a vedea toate discurile disponibile si pentru a gasi datele specifice unitatii externe. In cazul meu aceasta este /dev/sda si este deja montata. Urmatoarea comanda este

sudo umount /dev/sda1

pentru a demonta unitatea, urmata de comanda

sudo fdisk /dev/sda

pentru a o formata. In acest caz vom folosi tipul EXT4.

 

Pasul urmator va presupune creare unui nou director in care sa montam unitatea externa. Astfel, in directorul /home am creat un nou director numit mycloud folosind comanda (asigurati-va ca sunteti deja in directorul /home, iar daca nu folositi calea directa a directorului creat):

sudo mkdir mycloud

urmata de comanda

sudo mount /dev/sda1 ~/mycloud

pentru a monta unitatea externa in noul director.

 

Instalarea Apache

Pentru ca nextcloud sa ruleze, este nevoie ca suita AMP sa fie instalata pe sistem. Primul pas este sa instalam Apache, folosind comanda:

sudo apt install apache2

Odata instalat serviciul, putem verifica corectitudinea instalarii deschizand browserul de internet (in cazul Raspberry Pi acesta este Chromium) si introducand adresa IP a RPi3-ului. Ca rezultat, ar trebui sa vedem o pagina de intampinare “Apache2 Debian Default page”.

 

Instalare PHP

Vom instala php cu comanda

sudo apt install php5 php5-gd php5-curl

 

Instalare Sqlite sau MySQL/MariaDB

Pentru folsirea pe post de cloud local, nu este nevoie de un serviciu de baze de date prea performant, astfel incat am ales sa instalez sqlite, insa foarte bine se poate instala si mysql/mariadb. Astfel, pentru instalare vom utiliza comanda:

sudo apt install sqlite php5-sqlite

Dupa instalarea serviciului PHP si sqlite vom reporni serviciul apache cu comanda:

sudo systemctl restart apache2.service

 

Instalare Nextcloud

Primul pas este sa descarcam aplicatia de pe site-ul oficial. La momentul scrierii acestui articol, ultima versiune era 11.0.3, iar fisierul avea o dimensiune de circa 50 MB. La instalarea serviciului Apache, acesta a creat structura de directoare /var/www/html/, iar arhiva nextcloud o vom copia in aceasta locatie inainte de a o dez-arhiva. Pentru asta vom folosi comenzile:

cd Downloads/

sudo mv nextcloud-11.0.3.zip /var/www/html/

cd /var/www/html/

sudo unzip -q nextcloud-11.0.3.zip

 

Crearea directorului de date Nextcloud

Directorul de date trebuie sa fie creat pe unitatea externa, altfel Nextcloud va folosi spatiul de pe microSD-ul de pe care ruleaza sistemul de operare PIXEL. Sa ne reamintim ca unitatea externa este montata in directorul ~/mycloud. Astfel folosim urmatoarele comenzi pentru a crea un nou director in structura unitatii externe:

cd mycloud/

sudo mkdir data

Odata creat directorul este important sa stabilim permisiunile pentru acesta, altfel Nextcloud nu il va putea accesa.

sudo chown www-data:www-data ~/mycloud/data

sudo chmod 750 ~/mycloud/data

Urmatorul pas important este sa modificam fisierul de configurare al nexcloud pentru a face serviciul sa recunoasca noul director. Pentru asta executam comanda:

sudo vim /var/www/html/nextcloud/config/config.php

In fisier introducem o noua linie astfel:

‘datadirectory’ => ‘PATH_TO_YOUR_DATA_DIRECTORY’,

Atentie la ultima virgula, care nu trebuie sa lipseasca, iar in loc de PATH_TO_YOUR_DATA_DIRECTORY va fi de fapt calea catre directorul nou creat. Salvam modificarile si iesim din editorul vim. Atentie, vim nu este instalat default in PIXEL, va trebui sa il instalati folsind comanda sudo apt install vim.

 

Setarea directoarelor Nextcloud

Dupa editarea fisierului de configurare trebuie sa stabilim proprietarii (owners) a doua directoare importante ale Nextcloud: config si apps. Pentru asta, vom executa comenzile:

 

cd /var/www/html/nextcloud

ls -l

sudo chown www-data:www-data config apps

 

Prima accesare a Nextcloud si crearea administratorului

Terminata fiind etapa de configurare, acum putem sa deschidem browserul si sa accesam Nextcloud introducand in bara de adrese: IP/nextcloud unde IP este IP-ul local al Raspberry Pi-ului. Se va deschide o pagina in care va trebui sa introduceti numele si parola administratorului Nextcloud dupa care veti apasa de butonul “Finish setup”. Dupa cateva minute in care se vor face ultimele configurari ale Nextcloud, veti avea acces la contul nou creat (cel al administratorului). Din aceasta interfata web puteti sa faceti ultimele retusuri cu privire la configurare, cum ar fi adaugarea de noi utilizatori sau stabilirea unor reguli minimale de securitate.

 

Felicitari. Aveti un cloud personal gata configurat, bazat pe Raspberry Pi 3 si Pixel.

 

Primul mesaj de intampinare al Nextcloud.