… für Nextcloud
Ein weiterer Beitrag aus der Rubrik „Notizen über Computerkram für mich selbst“.
Raspberrypios kommt aktuell von Haus aus noch mit PHP 7. PHP lässt sich mit einer externen Paketquelle auf 8.0 bringen. Nextcloud wird für die kommende Version aber PHP 8.1 und ein 64-Bit-Betriebssystem brauchen. Daher sollte Ubuntu 22.04 LTS 64 Bit auf einen Raspi 3 kommen.
Der Pi-Imager kann direkt Einstellungen wie Benutzername, SSH-Public Key, WLAN-Kennung und Passwort usw. übertragen und tut dies mit cloud-init. Dies kann später zu Überraschungen führen, da Änderungen in Ubuntu, die an den sonst üblichen Stellen vorgenommen werden, beim nächsten Start von cloud-init wieder zurückgesetzt werden. Dies war der erst Punkt, der mich Nerven gekostet hat. Da cloud-init meiner Auffassung nach wenn die Ersteinrichtung erledigt ist an sich nicht mehr gebraucht wird, habe ich mich entschieden, cloud-init zu entfernen.
sudo apt remove cloud-init
Der zweite Punkt, der mich Nerven gekostet hat, war, dass aus welchen Gründen auch immer der Raspi nun so konfiguriert war, dass er zwar die WLAN-Zugangsdaten über cloud-init vom Imager vorher korrekt bekommen hat, aber die LAN-Buchse nicht aktiv ist!
Das Netzwerk kann über netplan konfiguriert werden, cloud-init hinterlässt die Datei /etc/netplan/50-cloud-init.yaml
für die Konfiguration von netplan, die auch die WLAN-Daten enthält, allerdings keinen Eintrag für die LAN-Buchse.
Über den NetworkManager geht das ganze sorgenfrei, allerdings ist der erst Mal nicht installiert. Also:
sudo apt install network-manager
Jetzt erst mal nen gescheiten Editor installieren:
sudo apt install emacs
Dann in der Datei /etc/netplan/50-cloud-init.yaml
nach network:
und vor wifis:
die Zeile
renderer: NetworkManager
einfügen und weiter unten renderer: networkd
auskommentieren oder löschen.
sudo emacs /etc/netplan/50-cloud-init.yaml
Noch eine kleine Aufzählung von Paketen, die ich für Nextcloud auf Apache sowie für Dateiverschlüsselung und für Let’s Encrypt installieren musste:
sudo apt install mariadb-server apache2 php sudo apt install php-mysql php-xml php-zip php-mbstring sudo apt install php-curl php-gd php-imagick sudo apt install php-gmp php-bcmath php-intl sudo apt install cryptsetup sudo apt install ecryptfs-utils sudo apt install certbot sudo apt install python3-certbot-apache
Und nun noch das Zertifikat holen:
sudo certbot --apache
Nun sollte alles bereit sein. Nextcloud installiere ich nicht über eine Paketquelle sondern kopiere es in /var/www/html/nextcloud/
Den Owner stelle ich auf…
sudo chown -R www-data:www-data /var/www/html
Sofern das Nextcloud-Datenverzeichnis woanders liegt muss das dem selben User gehören.