Benutzer-Werkzeuge

Webseiten-Werkzeuge


open:it:nextcloud

Nextcloud

Installation

Installation auf eigenem Server.
Minimal-Variante: Daten, Kalender, Kontakte.

  • Installationsdatei downloaden
  • Per SFTP auf Server übertragen (Ordner www-Seiten Nextcloud)
  • Datenbank einrichten (z.B. MariaDB) - Zugangsdaten bereithalten (Host, DB-Name, DB-User, Passwort)
  • Im Browser: Domain gefolgt von /setup-nextcloud.php aufrufen (PHP muss installiert sein).
  • Apps → nicht die bei der Installation angebotenen Standard-Apps (dort abbrechen)
  • gewünschte Apps manuell zur Installation auswählen, z.B.
    • Contacts
    • Calendar
  • Gruppen und User anlegen
  • Sprache der einzelnen User (nur für Web-Oberfläche interessant / jeweils einloggen)
sudo nano /etc/crontab
*/5 * * * *     www-data php -f /var/www/nextcloud/cron.php

Pfad anpassen!!

Hintergrundaufgaben über Cronjob einrichten
Administratoreinstellungen → Grundeinstellungen → Cron )Empfohlen) auswählen

Konfiguration

sudo nano config/config.php

Datenpfad.

'datadirectory' => '/var/www/data/bluegnu.de_cloud',

Sicherheit: Hier liegt der Pfad außerhalb des Webseitenbereichs, wordurch dieser nur über Serverscripte oder SSH-Zugriffe erreichbar ist.
Region

'default_phone_region' => 'DE',

Zeitfenster für Hintergrund-Wartungen begrenzen (ab Uhrzeit max 4 h)

'maintenance_window_start' => 3,

zusätzliche PHP-Module installieren (je nach Version)

sudo apt install php8.2-gmp php8.2-bcmath php8.2-imagick php8.2-intl php8.2-apcu

Optimierungen

Abarbeitung entsprechend Infos auf Nextcloud-Adminseite.
Es müssen ggf. PHP- und/oder Apache-Module nachinstalliert werden oder Anpassungen in der PHP.INI erfolgen - die für die Seite zuständige. Welche genutzt wird, hängt von den Einstellungen im Webserver ab.
Bei Apache und der in diesem System genutzten Variante mit fpm, siehe Apache Web-Server, befindet sie sich - für die Version 8.2 - hier:

sudo nano /etc/php/8.2/fpm/php.ini

zum Beispiel memory_limit erhöhen

memory_limit = 512M

Datenbank-Indexe aufräumen - als root auf Konsole ausführen - im Verzeichnis der Webseite

sudo -u www-data php occ db:add-missing-indices

Anpassungen in der Domain-Config (in der Version für Lets-Encrypt)

sudo nano /etc/apache2/sites-available/bluegnu.de_cloud-le-ssl.conf 

Abschnitt der Cloud

<IfModule mod_headers.c>  
  Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"  
</IfModule>

dafür erforderlich Installation der Apache-Erweiterung mod_headers

sudo a2enmod headers

Zum Ende Apache und PHP neu starten/laden

sudo systemctl reload php8.2-fpm.service
sudo systemctl restart apache2

Update-Probleme

Infos zum OCC-Kommando

Sollte das Update nicht bis zum Ende durchlaufen, hilft dieser Befehl - ausgeführt auf der Shell im Mainverzeichnis der HTML-Dateien.

sudo -u www-data php occ upgrade

-u www-data = Im Namen von User www-data1) ausführen
php OCC = das PHP-Script OCC ausführen
upgrade = Parameter für das PHP-Script

Papierkorb

Ein sehr voller Papierkorb kann zu erheblichen Performance-Problemen führen.
Dateien, die durch eine Client-Sync-Nutzung, z.B. auf einem Windows-System, verschoben werden, landen zusätzlich im Papierkorb. Werden so große Veränderungen an der Struktur vorgenommen, kann der Papierkorb extrem voll werden.
Es empfiehlt sich diesen regelmäßg zu leeren - z.B. über das Frontend auf der Webseite.

Daten Synchronisation

Thunderbird Kalender- und Kontakte

Add-ons installieren:

  • TbSync
  • Provider für CalDAV & CardDAV

TbSync starten und Login-Daten einpflegen.
Zu synchronisierende Elemente auswählen.

Es gab eine Problem mit der Netzwerk-Synchronisation der Kalender, da Termine jeweils (laut Meldung) kurz zuvor geändert wurden.
Lösung: TbSync bietet je Konto drei Reiter (Synchronisationsstatus, Kontoeinstellungen und Optionen).
Unter Optionen das Feld „Offline-Unterstützung“ deaktivieren.
Sollte das nicht bearbeitbar sein: im Reiter Synchronisationsstatus, das Konto deaktivieren, dann die Offline-Unterstützung auch deaktivieren, anschließend das Konto wieder aktivieren.

Windows Daten

Desktop-Software downloaden und installieren.

Während der Kontoeinrichtung wird man auf die Internetseite der Cloud-Installation geleitet - dort muss man den Daten-Zugriff für das Gerät freigeben.

Android Fotos

Hierfür wird die Nextcloud-App auf dem Smartphone benötigt.

Einstellungen → Automatisches Hochladen → Konfigurationsseite öffnet sich

Lokaler Ordner → Ordner, in dem das Smatphone die Fotos speichert.
Typisch / Beispiel: Hauptspeicher → DCIM → Camera
Remote-Ordner → Ordner auf dem Nextcloud-Server, in den die Fotos geladen werden sollen.
Zugriffe entsprechend benötigter Vorgaben einstellen.

Ressourcen anlegen

Installation der App calendar_resource_management in der Nextcloud-Instanz.

Einrichtung aktuell2) nur über die Shell, nicht übers Frontend.
Terminkoordination von:

  • Räumen
  • Fahrzeugen
  • Ressourcen

Die benannten Räume oder Ressoucen sollten nach folgenden Eingaben im Kalender auf dem Frontend zur Verfügung stehen.

Beispiele (Befehle jeweils auf der Shell im Hauptverzeichnis der Cloud abgeben)
Details siehe: Calendar Resource Management

Adresse anlegen (erforderlich für Etage)

sudo -u www-data php occ calendar-resource:building:create --address="Domstr. 1, 50000 Cologne, Germany" "Office Cologne"

Etage anlegen (erforderlich für Raum)

sudo -u www-data php occ calendar-resource:story:create 1 "5. Floor"

Raum anlegen (Angabe der E-Mail ist Pflicht, kann aber eine Fake-E-Mail sein)

sudo -u www-data php occ calendar-resource:room:create 1 "myhomeoffice" "koeln_home_office" "homeoffice.koeln@bluegnu.de" "home office"

Allgemeine Ressource anlegen

sudo -u www-data php occ calendar-resource:resource:create "projetor1" 1 "Projektor 1" "projektor1.homeoffice.koeln@kspi.de" "Projektor"

Ressourcen anzeigen

sudo -u www-data php occ calendar-resource:resources:list

Raum löschen

sudo -u www-data php occ calendar-resource:resource:delete "room" 1

Nutzung über die Kalender-App:
Möglicherweise muss der erste Buchstabe der Ressource (display-name) bei Anlage eines Termins angegeben werden, um diesen zu finden. Ohne Eingabe bleibt die Auswahl möglicherweise komplett leer.

1)
User für Apache-Webbrowser
2)
August 2024
open/it/nextcloud.txt · Zuletzt geändert: 2024/10/08 20:03 von Kai