Linux: /var auf eine andere Partition verschieben
Im Folgenden wollen wir an einem Beispiel das Verzeichnis /var
auf einen
neuen Mount-Punkt (eine neue Festplatten-Partition) verschieben. Dabei kommt es
nicht darauf an, ob /var
im Vorfeld bereits auf einem eigenen Mount-Punkt war
oder ob es unter dem Mount-Punkt /
besteht.
Als Voraussetzung sehe ich eine bereits mit gparted
erstellte Partition, die
man verwenden will (hier im Beispiel /dev/sdb1
). Dies wird im Laufe der
Schritte manuell eingehängt.
Vorab besorgen wir uns die UUID der Festplatten-Partition, die wir verwenden wollen:
blkid | grep sdb1
Die Ausgabe sieht in etwa wie folgt aus:
/dev/sdb1: UUID="f3bdcbdc-4db9-6fe8-3f63-8bb80231a639" TYPE="ext4" PARTUUID="XXXXXXXX-XX"
Die UUID können wir schon mal in die Zwischenablage kopieren. Anschließend hängen wir die Partition vorab auf einem Temporären Mount-Punkt ein:
sudo mkdir /mnt/tmp
sudo mount /dev/sdb1 /mnt/tmp
Vorerst prüfen wir, dass die Festplatte wie gewünscht eingehängt wurde:
sudo df -h /mnt/tmp
Die Ausgabe sollte in etwa wie folgt aussehen:
Filesystem Size Used Avail Use% Mounted on
/dev/sdb1 2T 0 2T 0% /mnt/tmp
Als nächstes müssen wir den Inhalt des var
Verzeichnisses auf die neue Platte kopieren:
sudo rsync -aqxP /var/* /mnt/tmp
Als nächstes ändern/ergänzen wir die /etc/fstab
um einen passenden Eintrag:
sudo vi /etc/fstab
UUID=f3bdcbdc-4db9-6fe8-3f63-8bb80231a639 /var ext4 defaults 0 2
War /var
im Vorfeld bereits auf einer Partition, muss man den vorigen Eintrag
für /var
angleichen. Andernfalls kann man die Zeile einfach übernehmen und
nur die eigene UUID aus Schritt 1 einsetzen. Sollte nicht ext4
genutzt gewesen
sein, muss man natürlich auch das abändern.
Nach dem Speichern der Datei fehlt nur noch ein reboot:
sudo reboot now
Kommt vor dem Reboot was dazwischen muss man den Command
sudo rsync -aqxP /var/* /mnt/tmp
erneut ausführen um sicherzustellen, dass
alle Dateien auf dem aktuellen Stand sind!