====== 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.\\
\\
==== OOC Kommando per CLI (SSH) ausführen ====
Quelle: [[https://schneidr.de/2021/09/php-auf-der-kommandozeile-bei-strato/|https://schneidr.de/2021/09/php-auf-der-kommandozeile-bei-strato/]]
ssh strato
cd
# fehlende Tabelleneinträge korrigieren:
#/opt/RZphp80/bin/php-cli path/to/nextcloud/occ db:add-missing-indices
/opt/RZphp82/bin/php-cli path/to/nextcloud/occ db:add-missing-indices
==== OCC Kommando in APP (via Browser) ohne Rückfrage ausführen ====
occweb wird aktuell nicht gepflegt.\\
Siehe [[https://github.com/Adphi/occweb|Meldung auf GitHub]]
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"
...