SSD in Nextcloud auf dem Raspberry Pi einbinden

8
16063
wir_sind_klein / Pixabay

Wenn der Speicherbedarf der MicroSD eines Raspberry Pi, auf dem eine Nextcloud installiert ist, nicht ausreicht, kann man diesen via Festplatte oder USB-Stick problemlos erweitern.

Folgendes Beispiel zeigt eine Möglichkeit anhand einer neuen vorformatierten SSD und eines Raspberry Pi 3 Modell B.

Festplatte einbinden

Hierzu wird die Festplatte über einen entsprechenden USB-Adapter an den Raspberry Pi angeschlossen und via

ls -l /dev/sd*

identifiziert. Die angeschlossene SSD wird im Beispiel unter /dev/sda vom System ausgemacht. Die Ausgabe sieht dann in etwa so aus:

brw-rw---- 1 root disk 8, 0 Jan 31 07:30 /dev/sda

Im Nachgang partitioniert man die Festplatte mit fdisk.

sudo fdisk /dev/sda

Mit

n

wird “add a new partition” gewählt und mit

p

eine primäre Partition erstellt. Im Normalfall wird hier mit 

1

die Position (1) bestätigt und die Werte mit

w

auf die Festplatte geschrieben.

Das Partitionieren der SSD mit dem Linux-Dateisystem ext4 erledigt man im Anschluss über:

sudo mkfs.ext4 /dev/sda1

Nun wird die Festplatte dauerhaft in das System eingebunden. Dazu erstellt man ein Mountverzeichnis ssd unter /media.

cd /media
sudo mkdir ssd

Mit

sudo mount /dev/sda1 /media/ssd

wird nun die SSD gemountet.

Damit das Ganze auch einen Reboot überlebt, muss z.B. mit blkid die UUID der SSD ermittelt werden.

blkid

Ausgabe:

/dev/sda1: UUID="ccd6f834-9ea0-46cb-8167-518478e8d78d" TYPE="ext4" PARTUUID="187cc1bb-01"

Die /etc/fstab wird im Anschluss um den entsprechenden Eintrag mit der UUID der SSD erweitert.

sudo nano /etc/fstab
UUID=ccd6f834-9ea0-46cb-8167-518478e8d78d /media/ssd ext4 defaults 0 0

Jetzt kann das System zum Testen neu gestartet werden.

sudo reboot

Die Festplatte sollte nun dauerhaft über /media/ssd erreichbar sein.

Im Nachgang beginnt der gefährliche Teil, mit dem Verschieben bzw. kopieren des Datenverzeichnisses der Nextcloud auf die SSD.

An dieser Stelle möchte ich darauf hinweisen, stets ein Backup anzufertigen, falls wirklich mal etwas schief geht!

Um das Datenverzeichnis einzubinden, steigt man in das Installationsverzeichnis der Nextcloud ab

cd /var/www/html/nextcloud

und schaltet mit

sudo -u www-data php occ maintenance:mode --on

den Wartungsmodus ein, um zu verhindern, dass während dieses Vorgangs Daten auf die Nextcloud geschrieben werden.

Datenverzeichnis kopieren

Dann wird das Datenverzeichnis einfach von der MicroSD auf die Festplatte kopiert.

sudo cp -rp /var/www/html/nextcloud/data /media/ssd

Dieses bekommt dann die entsprechenden Rechte.

sudo chown -R www-data:www-data /media/ssd

In der Konfigurationsdatei der Nextcloud wird nun über

sudo nano /var/www/html/nextcloud/config/config.php

der entsprechende Pfad zum Datenverzeichnis wie folgt geändert.

'datadirectory' => '/media/ssd/data',

Nach einem erneuten Neustart des Webservers

sudo service apache2 restart

und dem Abschalten des Wartungsmodus

sudo -u www-data php occ maintenance:mode --off

sollte alles wie gewünscht laufen.

Hinweis

Das alte Datenverzeichnis /var/www/html/nextcloud/data ist noch vorhanden und kann sofern alles funktioniert im Anschluss gelöscht werden.

8 Kommentare

  1. Danke für die Beschreibung. Mir wird allerdings nicht ganz klar was und warum hier kopiert wird. Aufgabe Speicher voll. Was ist mit data gemeint? Die bisherigen Benutzer*innendaten? Dann nur der Inhalt der microsd? Warum nicht auch der Inhalt des bisherigen Speichers? Die Fotos etc.? Oder ist mit data eine Ebene gemeint die die weitere Speicherung/Upload/Download “koordiniert” und dann auf einen anderen Bereich der neuen SSD diese Daten “schreibt”? Es wird auch nicht klar auf welcher Nextcloud-Basis du arbeitest. Welche Version? VM? raspian? oder nextcloudpi? O.K Terminal geht immer. Ist ncp-config bei deiner Nextcloud Konfiguration nicht vorhanden? Auch keine web ui? So geht es jedenfalls einem blutigen Anfänger wie mir.

    • Hallo Thorsten,
      bei einer normalen Installation von Nextcloud auf dem Raspberry Pi liegt das System und die eigentlichen Daten, die man in der Cloud ablegt, auf der SD/MicroSD. So ist man mit Karten von ca. 32GB schnell an der physikalischen Grenze. Man kann nun die MicroSD ersetzen oder das System lt. Anleitung erweitern. Das System verbleibt aber nach wie vor auf der Karte.
      Ich arbeite immer mit der neuesten Nextcloud-Version (in dem Fall war es v18). Diese Anleitung ist aber auch auf ältere Releases 1:1 anwendbar. Natürlich kann man an einem vServer aber auch Homeserver das Datenverzeichnis genauso auslagern.
      ncp-config ist, wie Du schon vermutet hast, bei mir nicht vorhanden. Ob das nachinstalliert werden kann und dann auch noch funktioniert, kann ich nicht sagen. Ich fahre meine Updates lieber manuell und weiß somit was auf dem System geschieht.
      Die Cloud ist über ein Webinterface erreichbar.
      Ich denke, Du solltest dich erst einmal mit den Grundlagen zur Nextcloud beschäftigen. Die Fragen wie etwas dann genau funktioniert, wirst du dann oft schon selbst beantworten können.

      Viel Spaß!

  2. Ich als noob habe jetzt durch den fstab Edit meinen Reboot kaputt gemacht und komme nicht mehr auf die Festplatte.
    Wie kann ich den Edit ohne Backup reparieren?

Kommentieren Sie den Artikel

Bitte bestätige diesen Kommentar!
Bitte den Namen hier eingeben

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.