Du-te la conținut

Instalare Pydio Cells pe un server Linux - Tutoriale IT & Tech

Omite meniul
Tutoriale IT & Tech

Tutoriale

IT & Tech

Invertorul EaSun SMW 8KW 48v 2xMPPT - Tutoriale IT & Tech
Setare Cookie
Pagina cu Butoane
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ă.

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.
  1. În primul pas, vom instala dependințele necesare.
  2. 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.
Copiază Comanda
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, admin etc. – recomand o parolă puternică.

În al doilea set de comenzi vom configura baza de date pentru utilizarea cu Pydio:
  1. La rularea primei comenzi, ți se va cere să introduci parola master setată mai devreme.
  2. Î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.
Copiază Comanda
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
Copiază Comanda
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:
  1. Rulează comenzile de mai jos, una câte una, în terminal.
  2. 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.
Copiază Comanda
# 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:8008
Aici 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:
  1. O pornești manual de fiecare dată (nu recomand).
  2. (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:
  1. Rulează prima comandă – aceasta va detecta automat calea completă către aplicație și numele utilizatorului activ.
  2. Introdu acele date în formularul de pe website – se va genera automat conținutul fișierului de serviciu.
  3. Rulează a doua comandă, care va deschide fișierul în editorul nano.
  4. 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:
  1. Reîncărca serviciile systemd,
  2. Activa serviciul pentru a porni automat la boot,
  3. 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.
Copiază Comanda
#!/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. ✅
Copiază Comanda
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

Canale și Platforme Sociale
Înapoi la cuprins