So installierst du Pydio unter Debian 11

Pydio ist eine kostenlose, quelloffene und cloudbasierte Anwendung zum Teilen von Dateien. Sie ist in der Sprache Golang geschrieben und wird zum Teilen von Dateien mit dem Client verwendet. Mit ihr kannst du verschiedene Dokumente wie Dateien, Bilder und Videos von überall aus über eine mobile App, eine Desktop-Software oder einen Webbrowser teilen und darauf zugreifen. Es gibt native Clients für Linux, Windows und macOS sowie mobile Clients für Android und iOS.

In diesem Tutorial zeige ich dir, wie du die Pydio App auf Debian 11 installierst.

Voraussetzungen

  • Ein Server, auf dem Debian 11 läuft.
  • Ein Root-Passwort ist auf dem Server eingerichtet.

MariaDB installieren und konfigurieren

Pydio verwendet MariaDB als Datenbank-Backend. Daher musst du den MariaDB-Datenbankserver auf deinem Server installieren. Du kannst ihn installieren, indem du den folgenden Befehl ausführst:

dnf install mariadb-server -y

Sobald MariaDB installiert ist, sichere die MariaDB-Installation mit folgendem Befehl:

mysql_secure_installation

Dieses Skript setzt ein Root-Passwort, entfernt anonyme Benutzer, verbietet den Root-Login aus der Ferne und entfernt die Testdatenbank wie unten gezeigt:

Set root password? [Y/n] n
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

Sobald MariaDB gesichert ist, melde dich in der MariaDB-Shell an:

mysql -u root -p

Sobald du eingeloggt bist, erstelle eine Datenbank und einen Benutzer mit dem folgenden Befehl:

CREATE DATABASE pydiodb;
CREATE USER 'pydiodb'@'localhost' IDENTIFIED BY 'password';

Als Nächstes erteilst du Pydio alle Rechte mit dem folgenden Befehl:

GRANT ALL PRIVILEGES ON pydiodb.* to 'pydiouser'@'localhost';

Lösche die Berechtigungen und verlasse die MariaDB-Shell mit dem folgenden Befehl:

FLUSH PRIVILEGES;
EXIT;

Pydio-Zellen installieren

Standardmäßig ist das Pydio-Paket nicht im Repository von Debian 11 enthalten. Daher musst du es von der offiziellen Website herunterladen.

Du kannst die neueste Version von Pydio Cells mit folgendem Befehl herunterladen:

distribId=cells wget -O /usr/bin/cells https://download.pydio.com/latest/${distribId}/release/{latest}/linux-amd64/${distribId}

Sobald der Download abgeschlossen ist, gibst du der heruntergeladenen Datei die Berechtigung zum Ausführen und bindest sie mit folgendem Befehl an den HTTP-Port:

chmod +x /usr/bin/cells
setcap 'cap_net_bind_service=+ep' /usr/bin/cells

Als Nächstes überprüfst du die Pydio Cells-Version mit folgendem Befehl:

cells version

Du erhältst die folgende Ausgabe:

Warning: no private IP detected for binding broker. Will bind to 209.23.9.181, which may give public access to the broker.
Pydio Cells Home Edition
 Version: 	3.0.6
 Built: 	22 Mar 22 06:06 +0su - pydio 
cells configure000
 Git commit: 	2165523347d2b9860d9c86236b7a518456d9cef3
 OS/Arch: 	linux/amd64
 Go version: 	go1.15.14

Pydio Cells konfigurieren

Als Nächstes musst du Pydio Cells konfigurieren. Du kannst sie mit dem folgenden Befehl konfigurieren:

cells configure

Du wirst aufgefordert, zwischen der browserbasierten und der Kommandozeilen-Installation zu wählen.

Welcome to Pydio Cells Home Edition installation 
Pydio Cells Home Edition (v3.0.3) 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.

Wähle die browserbasierte Installation und drücke die Eingabetaste. Sobald Pydio Cells konfiguriert ist, erhältst du die folgende Ausgabe:

Use the arrow keys to navigate: ? ? ? ? 
? Installation mode: 
  ? Browser-based (requires a browser access)
    Command line (performed in this terminal)

? Browser-based (requires a browser access)
2022-04-02T11:16:18.544Z        INFO    pydio.gateway.rest      Started
2022-04-02T11:16:18.685Z	INFO	pydio.rest.install	Started
2022-04-02T11:16:22.010Z	INFO		

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

2022-04-02T11:16:22.366Z	INFO		? Created a new local CA at "/root/.config/pydio/cells/certs/rootCA.pem" ????
2022-04-02T11:16:22.366Z	INFO		? Created a new certificate valid for the following names ???? - "127.0.0.1" - "209.23.9.181" - "localhost"
2022-04-02T11:16:22.366Z	INFO		? The certificate is at "/root/.config/pydio/cells/certs/e6de382e6f121a9072d77b25ba622a36.pem" 
2022-04-02T11:16:22.366Z	INFO		 and the key at "/root/.config/pydio/cells/certs/e6de382e6f121a9072d77b25ba622a36-key.pem"
2022-04-02T11:16:22.366Z	INFO		
2022-04-02T11:16:22.366Z	INFO		???? 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.
2022-04-02T11:16:22.367Z	INFO		???? If you are developing locally, you may install the RootCA in your system trust store to see a green light in your browser!
2022-04-02T11:16:22.367Z	INFO		????  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'
2022-04-02T11:16:22.367Z	INFO		
2022-04-02T11:16:22.367Z	INFO		Activating privacy features... done.
2022-04-02T11:16:22.367Z	INFO		https://0.0.0.0:8080
2022-04-02T11:16:22.367Z	INFO		WARNING: File descriptor limit 1024 is too low for production servers. At least 8192 is recommended. Fix with "ulimit -n 8192".
2022-04-02T11:16:24.365Z	INFO	pydio.gateway.proxy	Restarting proxy	{"caddyfile": "\n\n0.0.0.0:8080  {\n\troot \"/root/.config/pydio/cells/static/install\"\n\tproxy /install [::]:38327\n\n\t\n\ttls \"/root/.config/pydio/cells/certs/e6de382e6f121a9072d77b25ba622a36.pem\" \"/root/.config/pydio/cells/certs/e6de382e6f121a9072d77b25ba622a36-key.pem\"\n}\n\n\n\n\t "}
2022-04-02T11:16:24.868Z	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.

Zugriff auf den Pydio Cells Web-Installationsassistenten

Zu diesem Zeitpunkt ist Pydio Cells gestartet und lauscht auf Port 8080. Du kannst ihn über die URL https://your-server-ip:8080 aufrufen . Du solltest die Seite mit der Pydio Cells Lizenzvereinbarung sehen:

Willkommen bei der Installation von pydio

Bestätige die Lizenzvereinbarung und klicke auf die Schaltfläche WEITER. Du solltest die Seite mit der Datenbankkonfiguration sehen.

Datenbank-Konfiguration

Gib deine Datenbankkonfiguration an und klicke auf die Schaltfläche WEITER. Du solltest die Seite zum Anlegen eines Admin-Benutzers sehen:

Pydio-Zellen

Gib deinen Admin-Benutzernamen und dein Passwort ein und klicke auf die Schaltfläche WEITER. Du solltest die folgende Seite sehen:

Erweiterte Einstellungen von Pydio

Klicke jetzt auf die Schaltfläche JETZT INSTALLIEREN. Du solltest die Anmeldeseite von Pydio Cells sehen:

Pydio Anmeldung

Gib deinen Admin-Benutzernamen und dein Passwort ein und klicke auf die Schaltfläche EINGABE. Auf der folgenden Seite solltest du das Pydio-Dashboard sehen:

Pydio

Systemd Service Fiel für Pydio Cells erstellen

Als Nächstes musst du eine systemd-Dienstdatei erstellen, um den Pydio-Dienst zu verwalten. Drücke zunächst die Tastenkombination STRG+C, um den Pydio-Dienst anzuhalten, und erstelle dann eine systemd-Dienstdatei mit dem folgenden Befehl:

nano /etc/systemd/system/cells.service

Füge die folgenden Zeilen hinzu:

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

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

[Install]
WantedBy=multi-user.target

Speichere und schließe die Datei und lade den systemd-Daemon neu, um die Änderungen zu übernehmen:

systemctl daemon-reload

Starte und aktiviere dann den Pydio-Dienst mit dem folgenden Befehl:

systemctl enable cells
systemctl start cells

Du kannst den Pydio-Status auch mit dem folgenden Befehl überprüfen:

systemctl status cells

Du erhältst die folgende Ausgabe:

? cells.service - Pydio Cells
     Loaded: loaded (/etc/systemd/system/cells.service; disabled; vendor preset: enabled)
     Active: active (running) since Sat 2022-04-02 11:34:24 UTC; 6s ago
       Docs: https://pydio.com
   Main PID: 25764 (cells)
      Tasks: 119 (limit: 2341)
     Memory: 421.6M
        CPU: 4.114s
     CGroup: /system.slice/cells.service
             ??25764 /usr/bin/cells start
             ??25769 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.jobs$
             ??25775 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.search$
             ??25781 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.gateway.websocket$
             ??25783 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.pydiods1$
             ??25787 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.personal$
             ??25790 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.cellsdata$
             ??25802 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.versions$
             ??25805 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.sync.thumbnail>
             ??25816 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.tasks$
             ??25819 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.objects.local1$
             ??25847 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.pydiods1$
             ??25848 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.personal$
             ??25849 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.cellsdat>
             ??25850 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.versions$
             ??25851 /usr/bin/cells start --fork --config local --registry grpc://:8000 --broker grpc://:8003 ^pydio.grpc.data.index.thumbnai>

Apr 02 11:34:29 debian11 cells[25764]: 2022-04-02T11:34:29.294Z        INFO        pydio.test.objects        Started
Apr 02 11:34:29 debian11 cells[25764]: 2022-04-02T11:34:29.307Z        INFO        pydio.gateway.grpc        Activating self-signed configura>
Apr 02 11:34:29 debian11 cells[25764]: 2022-04-02T11:34:29.308Z        INFO        pydio.gateway.grpc        Started
Apr 02 11:34:30 debian11 cells[25764]: 2022-04-02T11:34:30.191Z        INFO        pydio.grpc.data.index.pydiods1        Warning: no private >
Apr 02 11:34:30 debian11 cells[25764]: 2022-04-02T11:34:30.194Z        INFO        pydio.grpc.data.index.personal        Warning: no private >
Apr 02 11:34:30 debian11 cells[25764]: 2022-04-02T11:34:30.195Z        INFO        pydio.grpc.data.index.cellsdata        Warning: no private>
Apr 02 11:34:30 debian11 cells[25764]: 2022-04-02T11:34:30.204Z        INFO        pydio.grpc.data.index.thumbnails        Warning: no privat>
Apr 02 11:34:30 debian11 cells[25764]: 2022-04-02T11:34:30.212Z        INFO        pydio.grpc.data.index.versions        Warning: no private >
Apr 02 11:34:30 debian11 cells[25764]: 2022-04-02T11:34:30.326Z        INFO        pydio.gateway.proxy        Restarting proxy        {"caddy>

Schlussfolgerung

Herzlichen Glückwunsch! Du hast Pydio Cells unter Debian 11 erfolgreich installiert und konfiguriert. Jetzt kannst du deine Dateien, Dokumente und Bilder über das Pydio-Dashboard hochladen und von jedem Handy oder Webbrowser aus darauf zugreifen. Wenn du noch Fragen hast, kannst du dich gerne an mich wenden.

Das könnte dich auch interessieren …