Ricerca nel sito web

Come installare il server di condivisione file Pydio Cells su Rocky Linux


Pydio è una soluzione di archiviazione cloud gratuita, open source e self-hosted che fornisce un luogo centrale per collaborare e condividere file internamente o esternamente. È scritto nel linguaggio di programmazione HP e Ajax ed è molto simile a Google Drive e ad altri servizi di condivisione file online. Pydio fornisce un'interfaccia web basata su Ajax e ti consente di connettere il tuo spazio di archiviazione esistente come SAN, SAMBA, CIFS, FTP, NFS, ecc. Fornisce un'applicazione client per Mac, Windows e Linux e client mobili per iOS e Android.

In questo post ti mostreremo come installare Pydio su Rocky Linux 8.

Prerequisiti

  • Un server che esegue Rocky Linux 8.
  • Sul server è configurata una password di root.

Installa e configura il database MariaDB

Pydio utilizza MariaDB come backend del database, quindi MariaDB deve essere installato e configurato. Innanzitutto, installa il server database MariaDB utilizzando il seguente comando:

dnf install @mariadb -y

Una volta installato MariaDB, avvia e abilita il servizio MariaDB con il seguente comando:

systemctl start mariadb
systemctl enable mariadb

Successivamente, dovrai proteggere l'installazione di MariaDB e impostare la password di root. Puoi farlo eseguendo il seguente script:

mysql_secure_installation

Rispondi a tutte le domande come mostrato di seguito per garantire l'installazione:

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

You already have a root password set, so you can safely answer 'n'.

Change the root password? [Y/n] y
New password:
Re-enter new password:
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

Successivamente, accedi a MariaDB con il seguente comando:

mysql -u root -p

Una volta effettuato l'accesso, crea un database e un utente con il seguente comando:

MariaDB [(none)]> CREATE DATABASE pydio;
MariaDB [(none)]> CREATE USER 'pydio'@'localhost' IDENTIFIED BY 'password';

Successivamente, concedi tutti i privilegi al database Pydio con il seguente comando:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON pydio.* to 'pydio'@'localhost';

Successivamente, svuota i privilegi ed esci da MariaDB con il seguente comando:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

A questo punto MariaDB è installata e configurata. Ora puoi procedere al passaggio successivo.

Installa Pydio

Innanzitutto, crea un utente dedicato per eseguire Pydio con il seguente comando:

useradd -m -s /bin/bash pydio

Successivamente, crea le directory richieste con il seguente comando:

mkdir -p /opt/pydio/bin /var/cells/certs

Successivamente, imposta la proprietà corretta su tutte le directory con il seguente comando:

chown -R pydio: /opt/pydio /var/cells

Successivamente, crea un file di variabili di ambiente:

nano /etc/profile.d/cells-env.sh

Aggiungi le seguenti righe:

export CELLS_WORKING_DIR=/var/cells
export CADDYPATH=/var/cells/certs

Salvare e chiudere il file quindi attivare la variabile utilizzando il seguente comando:

source /etc/profile.d/cells-env.sh

Successivamente, imposta l'autorizzazione corretta per il file variabile:

chmod 0755 /etc/profile.d/cells-env.sh

Successivamente, accedi come utente Pydio e scarica l'ultima versione di Pydio con il seguente comando:

su - pydio 
wget https://download.pydio.com/latest/cells/release/{latest}/linux-amd64/pydio-cells-{latest}-linux-amd64.zip

Una volta completato il download, decomprimere il file scaricato con il seguente comando:

unzip -q pydio-cells-{latest}-linux-amd64.zip

Successivamente, sposta la directory estratta in /opt e imposta l'autorizzazione adeguata:

mv cells /opt/pydio/bin/cells
chmod a+x /opt/pydio/bin/cells

Successivamente, esci dall'utente Pydio con il seguente comando:

exit

Successivamente, aggiungi le autorizzazioni per associarti alle porte HTTP predefinite:

setcap 'cap_net_bind_service=+ep' /opt/pydio/bin/cells

Successivamente, crea un collegamento simbolico del binario Pydio con il seguente comando:

ln -s /opt/pydio/bin/cells /usr/local/bin/cells

Infine, verifica la versione di Pydio utilizzando il seguente comando:

cells version

Otterrai il seguente output:

Pydio Cells Home Edition
 Version: 	3.0.4
 Built: 	28 Jan 22 13:52 +0000
 Git commit: 	c146b94067637b4c8724b4ba20a3a032a06f1bdd
 OS/Arch: 	linux/amd64
 Go version: 	go1.15.14

Configura Pydio

Prima di configurare Pydio, imposta ulimit con il seguente comando:

ulimit -n 8192

Successivamente, accedi come utente Pydio e configura Pydio con il seguente comando:

su - pydio 
cells configure

Una volta configurato Pydio, otterrai il seguente output:

Welcome to Pydio Cells Home Edition installation 
Pydio Cells Home Edition (v3.0.4) will be configured to run on this machine.
Make sure to prepare access and credentials to a MySQL 5.6+ (or MariaDB equivalent) server.
Pick your installation mode when you are ready.

? Browser-based (requires a browser access)
2022-02-04T03:36:55.085Z        INFO    pydio.gateway.rest      Started
2022-02-04T03:36:55.263Z	INFO	pydio.rest.install	Started

? Created a new local CA at "/var/cells/certs/rootCA.pem" ????
? Created a new certificate valid for the following names ???? - "127.0.0.1" - "45.58.45.164" - "localhost" - "localhost.localdomain" - "localhost4" - "localhost4.localdomain4"
? The certificate is at "/var/cells/certs/d31dbbeb557595f71dcfb67ffac0a86f.pem" 
 and the key at "/var/cells/certs/d31dbbeb557595f71dcfb67ffac0a86f-key.pem"

???? If you are behind a reverse proxy, you can either install the RootCA on the proxy machine trust store, or configure your proxy to `insecure_skip_verify` for pointing to Cells.
???? If you are developing locally, you may install the RootCA in your system trust store to see a green light in your browser!
????  To easily install the RootCA in your trust store, use https://github.com/FiloSottile/mkcert. Set the $CAROOT environment variable to the rootCA folder then use 'mkcert -install'

[DEV NOTICE] Registered directive 'pydioproxy' before 'proxy'
Activating privacy features... done.
https://0.0.0.0:8080

Installation Server is starting...
Listening to: 0.0.0.0:8080

2022-02-04T03:36:58.388Z	INFO	pydio.gateway.proxy	Restarting proxy	{"caddyfile": "\n\n0.0.0.0:8080  {\n\troot \"/var/cells/static/install\"\n\tproxy /install [::]:46687\n\n\t\n\ttls \"/var/cells/certs/d31dbbeb557595f71dcfb67ffac0a86f.pem\" \"/var/cells/certs/d31dbbeb557595f71dcfb67ffac0a86f-key.pem\"\n}\n\n\n\n\t "}
2022-02-04T03:36:58.890Z	INFO	pydio.gateway.proxy	Restart done

Opening URL https://0.0.0.0:8080 in your browser. Please copy/paste it if the browser is not on the same machine.

Accedi all'interfaccia Web Pydio

A questo punto, Pydio viene avviato e resta in ascolto sulla porta 8080. Ora apri il tuo browser web e accedi all'interfaccia web di Pydio utilizzando l'URL https://your-server-ip:8080. Dovresti vedere la seguente schermata:

Fai clic sul pulsante Avanti. Dovresti vedere la schermata di configurazione del database:

Fornisci i dettagli di configurazione del tuo database e fai clic sul pulsante AVANTI. Dovresti vedere la schermata di creazione dell'utente amministratore:

Fornisci l'utente amministratore e la password e fai clic sul pulsante AVANTI. Dovresti vedere la seguente schermata:

Fare clic sul pulsante INSTALLA ORA per avviare l'installazione. Una volta completata l’installazione vi apparirà la seguente schermata:

Fai clic sul pulsante RICARICA. Dovresti vedere la schermata di accesso di Pydio:

Fornisci il nome utente e la password dell'amministratore e fai clic su INVIO. Dovresti vedere la dashboard di Pydio nella seguente schermata:

Crea un file di servizio Systemd per Pydio

Ora torna all'interfaccia della riga di comando e premi CTRL+C per arrestare il server Pydio. Quindi, esegui il comando seguente per uscire dall'utente Pydio.

exit

Successivamente, si consiglia di creare un file di servizio systemd per gestire il servizio Pydio. Puoi crearlo con il seguente comando:

nano /etc/systemd/system/cells.service

Aggiungi le seguenti righe:

[Unit]
Description=Pydio Cells
Documentation=https://pydio.com
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/opt/pydio/bin/cells

[Service]
User=pydio
Group=pydio
PermissionsStartOnly=true
AmbientCapabilities=CAP_NET_BIND_SERVICE
ExecStart=/opt/pydio/bin/cells start
Restart=on-failure
StandardOutput=journal
StandardError=inherit
LimitNOFILE=65536
TimeoutStopSec=5
KillSignal=INT
SendSIGKILL=yes
SuccessExitStatus=0
WorkingDirectory=/home/pydio

Add environment variables
Environment=CELLS_WORKING_DIR=/var/cells

[Install]
WantedBy=multi-user.target

Salva e chiudi il file quindi ricarica il demone systemd per applicare le modifiche:

systemctl daemon-reload

Successivamente, avvia e abilita il servizio Pydio con il seguente comando:

systemctl enable cells
systemctl start cells

Ora puoi controllare lo stato di Pydio con il seguente comando:

systemctl status cells

Otterrai il seguente output:

? cells.service - Pydio Cells
   Loaded: loaded (/etc/systemd/system/cells.service; disabled; vendor preset: disabled)
   Active: active (running) since Fri 2023-02-04 03:44:23 UTC; 6s ago
     Docs: https://pydio.com
 Main PID: 7889 (cells)
    Tasks: 130 (limit: 23695)
   Memory: 397.9M
   CGroup: /system.slice/cells.service
           ??7889 /opt/pydio/bin/cells start
           ??7896 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.tasks$
           ??7900 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.gateway.websocket$
           ??7908 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.jobs$
           ??7916 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.search$
           ??7922 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.pydiod>
           ??7927 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.person>
           ??7933 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.cellsd>
           ??7937 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.versio>
           ??7957 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.thumbn>
           ??7959 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.objects.loc>
           ??7979 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.cells>
           ??7980 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.pydio>
           ??7988 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.versi>
           ??7995 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.thumb>
           ??8003 /opt/pydio/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.perso>

Feb 04 03:44:28 rockylinux cells[7889]: 2023-02-04T03:44:28.157Z        INFO        pydio.rest.acl        Started
Feb 04 03:44:28 rockylinux cells[7889]: 2023-02-04T03:44:28.181Z        INFO        pydio.grpc.data.index        Started
Feb 04 03:44:28 rockylinux cells[7889]: 2023-02-04T03:44:28.181Z        INFO        pydio.grpc.data.index        Starting umbrella service py>
Feb 04 03:44:28 rockylinux cells[7889]: 2023-02-04T03:44:28.247Z        INFO        pydio.test.objects        Started
Feb 04 03:44:28 rockylinux cells[7889]: 2023-02-04T03:44:28.771Z        INFO        pydio.grpc.data.index.cellsdata        Warning: no privat>
Feb 04 03:44:28 rockylinux cells[7889]: 2023-02-04T03:44:28.803Z        INFO        pydio.grpc.data.index.personal        Warning: no private>
Feb 04 03:44:29 rockylinux cells[7889]: 2023-02-04T03:44:29.002Z        INFO        pydio.grpc.data.index.thumbnails        Warning: no priva>
Feb 04 03:44:29 rockylinux cells[7889]: 2023-02-04T03:44:29.036Z        INFO        pydio.grpc.data.index.versions        Warning: no private>
Feb 04 03:44:29 rockylinux cells[7889]: 2023-02-04T03:44:29.230Z        INFO        pydio.grpc.data.index.pydiods1        Warning: no private>
Feb 04 03:44:29 rockylinux cells[7889]: 2023-02-04T03:44:29.286Z        INFO        pydio.gateway.proxy        Restarting proxy        {"cadd>

Puoi anche controllare i log Pydio usando il seguente comando:

tail -f /var/cells/logs/pydio.log

Conclusione

Congratulazioni! hai installato con successo l'archiviazione cloud Pydio su Rocky Linux 8. Ora puoi caricare file e altri documenti sul server Pydio e condividerli con i tuoi team e altri utenti. Sentiti libero di chiedermi se hai qualche domanda.

Articoli correlati: