/home verschieben mit LVM

/home verschieben mit LVM

Ich habe derzeit Ubuntu 16.04 Server auf einem Rechner mit einer kleinen 96-GB-SSD installiert. Das reicht nicht mehr für alle Benutzer auf dem Server, daher möchte ich eine 1-TB-Festplatte hinzufügen und den /homeOrdner explizit auf eine neue Partition auf diesem 1-TB-Laufwerk verschieben.

Ursprünglich hatte ich geplant, dies mit der Anleitung zu tunHier. Bei genauerer Betrachtung des Systems stellte ich jedoch fest, dass LVM aktiviert ist:

Filesystem                   Size  Used Avail Use% Mounted on
udev                          63G     0   63G   0% /dev
tmpfs                         13G  9.5M   13G   1% /run
/dev/mapper/ubuntu--vg-root   98G   76G   18G  82% /
tmpfs                         63G     0   63G   0% /dev/shm
tmpfs                        5.0M     0  5.0M   0% /run/lock
tmpfs                         63G     0   63G   0% /sys/fs/cgroup
/dev/sda2                    473M  111M  338M  25% /boot
/dev/sda1                    512M  136K  512M   1% /boot/efi
tmpfs                         13G     0   13G   0% /run/user/1001

Basierend auf dem, was ich bisher gelesen habe, muss ich das neue Laufwerk zur ubuntu-vgDatenträgergruppe hinzufügen (wie in den Schritten 2-3 vondiese Antwort). Aber ich bin mir nicht sicher, wie ich danach weitermachen soll - soll ich weitermachen mitSchritte 4-5? Oder gibt es eine andere Möglichkeit, explizit nur /homeauf die 1-TB-Festplatte zu wechseln und /die SSD zu belassen?

Antwort1

Es gibt mehrere Möglichkeiten, das gewünschte Ergebnis zu erzielen, ich würde jedoch folgende Methode empfehlen:

  1. Partitionieren Sie die neue Festplatte. Es kann eine große LVM-Partition sein, oder Sie können eine oder mehrere Nicht-LVM-Partitionen für andere Zwecke reservieren. Ich erstelle manchmal mehrere LVM-Partitionen (auch als physische Volumes oder PVs bezeichnet), damit ich eine oder mehrere davon in Zukunft aus der LVM-Konfiguration entfernen kann, falls dies erforderlich sein sollte. Beachten Sie, dass ichnichtempfehlen, PV-Datenstrukturen ohne Partitionen direkt auf der Festplatte abzulegen, wie in der von Ihnen referenzierten LVM-Antwort gezeigt. Obwohl dies zulässig ist, kann es zu Verwirrung führen, da Festplatten normalerweise partitioniert sind.
  2. Bereiten Sie die PV(s) mit dem pvcreateBefehl wie in für die Verwendung durch LVM vor sudo pvcreate /dev/sdb1.
  3. Fügen Sie die neuen PVs mit zu Ihrer vorhandenen Volume-Gruppe (VG) hinzu vgextend, wie in sudo vgextend ubuntu--vg /dev/sdb1.
  4. Geben Sie ein sudo pvdisplay, um Statistiken zu Ihren PVs, einschließlich ihrer Größen, anzuzeigen.
  5. Erstellen Sie mit ein neues logisches Volume (LV) lvcreate, wie in sudo lvcreate -L 900G -n home ubuntu--vg /dev/sdb1. Beachten Sie, dass ich eine Syntax angegeben habe, mit der Sie eine Größe (über ) und das PV festlegen können, -Lauf dem das LV erstellt wird ( /dev/sdb1).
  6. Geben Sie es sudo pvdisplayerneut ein, um zu überprüfen, ob Sie ein LV mit der richtigen Größe erstellt haben. Wenn nicht, können Sie die Größe mit ändern lvresizeoder es mit löschen lvremoveund es erneut versuchen.
  7. Erstellen Sie ein Dateisystem auf Ihrem LV, wie in sudo mkfs -t ext4 /dev/mapper/ubuntu--vg-home.
  8. Montieren Sie das neue LV an einer geeigneten Stelle, beispielsweise in sudo mount /dev/mapper/ubuntu--vg-home /mnt.
  9. Kopieren Sie Ihr /homeVerzeichnis mit tar, cp, rsyncoder einem anderen Tool Ihrer Wahl.
  10. Bearbeiten /etc/fstab, um das neue LV bei zu mounten /home.
  11. Benennen Sie Ihr aktuelles Verzeichnis /homein einen anderen Namen um (z. B. /home-orig) und erstellen Sie ein neues leeres /homeVerzeichnis, das als Einhängepunkt dient.
  12. Neustart und hoffen, dass es funktioniert.
  13. Wenn alles gut aussieht, löschen Sie das alte /home-origVerzeichnis.

Die Schritte 8-11 sind sehr ähnlich zu den entsprechenden Schritten im Verfahren indie Wiki-Seite, auf die Sie verweisen,deshalb bin ich bei diesen Schritten nicht näher auf die Details eingegangen.

Beachten Sie, dass die Beispielbefehle, die ich gezeigt habe, auf meiner Lektüre der entsprechenden Manpages basieren, obwohl ich so etwas schon oft selbst gemacht habe. Daher kann es sein, dass ich ein Detail übersehen habe. Ich empfehle Ihnen, die Manpages durchzusehen und, falls Sie eine Fehlermeldung erhalten, Anpassungen vorzunehmen, sobald Sie herausgefunden haben, was falsch ist. Außerdem finde ich die standardmäßige LVM-Benennung von Ubuntu verwirrend. Daher kann es sein, dass ich dieses Detail falsch interpretiert habe und Sie es möglicherweise anpassen müssen.

Sobald Sie damit fertig sind, haben Sie ungenutzten Speicherplatz in Ihrem PV auf Ihrer SSD. Sie können Ihr Root- /LV () in diesen Speicherplatz erweitern, das /homeLV erweitern, um beide Festplatten zu umfassen, ein weiteres LV für einen bestimmten Zweck erstellen usw.

Eine Variante dieses Verfahrens könnte darin bestehen, Ihr aktuelles /homeLV dort zu belassen, wo es ist, ein neues LV auf der neuen Festplatte zu erstellen und das neue LV als Überlaufspeicher zu verwenden. Sie stellen fest, dass Ihr Computer ein Mehrbenutzerserver ist, sodass dies umständlich sein könnte, aber es könnte Gründe dafür geben – wenn beispielsweise nur ein oder zwei Benutzer den Löwenanteil des Festplattenspeichers verbrauchen, könnten Sie nur ihre Home-Verzeichnisse auf den neuen Speicherplatz verschieben oder ihnen Verzeichnisse auf dem neuen Speicherplatz zuweisen (mit Einhängepunkten oder symbolischen Links, um den Zugriff zu erleichtern) und sie anweisen, ihre großen Dateien auf den neuen Speicherplatz zu verschieben. Dieser Ansatz hätte den Vorteil, dass er andere Benutzer nicht negativ beeinflusst, da der neue Festplattenspeicherplatz wahrscheinlich merklich langsamer ist als der alte SSD-Speicherplatz.

Antwort2

Das neue Laufwerk kann zum LVM hinzugefügt werden, sodass das System es als ein Laufwerk behandelt, oder Sie können es als zweites Laufwerk hinzufügen. Mit der zweiten Methode kann das neue Laufwerk /home zugewiesen werden.

Fügen Sie zuerst das Laufwerk zum System hinzu und formatieren Sie es dann mit Ihrem bevorzugten Dateisystem. Notieren Sie sich die UUID und verschieben Sie dann alles von /home auf das neue Laufwerk. /home muss leer sein, um das neue Laufwerk dort zu mounten.

Bearbeiten Sie als nächstes Ihre Datei /etc/fstab. Fügen Sie die Zeile hinzu:

UUID=(wie bereits erwähnt) /home (verwendetes Dateisystem) Standardmäßig 0 2

Hinweis: Sie können den Gerätenamen verwenden, aber UUID stellt sicher, dass das richtige Laufwerk gemountet wird, falls sich der Gerätename ändert.

speichern und neu starten.

verwandte Informationen