Anleitung für die Installation eines Calibre Server für die Verwaltung und Bereitstellung von E-Books unter Linux Ubuntu 22.04 und Debian 11

Calibre Server: Einen E-Book-Server auf Linux Ubuntu 22.04 / Debian 11 installieren (Tutorial)

In dieser Anleitung installieren wir einen Calibre Server auf einer aktuellen Linux Distribution (Ubuntu 22.04 / Debian 11). Calibre ist ein E-Book-Manager, der uns eine plattformübergreifende Webanwendung für unsere E-Book-Sammlung zur Verfügung stellt. Nach der Installation auf den eigenen Server können Bibliotheken erstellt werden und beliebig viele Bücher hinzugefügt und verwaltet werden.

Die Software „Calibre“ zählt zu den beliebtesten Serveranwendungen für die Verwaltung von großen E-Book-Sammlungen. Nach der Installation und Erstkonfigurationen können wir auf unsere Bücher-Sammlung über die lokale IP-Adresse oder den eingepflegten Domainnamen zugreifen. Das erfolgt über einen beliebigen Internetbrowser. Calibre wird als Open-Source Software angeboten und ist vollständig kostenlos verwendbar.

Zu erwähnen sind die kostenfreien Applikationen für Smartphones und Tablets. Einmal auf dem Gerät installiert können wir auf die E-Book-Sammlung unseres Servers von überall auf der Welt zugreifen, sofern wir die Ports im Router für den Zugriff über das Internet freigegeben haben.

Die folgenden Formate für E-Books können der Calibre-Bibliothek nach der Installation auf einen Server mit Linux Debian / Ubuntu hinzugefügt werden: PDF, MOBI, CHM, EPUB

Inhaltsverzeichnis: Einen Calibre-Server auf dem eigenen Linux-Host installieren (Anleitung)

Vorbereitungen und Voraussetzungen für die Installation von Calibre auf Linux Ubuntu/Debian nach dieser Anleitung für den eigenen Server

Bedingungen für die Installation auf deinen Server

Die Installation von einem Calibre-Server nach dieser Anleitung setzt ein Paar Bedingungen voraus. Es wird ein Root-Zugang benötigt, eine aktive Internetverbindung und einen vollqualifizierten Domainnamen. Dazu empfiehlt es sich, vor dem Beginn der Installation die Paketquellen zu aktualisieren, damit wir die jeweils neuste Software während des Installationsprozesses beziehen.

Hinweis: Einige Befehle aus diesem Tutorial werden mit dem sudo-Prompt ausgeführt, dieser ist jedoch nur für Linux Ubuntu 22.04 notwendig. Möchtest du den Calibre-Server auf Linux Debian 11 installieren, führe die Befehle einfach ohne sudo aus.

Voraussetzungen:

  • Einen virtuellen oder physischen Server mit Ubuntu 22.04 / Debian 11
  • Serverzugriff mit Root-Rechten
  • Eine aktive Internetverbindung
  • Aktualisierungen wurden auf dem Server durchgeführt

Führe vor Beginn der Installation eine Systemaktualisierung durch:

sudo apt update && sudo apt upgrade

Calibre-Server-Software herunterladen und Abhängigkeiten installieren (Schritt 1.)

Im ersten Schritt installieren wir die notwendigen Abhängigkeiten für den Betrieb von Calibre. Führe dafür den folgenden Befehl aus:

sudo apt install libopengl0 libxkbcommon-x11-0 libegl1 libfontconfig libgl1-mesa-glx

Ist die Installation der Abhängigkeiten abgeschlossen, können wir die neuste Version von Calibre mit dem folgenden Befehl für unseren Server herunterladen:

wget https://download.calibre-ebook.com/linux-installer.sh

Damit das Installationsskript auf dem Calibre-Server ausgeführt werden kann, müssen wir das Skript mit dem folgenden Befehl ausführbar machen:

chmod +x ./linux-installer.sh

Führe jetzt das Skript für die Installation von Calibre unter Linux aus:

sudo ./linux-installer.sh

Hinweis: Warnungen, die während der Installation ausgegeben werden, können in den meisten Fällen ignoriert werden. Diese resultieren daraus, da wir keine grafische Oberfläche auf dem Server haben und der E-Book-Manager Calibre standesgemäß eine Desktopumgebung erwartet.

Auf dem Calibre-Server eine Bibliothek für die Büchersammlung anlegen und eine Anleitung, wie Bücher über die Shell hinzugefügt werden können (Schritt 2.)

So wird eine Bibliothek für die E-Book-Sammlung angelegt unter der Calibre Webanwendung

Als nächstes legen wir eine Bibliothek für den Calibre-Server an. Es können beliebig viele Bibliotheken für E-Books erstellt werden. Ob alle Bücher nach der Installation in ein und derselben Bibliothek Platz finden sollen oder ob du diese nach Genre und Kategorie einsortieren möchtest, bleibt natürlich dir überlassen.

Eine Bibliothek für Calibre anlegen:

mkdir Bibliothek

Alle in diesem Verzeichnis kopierten Dateien werden in das virtuelle Bücherregal aufgelistet. Es existieren verschiedene Möglichkeiten, Bücher zu deiner Calibre-Bibliothek hinzuzufügen. Ob du die E-Book-Formate von einer eingebunden Netzwerkfreigabe in das Verzeichnis kopierst oder das Buch direkt aus dem Internet beziehst. Das kann z.B. mit dem folgenden Befehl erfolgen:

Ein Buch herunterladen (Beispiel):

wget http://www.urldesbuches.de/buchtitel.epub

Das Buch zu deiner Bibliothek hinzufügen:

calibredb add buchtitel.epub --with-library Bibliothek/ Added book ids: 1

Tipp: Um viele Bücher aus deinem Verzeichnis zu deiner Bibliothek gleichzeitig hinzuzufügen, kannst du z.B. den folgenden Befehl verwenden (es werden alle Bücher die im .epub-Format vorliegen, der Bibliothek hinzugefügt):

calibredb add *.epub --with-library Bibliothek/

Wir gehen später noch etwas tiefer in die Materie ein. Da zeige ich dir, welche Möglichkeiten es für die Implementierung von einzelnen E-Books auf deinen Calibre-Server gibt oder wie sich ganze Sammlungen automatisiert in die Bibliothek importieren lassen.

Installation von Calibre unter Linux erfolgreich abgeschlossen: Wie der Server gestartet werden kann (Schritt 3.)

Calibre-Server nach der Installation starten

Um den soeben installierten Calibre-Server mit der angelegten Bibliothek zu starten, kannst du den folgenden Befehl verwenden:

calibre-server Bibliothek

Standesgemäß lauscht die E-Book-Management-Software auf den Port 8080. Begebe dich nun an einem Client im selben lokalen Netzwerk und rufe die Calibre-Webanwendung über einen Browser deiner Wahl auf.

Beispiel-IP-Adresse für den Zugriff auf die Calibre-Weboberfläche:

192.168.178.159:8080

Optionale Firewall Konfigurationen (Schritt 4.)

Konfiguration der Firewall-Einstellungen für die Freigabe der Ports

Dieser Schritt ist optional und hängt davon ab, ob eine Firewall auf euren Linux-Server installiert wurde und welches Betriebssystem auf dem Host läuft. War der Zugriff auf die Weboberfläche im vorherigen Schritt bereits möglich, ist der Server höchstwahrscheinlich nicht durch eine Firewall geschützt.

Solltest du deinen Server für den Zugriff von außen über das Internet freigeben wollen, empfehle ich die Inbetriebnahme einer Firewall, um alle anderen Ports nach außen hin zu schließen. Für Ubuntu können wir die UFW-Firewall verwenden und für Debian empfiehlt sich die Verwendung von iptables.

Calibre-Port für Ubuntu freigeben (UFW-Firewall):

sudo ufw allow 8080

Calibre-Port für Debian freigeben (iptables-Firewall):

iptables -I INPUT 1 -i eth0 -p tcp --dport 8080 -j ACCEPT

Anschließend muss der Dienst für die Firewall einmal neugestartet werden. Damit die Änderung wirksam wird und die beschriebenen Ports für den Zugriff freigegeben sind.

Einen anderen Port für Calibre konfigurieren:

Du musst nicht den Standard-Port „8080“ für Calibre verwenden. Möchtest du einen anderen Port für deinen Calibre-Server verwenden, kannst du den folgenden Befehl verwenden:

calibre-server Bibliothek --port 1337

Eine Konfigurationsdatei für den Calibre-Server erstellen (Schritt 5.)

In diesem Abschnitt legen wir eine Konfigurationsdatei für Calibre an. Diese ist wichtig, damit wir Bücher über die Weboberfläche zu unserer Bibliothek hinzufügen können. Das macht die Bedienung sehr viel komfortabler. Sollte der Calibre-Server noch ausgeführt werden, kannst du diesen mit der folgenden Tastenkombination beenden, damit die Shell wieder für Eingaben freigegeben wird:

Calibre-Server beenden:

STRG + C (Tastenkombination)

Erstelle mit dem Nano-Editor eine Konfigurationsdatei:

sudo nano /etc/systemd/system/calibre-server.service

Kopiere die folgende Konfiguration und füge den Inhalt in die mit dem Nano-Editor geöffnete Datei ein:

[Unit]

Description=Calibre Server

After=network.target

[Service]

Type=simple

User=benutzername

Group=benutzername

ExecStart=/opt/calibre/calibre-server /home/benutzername/Bibliothek --enable-local-write

[Install]

WantedBy=multi-user.target

Hilfestellung für die Anlegung einer Calibre-Konfigurationsdatei:

Ergänze die fettgedruckten Werte innerhalb der Datei mit deinem eigenen Linux-Benutzernamen in der Zeile „User“ mit dem Loginnamen von deinem Linux-Server. Schreibe diesen auch in die Zeile „ExecStart“ hinter dem /home-Verzeichnis, wie in der Beispielkonfiguration angegeben.

Speichere die Änderungen ab (STRG +S) und verlasse den Nano-Editor wieder (STRG + X).

Die Calibre-Server-Konfiguration übernehmen:

sudo systemctl daemon-reload

Starte jetzt den Calibre-Service und füge die Anwendung zur automatischen Systemstart-Routine deines Servers hinzu:

sudo systemctl enable calibre-server

sudo systemctl start calibre-server

Überprüfe nun, ob der Calibre-Server seinen Dienst aufgenommen hat:

sudo systemctl status calibre-server

Benutzer für Calibre verwalten: Die Benutzerauthentifizierung aktivieren (Schritt 6.)

Verwenden mehrere Benutzer denselben Calibre-Server kann es empfohlen sein für jeden Benutzer einen eigenen Account anzulegen. So können auch Authentifikationen hinterlegt werden, welcher Benutzer auf welchen Bibliotheken zugriff erhalten soll. Das geht relativ unkompliziert, da wir hierfür ein vorkonfiguriertes Skript verwenden können.

Einstellungen innerhalb der Benutzerverwaltung (User-Management) funktionieren nur, wenn der Calibre-Server-Dienst nicht läuft. Beende also zuerst den Service:

sudo systemctl stop calibre-server

Die Benutzerverwaltung aufrufen:

sudo calibre-server --manage-users

Wie auf dem Screenshot ersichtlich, stehen uns vier Optionen für die Verwaltung von Calibre-Benutzer zur Verfügung. Erstelle einen neuen Benutzer mit der Taste [1].

Gebe einen Benutzernamen ein:…

Gebe ein neues Passwort für den Benutzer ein:…

Tutorial für die Installation von Calibre unter Debian 11 und Ubuntu 22.04 - Die Benutzerverwaltung

Die Authentifikation am Calibre-Server nur mit einem gültigen Benutzerkonto aktivieren:

Damit nicht jeder X-beliebige Client auf die in der Calibre-Anwendung eingepflegten E-Books zugreifen kann, haben wir soeben einen Benutzer angelegt. Jetzt müssen wir noch aktivieren, dass eine Authentifizierung erforderlich ist, wann immer wir auf die Bibliothek zugreifen möchten.

Verwende den Nano-Editor und konfiguriere die Calibre-Server.service-Datei wie angegeben:

sudo nano /etc/systemd/system/calibre-server.service

Füge am Ende der Zeile „ExecStart=/opt/calibre/calibre-server[…] — enable-local-write den Zusatz „–enable-auth“ hinzu:

Kopiere diese Aufforderung und füge Sie wie beschrieben ans Ende der besagten Zeile ein:

--enable-auth  
Authentifikation aktivieren

Speichere die Änderungen ab (STRG + S) und verlasse den Nano-Editor wieder (STRG + X). Starte den daemon-service einmal neu, damit die Änderung wirksam wird und starte anschließend den calibre-server mit den folgenden Befehlen:

sudo systemctl daemon-reload

sudo systemctl start calibre-server

Ab jetzt ist eine Anmeldung mit dem soeben erstellten Benutzerkonto erforderlich, sobald die Webanwendung „Calibre“ über den Browser aufgerufen wird. Sollten eine Anmeldung über die Weboberfläche nicht möglich sein, rufe wieder die Benutzerverwaltung über die Shell auf und überprüfe die gesetzten Berechtigungen und das für Calibre vergebene Passwort.

Am Calibre-Server als Benutzer anmelden (login)

Den Calibre-Server mit der E-Book-Bibliothek starten:

calibre-server Bibliothek

Bücher zu deiner Calibre-Bibliothek hinzufügen (Schritt 7.)

Es gibt verschiedene Möglichkeiten, Bücher in Form von E-Books zu deiner Bibliothek hinzuzufügen. Die bequemste Variante ist die Hinzufügung von E-Books über die Weboberfläche. Öffne dafür einfach deine Bibliothek und klicke auf das obere Kreuz-Symbol auf der linken Seite im Browser.

Anschließend können entweder einzelne Bücher oder per Drag & Drop mehrere E-Book-Formate gleichzeitig zu deiner Calibre-Bibliothek hinzugefügt werden. 

Eine weitere Möglichkeit wäre die Implementierung von E-Books über die Shell:

calibredb add Meinlieblingsbuch.mobi --with-library Bibliothek/ Added book ids: 1

Möchtest du diese Prozesse automatisieren, empfiehlt es sich z.B. eine Netzwerkfreigabe auf deinem Calibre-Server zu mounten und mittels Cronjob alle dort befindlichen Inhalte in gewissen Zeitabständen automatisch der Bibliothek hinzuzufügen. Diese Variante zeigt ihre Stärken bei einer sehr großen Ansammlung von Büchern. So werden alle in dem Verzeichnis eingefügten E-Books alle 5 Minuten zu deinem Server hinzugefügt.

Dafür erstellen wir ein Verzeichnis für die Ablage von Büchern, die automatisiert in der Bibliothek eingefügt werden sollen:

mkdir calibre-books

Erstelle einen Cronjob:

crontab -e

Klicke die Taste [1] für die Implementierung des neuen Crontabs mit der Verwendung des Nano-Editors.

Kopiere den folgenden Inhalt und füge ihn in die Datei ein:

*/5 * * * * calibredb add /home/<username>/calibre-books/ -r --with-library http://localhost:8080#Bibliothek --username calibreuser --password calibrepasswort && rm -r /home/<username>/calibre-books/*

Hinweise für die Bearbeitung:

Ergänze die fettgedruckten Werte mit deinem Usernamen und dein Passwort für den Zugriff auf den Calibre-Server. Alle 5-Minuten werden alle E-Books in dem Verzeichnis „calibre-books“ zu deiner Bibliothek hinzugefügt. Nach dem erfolgreichen Import werden die originalen Dateien gelöscht.

Speichere die Änderungen ab (STRG + S) und verlasse den Nano-Editor wieder (STRG + X).

Tipp aus der Praxis:

Gebe das Verzeichnis „calibre-books“ für andere Clients im selben Netzwerk frei. So kannst du die E-Books direkt vom Windows- oder Linux-Client in den Ordner kopieren, und der soeben angelegte Crontab übernimmt den Rest.

Einen Calibre-Server installieren: Verwende Nginx für die Erreichbarkeit über einen Domainnamen (Schritt 8.)

Unser installierter Calibre-Server ist aktuell nur über die lokale IP-Adresse erreichbar. Verwenden wir einen VPN-Server können wir ohne weiteres jetzt schon über das Internet auf die in der Bibliothek hinterlegten Bücher zugreifen. Möglich wäre auch die Freigabe des Ports 8080 im Router und die Einpflegung eines kostenlosen DynDNS-Dienstes.

Möchten wir ein SSL-Zertifikat für unseren Calibre-Server verwenden, um den Internetverkehr über HTTPS zu verschlüsseln und eine Erreichbarkeit über eine richtige Domain realisieren, empfiehlt sich die Installation eines Nginx-Webservers. Die neuste Version von Nginx beziehen wir wie folgt.

Importiere den offiziellen GPG-Schlüssel:

curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \ | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

(Nur Ubuntu) Füge das offizielle Nginx-Repository (stable) zu den Paketquellen hinzu:

echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg arch=amd64] \ http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" \ | sudo tee /etc/apt/sources.list.d/nginx.list

(Nur Debian) Füge das offizielle Nginx-Repository (stable) zu den Paketquellen hinzu:

echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg arch=amd64] \ http://nginx.org/packages/debian `lsb_release -cs` nginx" \ | sudo tee /etc/apt/sources.list.d/nginx.list

Aktualisiere die Repositorys:

sudo apt update

Installiere den Webserver Nginx:

sudo apt install nginx

Ein SSL-Zertifikat für den Calibre-Server installieren (Schritt 9.)

SSL Zertifikat für den Server installieren und abschließende Konfigurationen für Calibre in der Nginx-Konfiguration vornehmen

Wir installieren in diesem Abschnitt ein kostenloses SSL-Zertifikat von Let’s Encrypt mit der standalone-Option von Certbot. Dafür installieren wir die notwendigen Abhängigkeiten und beziehen anschließend ein gültiges Zertifikat. Du benötigst eine gültige E-Mail-Adresse für die Registrierung. 

Nach der einmaligen Einrichtung wird das Zertifikat nach Ablauf vollständig automatisiert neu bezogen.

Wir verwenden für die Installation das Snap-Werkzeug:

sudo snap install core

Certbot installieren:

sudo snap install --classic certbot

Ein gültiges SSL-Zertifikat generieren:

sudo ln -s /snap/bin/certbot /usr/bin/certbot

Achtung! Ändere die E-Mail-Adresse und die zu zertifizierende Domain innerhalb dieser Befehlszeile.

Calibre-Konfigurationsdatei mit dem Nano-Editor öffnen:

sudo certbot certonly --standalone --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m deine@mailadresse.de -d deine.domain.de

Generiere ein Zertifikat der Deffie-Hellman-Gruppe:

sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096

Die automatische Erneuerung des SSL-Zertifikats einrichten:

Navigiere in das folgende Verzeichnis und öffne die Konfigurationsdatei für deine Domain (.conf) mit dem Nano-Editor:

cd /etc/letsencrypt/renewal/
sudo nano /etc/letsencrypt/renewal/deine-domain.conf

Füge diese beiden Codezeilen am Ende dieser Datei ein:

pre_hook = systemctl stop nginx
post_hook = systemctl start nginx

Speichere die Änderungen ab (STRG +S) und verlasse den Editor wieder (STRG +X). Dieser Schritt war notwendig, damit der Nginx-Webserver während der Erneuerung des kostenlosen SSL-Zertifikats für unseren Calibre-Server einmal kurz herunter- und wieder hochgefahren wird, da es sonst zu einer Fehlermeldung führt und die Answeisung nicht durchgeführt werden kann.

Überprüfe ob die Einrichtung erfolgreich verlaufen ist:

sudo certbot renew --dry-run

Werden keine Fehlermeldungen vom System ausgegeben ist davon auszugehen, dass die Konfiguration erfolgreich verlaufen ist.

Abschließende Nginx-Konfigurationen für Calibre (Schritt 10.)

Öffne zunächst die Nginx-Konfigurationsdatei mit dem Nano-Editor:

sudo nano /etc/nginx/nginx.conf

Suche die Zeile „/etc/nginx/conf.d/*.conf;“ und füge die angegebene Zeile mit dem Parameter exakt vor dieser Zeile in die Datei ein:

server_names_hash_bucket_size 64;

Speichere die Änderungen ab (STRG +S) und verlasse die Datei wieder (STRG +X).

Die Komplettinstallation unseres Calibre-Servers ist fast abgeschlossen. Abschließend müssen wir nur noch den Nginx-Webserver konfigurieren. Ich habe die Konfiguration schon soweit angepasst, dass du lediglich den Domainnamen austauschen musst. Öffne die Datei mit dem Nano-Editor und kopiere den Inhalt der Konfiguration wie angegeben. Ergänze alle Zeilen mit „deine-domain.de“ durch die Domain über die du deinen eigenen Server erreichen möchtest.

Calibre-Konfigurationsdatei mit dem Nano-Editor öffnen:

sudo nano /etc/nginx/conf.d/calibre.conf

Konfiguration (Code) kopieren und in die Datei einfügen:

server {

listen 443 ssl http2;
listen [::]:443 ssl http2;

http2_push_preload on; # Enable HTTP/2 Server Push

# Enable TLSv1.3's 0-RTT. Use $ssl_early_data when reverse proxying to
# prevent replay attacks.
#
# @see: https://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_early_data
ssl_early_data on;

server_name deine-domain.de;

client_max_body_size 100M;

access_log /var/log/nginx/calibre.access.log;
error_log /var/log/nginx/calibre.error.log;

ssl_certificate /etc/letsencrypt/live/deine-domain.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/deine-domain.de/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/deine-domain.de/chain.pem;

ssl_session_timeout 5m;
ssl_session_cache shared:MozSSL:10m;
ssl_session_tickets off;

ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1;
ssl_stapling on;
ssl_stapling_verify on;
ssl_dhparam /etc/ssl/certs/dhparam.pem;

location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
# enforce HTTPS
server {
listen 80;
listen [::]:80;
server_name deine-domain.de;
return 301 https://$host$request_uri;
}

Sobald die Konfiguration erfolgreich kopiert wurde und du die Domain gegen deine eigene ausgetauscht hast, kannst du die Änderungen speichern (STRG +S) und den Editor wieder schließen (STRG + X).

Führe den folgenden Befehl aus, damit die Änderungen wirksam werden:

sudo nginx -t

Starte den Nginx-Webserver jetzt neu:

sudo systemctl restart nginx

Hat alles funktioniert kannst du deinen Calibre-Server jetzt über den eingepflegten Domainnamen über den Browser aufrufen. Bedenke jedoch, dass die Ports für Webanwendungen (80/443) für die IP-Adresse deines Serverhosts im Router freigegeben werden müssen. Gleiches gilt für die integrierte Firewall.

Verwendest du mehrere Server innerhalb deines Netzwerkes, die über diese Ports erreichbar sein sollen, kommst du über die Installation eines Reverse-Proxy-Servers nicht drum herum. Eine Anleitung wie das Funktioniert findest du auf meinem Blog: Einen Reverse-Proxy mit dem Nginx-Proxy-Manager installieren. Bedenke auch, dass noch ein Eintrag an deinem DNS-Server erfolgen muss. An diesem Schritt ist die Installation von Calibre unter Linux Ubuntu 22.04 und Debian 11 fertig abgeschlossen.

Hat dir dieser Beitrag weitergeholfen?

Über dein Follow auf den sozialen Medien würde ich mich sehr freuen. So erfährst du als erstes von neuen Beiträgen auf meinem Blog und unterstützt mich bei meinem Wachstum. Falls du an einem Schritt dieser Anleitung nicht weiterkommst, verwende die Kommentarfunktion und ich werde dir sobald wie möglich mit Rat und Tat zur Seite stehen. Vielen Dank für deinen Besuch.

Calibre Linux Tutorial für Server

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.