====== Meine eigene Cloud ====== ===== Nextcloud@Strato (Jan. 2021)===== ==== MySQL Backup ==== SCRIPT folgt noch ;-) ==== Update Script ==== OLDVERSION="20.0.14" cd ~ mkdir -p Archiv/$OLDVERSION cp -r dokuwiki/nextcloud/config/Archiv/$OLDVERSION/ cp -r nextcloud_data/ Archiv/$OLDVERSION/ ==== Installation ==== WICHTIG: Als erstes die MySQL Datenbank sichern! ssh strato # wechsel ins Basisverzeichnis cd ~ # temp-Verzeichnis anlegen mkdir tmp # Konfiguration und php.ini sichern cp nextcloud/config/config.php ~/tmp/ cp nextcloud/php.ini ~/tmp/ # alte Nextcloud Instanz umbenennen mv nextcloud nextcloud_old # neue Version holen und entpacken cd ~/tmp wget https://download.nextcloud.com/server/releases/nextcloud-20.0.5.tar.bz2 bunzip2 nextcloud-20.0.5.tar.bz2 tar xf nextcloud-20.0.5.tar # neue Version an alte stelle verschieben mv nextcloud ~/ # Konfiguration und php.ini wieder herstellen cp ~/tmp/php.ini ~/nextcloud cp ~/tmp/config.php ~/nextcloud/config/ Browser starten, Nextcloud Webseite öffenen und Update starten\\ ggf. den Maintenance Mode in "config.php" deaktivieren: ''maintenance' => false''\\ Fehler der Form ''occ db:add-missing-primary-keys'' können in einer Art Konsole, der App ''occweb'' behoben werden. Dort ist direkt die Verwendung von ''occ'' möglich.\\ \\ ==== OCC Kommando in APP (via Browser) ohne Rückfrage ausführen ==== z.B: ''--no-interaction'' anhängen occ: db:convert-filecache-bigint --no-interaction ==== Fehlers ''Enable HTTP Strict Transport Security'' beheben ==== Zeile ''Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"'' einfügen\\ Siehe [[https://docs.nextcloud.com/server/20/admin_manual/installation/harden_server.html|Nextcloud Hardening and security guidance]] mcedit nextcloud/.htaccess SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1 RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION SetEnvIfNoCase Authorization "(.+)" HTTP_AUTHORIZATION=$1 Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains" ... ===== Nextcloud zu Fuß auf einem Shared Hosting System (aka. Strato Webhosting) - Anno 2019 ===== ==== Installation ==== * aktuelles Version von Nextcloud von [[http://www.nextcloud.com|www.nextcloud.com]] herunterladen wget https://download.nextcloud.com/server/releases/nextcloud-13.0.0.tar.bz2 * entpacken tar xfj nextcloud-13.0.0.tar.bz2 * entpackten Ordner per FTP in das Web-Root Verzeichnis hochladen * Datenverzeichnis parallel zum Nextcloud Verzeichnis anlegen um Benutzerdaten und Nextcloud Installation voneinander zu trennen * ''/tmp'' Verzeichnis innerhalb des Nextcloud-Verzeichnisses anlegen * URL des Web-Root Verzeichnis in Browser aufrufen und die neue Nextcloud Instanz mit den richtigen Parametern für das Datenverzeichnis, den Benutzernamen und das Passwort des Administrators sowie den Datenbankparametern konfigurieren * In der Datei ''/nextcloud/config/config.php'' den Pfad zum Datenverzeichnis anpassen und den Pfad zum ''/tmp'' Verzeichnis ergänzen 'tempdirectory' => '/.../.../.../htdocs/.../nextcloud/tmp', * ''php.ini'' unterhalb von /nextcloud mit folgendem Inhalt anlegen: memory_limit=512M upload_max_filesize = 200M opcache.enable=1 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=10000 opcache.memory_consumption=128 opcache.save_comments=1 opcache.revalidate_freq=1 * fertig! ===== ownCloud ===== Als Basis für meine eigene Cloud dient mir ein Webspace Abgebot von Strato - Web-Visitenkarte S PowerWeb Basic ==== Installation ==== * aktuelles Version von ownCloud von [[www.owncloud.org|www.owncloud.org]] herunterladen wget https://download.owncloud.org/community/owncloud-9.1.3.tar.bz2 * entpacken tar xfj owncloud-9.1.3.tar.bz2 * entpackten Ordner per FTP in das Web-Root Verzeichnis hochladen * URL des Web-Root Verzeichnis in Browser aufrufen und die neue ownCloud Instanz mit den richtigen Parametern für das Datenverzeichnis, den Benutzernamen und das Passwort des Administrators sowie den Datenbankparametern konfigurieren - fertig! === PHP-Einstellungen für ownCloud (Strato.de) === Für einen reibungslosen Betrieb der eigenen ownCloud Instanz auf einem Strato-Account/-Domain werden folgende Parameter in der php.ini im Root-Verzeichnis Ihrer ownCloud-Installation empfohlen: default_charset = utf-8 file_uploads = On max_execution_time = 600 safe_mode = Off post_max_size = 650M upload_max_filesize = 500M max_file_uploads = 20 register_globals = Off === Wartung und Update/Upgrade === Für ein Backup der ownCloud Instanz sind folgende Dateien und Verzeichnisse wichtig: * das ''/owncloud/config/'' Verzeichnis - es enthält alle wichtigen Konfigurationsparameter * das ''/owncloud_data/'' Verzeichnis - hier sind unsere hochgeladenen Daten abgelegt * die ownCloud Datenbank - in Form eines Datenbank-Exports mittels ''phpMyAdmin'' über das "Control Center" -> MySQL-Datenbank -> "dbxxxxxxxxx" -> "Export" ==== Update / Upgrade ==== Vor jeder Art von Arbeiten an der ownCloud Installation z.B. beim Einspielen von Updates oder beim Upgrade auf eine höhere Release Version **muss** immer zuerst der sog. ''Maintenance Mode'' in der Konfigurationsdatei ''/config/config.php'' durch ändern der Variable '' 'maintenance' => false'' zu '' 'maintenance' => true'' eingeschaltet werden.\\ Die Datei ''/config/config.php'' kann dazu per FTP heruntergeladen, mit einem gewöhnlichen Texteditor geändert und wieder hochgeladen werden. Nach einem Neuladen der ownCloud Webseite ([[https://www.von-thuelen.de/owncloud/index.php/login|https://www.von-thuelen.de/owncloud/index.php/login]] wird folgende Meldung ausgegeben:\\ This ownCloud instance is currently in maintenance mode, which may take a while. This page will refresh itself when the ownCloud instance is available again. Contact your system administrator if this message persists or appeared unexpectedly. Thank you for your patience. \\ Anschließend kann z.B. ein Update nach folgender Anleitung durchgeführt werden: [[https://doc.owncloud.org/server/8.2/admin_manual/maintenance/manual_upgrade.html|https://doc.owncloud.org/server/8.2/admin_manual/maintenance/manual_upgrade.html]]. * neue ownCloud Version von [[https://owncloud.org/install/|https://owncloud.org/install/]] herunterladen * entpacken: ''tar -xjf owncloud-x.y.z.tar.bz2'' * ownCloud Verzeichnis (''/owncloud'') auf dem Server in ''owncloud_x_y_z'' (x_y_z = alte Version) umbenennen * neue Version in das Verzeichnis ''owncloud/'' auf dem Server kopieren (Kopieren dauert etwas, >10.000 Dateien ;-)) * Konfiguration nach ''/owncloud/config/'' zurück kopieren Im Anschluss kann der "Maintenancs Mode" wieder aufgehoben werden. Die Durchführung des Updates bzw. Upgrades muss noch auf der ownCloud Startseite durch klicken auf "Start" angestoßen werden. === Kalender Backup & Export === Mit dem Zusatz ''?export'' hinter dem jeweiligen Link zum Kalender und den Kontakten kann man jeweils alle Daten (alle Kontakte oder Kalendereinträge) als kompakte Dateien herunter laden. Die URL für die Kontakte seht dann beispielsweise so aus:\\ ****/owncloud/remote.php/carddav/addressbooks/****/contacts/**?export**\\ oder für den Kalender:\\ ****/owncloud/remote.php/caldav/calendars/****/****/**?export** === Note App (ownCloud 7.x) === Quelle: [[https://github.com/owncloud/notes|https://github.com/owncloud/notes]] git clone https://github.com/owncloud/notes.git Unterverzeichnis ''notes'' per FTP nach ''/owncloud/apps/'' übertragen\\ Als Admin auf der ownCloud Seite anmelden und über Administration -> Apps -> +Apps -> Notes aktivieren === Note App (ownCloud 9.x) === Quelle: [[https://github.com/Fmstrat/ownnote|https://github.com/Fmstrat/ownnote]] git clone https://github.com/Fmstrat/ownnote.git Unterverzeichnis ''ownnote'' per FTP nach ''/owncloud/apps/ownnote'' übertragen\\ Als Admin auf der ownCloud Seite anmelden und über Administration -> Apps -> +Apps -> OwnNote aktivieren\\