Descriere:
În tutorialul de astăzi vom instala aplicația Pydio Cells.
 Pydio Cells este o platformă modernă de stocare și partajare a fișierelor, care se instalează local pe propriul server. Este concepută ca o alternativă 
profesională la servicii precum Dropbox Business sau Google Drive, oferind control complet asupra datelor și infrastructurii.
 Are o interfață web intuitivă și responsivă, compatibilă cu toate dispozitivele, și permite partajarea fișierelor atât intern, cât și extern, cu opțiuni detaliate
de control al accesului.
 Sistemul include funcții avansate pentru colaborare, cum ar fi:
 -  comentarii,
 -  versiuni multiple ale fișierelor,
 -  etichete,
 -  fluxuri de lucru.
 
Este scris în limbajul Go, ceea ce îl face rapid și eficient, fiind potrivit atât pentru utilizatori individuali, cât și pentru medii enterprise.
Pydio Cells oferă și mecanisme robuste de securitate: autentificare avansată, control granular al permisiunilor și audit complet al acțiunilor.
Este o soluție excelentă pentru cei care își doresc o infrastructură cloud privată, fiabilă și scalabilă.
Pydio Cells oferă și mecanisme robuste de securitate: autentificare avansată, control granular al permisiunilor și audit complet al acțiunilor.
Este o soluție excelentă pentru cei care își doresc o infrastructură cloud privată, fiabilă și scalabilă.
Presupunând că serverul Linux (eu pentru demo folosesc Ubuntu Server 24.04) este deja instalat și actualizat la zi, vom trece direct la instalare.
 -  În primul pas, vom instala dependințele necesare.
 -  La pasul doi, am pregătit un script automatizat care se ocupă de aproape tot:
-  va detecta drive-urile montate,
 -  le va afișa,
 -  iar tu doar alegi unde vrei să instalezi aplicația.
 
 -  
 
Urmează pașii rulând, una câte una, comenzile de mai jos pentru a pregăti mediul în vederea instalării.
sudo apt update sudo apt install -y wget unzip
#!/bin/bash
						
						# Funcție pentru afișarea și selectarea locației
						select_location() {
						    # Afișăm informații despre spațiul disponibil pe toate dispozitivele
						    echo "Analizăm spațiul disponibil pe disc..."
						    echo "--------------------------------------------"
						    df -h | grep -v tmpfs | grep -v "loop" | grep -v "/boot"
						    echo "--------------------------------------------"
						    
						    # Începem indexarea opțiunilor
						    option_index=1
						    declare -A volume_map
						    
						    echo "Selectați locația pentru instalarea Pydio Cells:"
						    
						    # Identificăm toate sistemele de fișiere montate (excluzând cele de sistem)
						    echo "VOLUME MONTATE DETECTATE (recomandate):"
						    
						    # Folosim df pentru a lista toate sistemele de fișiere montate
						    # Excludem sistemele de fișiere de sistem (tmpfs, devtmpfs, etc)
						    mount_points=$(df -h | grep -v tmpfs | grep -v "loop" | grep -v "/boot" | grep -v "^Filesystem" | awk '{print $6}')
						    
						    # Filtrăm punctele de montare pentru a exclude rădăcina (/) și subdirectoarele standard
						    filtered_mounts=""
						    for mp in $mount_points; do
						        # Excludem rădăcina și subdirectoarele standard
						        if [[ "$mp" != "/" && "$mp" != "/home" && "$mp" != "/opt" && "$mp" != "/usr" && "$mp" != "/var" ]]; then
						            filtered_mounts="$filtered_mounts $mp"
						            available=$(df -h "$mp" | tail -1 | awk '{print $4}')
						            filesystem=$(df -h "$mp" | tail -1 | awk '{print $1}')
						            echo "$option_index) $mp/pydio (Drive montat: $filesystem, Spațiu disponibil: $available)"
						            volume_map[$option_index]="$mp/pydio"
						            ((option_index++))
						        fi
						    done
						    
						    if [ -z "$filtered_mounts" ]; then
						        echo "Nu s-au detectat volume montate adiționale"
						    fi
						    
						    echo ""
						    echo "LOCAȚII STANDARD:"
						    echo "$option_index) /opt/pydio (locație standard pentru aplicații)"
						    volume_map[$option_index]="/opt/pydio"
						    ((option_index++))
						    
						    echo "$option_index) /home/$(whoami)/pydio (în directorul home)"
						    volume_map[$option_index]="/home/$(whoami)/pydio"
						    ((option_index++))
						    
						    # Adăugăm și rădăcina ca opțiune
						    root_available=$(df -h / | tail -1 | awk '{print $4}')
						    echo "$option_index) /pydio (în directorul rădăcină, spațiu disponibil: $root_available)"
						    volume_map[$option_index]="/pydio"
						    ((option_index++))
						    
						    echo "$option_index) Specificați manual o altă locație"
						    volume_map[$option_index]="custom"
						    
						    max_option=$option_index
						    
						    while true; do
						        read -p "Introduceți opțiunea (1-$max_option): " selected_option
						        
						        # Verificăm dacă opțiunea este validă
						        if [[ "$selected_option" =~ ^[0-9]+$ ]] && [ "$selected_option" -ge 1 ] && [ "$selected_option" -le "$max_option" ]; then
						            if [ "${volume_map[$selected_option]}" == "custom" ]; then
						                read -p "Introduceți calea completă pentru instalare: " INSTALL_DIR
						            else
						                INSTALL_DIR="${volume_map[$selected_option]}"
						            fi
						            
						            echo "Ați selectat: $INSTALL_DIR"
						            read -p "Confirmați această locație? (y/n): " confirm
						            if [[ "$confirm" == "y" || "$confirm" == "Y" ]]; then
						                break
						            else
						                echo "Vă rugăm să selectați din nou."
						            fi
						        else
						            echo "Opțiune invalidă, vă rugăm să selectați un număr între 1 și $max_option."
						        fi
						    done
						    
						    echo "Se creează directorul pentru instalare: $INSTALL_DIR"
						    sudo mkdir -p $INSTALL_DIR
						    sudo chown $(whoami):$(whoami) $INSTALL_DIR
						    cd $INSTALL_DIR
						    echo "Pydio Cells va fi instalat în: $INSTALL_DIR"
						}
						
						# Selectăm locația pentru instalare
						select_location
						
						
						
						echo "Descărcăm Pydio Cells în directorul selectat..." wget https://www.tutoriale-it-tech.ro/_Files/pydio-cells-linux-amd64.zip -O pydio-cells-linux-amd64.zip # Verificăm dacă descărcarea a reușit if [ $? -ne 0 ]; then echo "Eroare la descărcarea arhivei Pydio Cells. Verificați conexiunea la internet sau URL-ul." exit 1 else echo "Arhiva Pydio Cells a fost descărcată cu succes în $INSTALL_DIR" ls -la pydio-cells-linux-amd64.zip fi
Ajunși în acest punct, înainte de a începe instalarea Pydio, trebuie să instalăm și să configurăm o bază de date. Pentru acest tutorial, am ales
să folosim MariaDB.
În primul set de comenzi vom instala și configura MariaDB.
 -  În timpul instalării, la ultimul pas, ți se va cere să setezi o parolă master pentru accesarea bazei de date.
 -  Ține minte această parolă, pentru că vei avea nevoie de ea mai târziu.
 -  Evită parolele simple de genul
1234,adminetc. – recomand o parolă puternică. 
În al doilea set de comenzi vom configura baza de date pentru utilizarea cu Pydio:
 -  La rularea primei comenzi, ți se va cere să introduci parola master setată mai devreme.
 -  Înainte de a rula a doua comandă, verifică parola bazei de date presetată
-  Dacă nu ți se pare suficient de puternică, modific-o înainte de a executa comanda.
 -  Notă: Nu uita parola setată pentru baza de date dacă alegi să o schimbi – vei avea nevoie de ea la configurarea aplicației.
 
 -  
 
sudo apt update sudo apt install -y mariadb-server mariadb-client
sudo systemctl start mariadb sudo systemctl enable mariadb
sudo systemctl status mariadb
sudo mysql_secure_installation
sudo mysql -u root -p
CREATE DATABASE pydio CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'pydio'@'localhost' IDENTIFIED BY 'Parola_Pydio#2025#'; GRANT ALL PRIVILEGES ON pydio.* TO 'pydio'@'localhost'; FLUSH PRIVILEGES; EXIT;
Acum avem totul pregătit și ne putem concentra pe instalarea propriu-zisă a aplicației Pydio Cells.
Am încercat să fac totul cât mai simplu, așa că nu ar trebui să întâmpini probleme.
						Ce trebuie să faci:
						- 
						Rulează comenzile de mai jos, una câte una, în terminal.
 - 
						La ultima comandă, vei fi întrebat cum vrei să rulezi instalarea.
- 
						Selectează varianta de rulare în browser.
 - 
						Odată selectată această opțiune, restul instalării se va face direct în browser.
 
 - 
						
 
# Dezarhivăm fișierul echo "Dezarhivăm fișierul..." unzip pydio-cells-linux-amd64.zip # Verificăm dacă dezarhivarea a reușit if [ $? -ne 0 ]; then echo "Eroare la dezarhivarea fișierului. Verificați dacă arhiva este validă." exit 1 else echo "Arhiva a fost dezarhivată cu succes." echo "Conținutul directorului după dezarhivare:" ls -la fi
# Setăm permisiunile executabile pentru binar echo "Setăm permisiunile executabile..." chmod +x cells # Verificăm dacă binarul cells există și are permisiunile corecte if [ ! -f "cells" ]; then echo "Eroare: Nu s-a găsit binarul 'cells' după dezarhivare. Verificați conținutul arhivei." ls -la exit 1 else echo "Binarul Pydio Cells a fost găsit și are permisiuni de execuție." ls -la cells fi
# Rulăm instalarea inițială a Pydio Cells echo "Începem instalarea și configurarea Pydio Cells..." ./cells install # Această comandă va iniția un proces interactiv care vă va solicita: # - Adresa IP sau numele de domeniu pentru acces # - Portul pentru interfața web (implicit 8080) # - Portul pentru comunicarea internă (implicit 33060) # - Configurarea bazei de date (MySQL sau SQLite) # - Crearea contului de administrator # - Alte setări specifice
Deschide browserul și accesează link-ul:
https://IP-SERVER:8008Aici va începe instalarea grafică, pe care trebuie să o parcurgi pas cu pas.
La pasul 2 din instalare, va trebui să introduci parametrii pentru conectarea la baza de date.
 Trebuie schimbate doar 3 câmpuri:
 -  Numele bazei de date:
pydio -  Utilizatorul bazei de date:
pydio -  Parola:
Parola_Pydio#2025#(dacă nu ai modificat-o) 
Dacă în timpul configurării bazei de date ai ales alte nume sau parolă, completează aici cu valorile setate de tine.
La pasul 3 din instalare, poți seta username-ul și parola pentru contul de administrator.
 -  Poți lăsa utilizatorul implicit
admin, dar trebuie să setezi o parolă nouă. -  Nu îți face griji – aceste date pot fi schimbate ulterior, oricând, după finalizarea instalării.
 
După ce completezi toate câmpurile, așteaptă finalizarea procesului.
 Când instalarea este gata, poți accesa aplicația Pydio Cells din browser folosind:
 
 https://IP-SERVER:8008👉 Autentifică-te folosind username-ul și parola setate în timpul instalării.
Ajuns în acest punct, vei observa că la repornirea serverului, aplicația Pydio Cells nu pornește automat.
 Ai două opțiuni:
 -  O pornești manual de fiecare dată (nu recomand).
 -  (Recomandat) Pierzi câteva minute și îți creezi un fișier de serviciu, care va porni aplicația automat la boot.
 
Problema este că fiecare utilizator are propria cale de instalare și user, așa că nu pot oferi un fișier de serviciu general valabil pentru toți.
 Pentru a face lucrurile cât mai simple, am creat o pagină web care generează automat conținutul fișierului de serviciu, în funcție de calea 
și userul tău.
Ce trebuie să faci:
 -  Rulează prima comandă – aceasta va detecta automat calea completă către aplicație și numele utilizatorului activ.
 -  Introdu acele date în formularul de pe website – se va genera automat conținutul fișierului de serviciu.
 -  Rulează a doua comandă, care va deschide fișierul în editorul
nano. -  Copiază și lipește conținutul generat în acel fișier, apoi salvează și închide.
 
După ce ai salvat fișierul de serviciu, rulează și celelalte trei comenzi rămase pentru a:
 -  Reîncărca serviciile systemd,
 -  Activa serviciul pentru a porni automat la boot,
 -  Porni aplicația imediat.
 
Dacă nu ai primit niciun mesaj de eroare, atunci totul ar trebui să fie în regulă, iar aplicația Pydio Cells va porni automat la fiecare 
restart al serverului.
#!/bin/bash echo "Detectez parametrii pentru fișierul de serviciu Pydio Cells..." # Detectăm calea executabilului cells CELLS_PATH=$(sudo find / -name cells -type f -executable 2>/dev/null | head -1) if [ -z "$CELLS_PATH" ]; then echo "EROARE: Nu s-a putut găsi executabilul Pydio Cells!" exit 1 fi # Determinăm utilizatorul care deține fișierul FILE_OWNER=$(stat -c '%U' "$CELLS_PATH") echo "-------------------------------------" echo "Parametrii pentru fișierul de serviciu:" echo "Calea executabilului: $CELLS_PATH" echo "Utilizator: $FILE_OWNER" echo "-------------------------------------"
sudo nano /etc/systemd/system/pydio-cells.service
sudo systemctl daemon-reload
sudo systemctl enable pydio-cells.service
sudo systemctl start pydio-cells.service
Poți verifica dacă totul funcționează corect rulând comanda de mai jos.
Dacă totul este în regulă, ar trebui să vezi:
 -  Serviciul activ (cu verde)
 -  Fără erori sau linii roșii
 
Astfel te asiguri că aplicația pornește automat și rulează corect după fiecare restart. ✅
sudo systemctl status pydio-cells.service
Concluzie:
Am ajuns la finalul acestui tutorial în care am parcurs împreună toți pașii necesari pentru instalarea completă a aplicației Pydio Cells pe un 
server Linux:
 -  Am instalat dependințele necesare,
 -  Am configurat o bază de date MariaDB,
 -  Am instalat aplicația și am parcurs procesul de configurare în browser,
 -  Am creat un serviciu systemd pentru pornirea automată,
 -  Și am verificat că totul funcționează corect.
 
🎥 Urmărește tutorialul video unde îți arăt întreg procesul, pas cu pas. E mai ușor de urmărit când vezi totul în acțiune.
Tutorial prezentat de: Remus @ Tutoriale IT & Tech