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:
Bestätige die Lizenzvereinbarung und klicke auf die Schaltfläche WEITER. Du solltest die Seite mit der Datenbankkonfiguration sehen.
Gib deine Datenbankkonfiguration an und klicke auf die Schaltfläche WEITER. Du solltest die Seite zum Anlegen eines Admin-Benutzers sehen:
Gib deinen Admin-Benutzernamen und dein Passwort ein und klicke auf die Schaltfläche WEITER. Du solltest die folgende Seite sehen:
Klicke jetzt auf die Schaltfläche JETZT INSTALLIEREN. Du solltest die Anmeldeseite von Pydio Cells sehen:
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:
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.