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 /home
Ordner 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-vg
Datenträ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 /home
auf 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:
- 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.
- Bereiten Sie die PV(s) mit dem
pvcreate
Befehl wie in für die Verwendung durch LVM vorsudo pvcreate /dev/sdb1
. - Fügen Sie die neuen PVs mit zu Ihrer vorhandenen Volume-Gruppe (VG) hinzu
vgextend
, wie insudo vgextend ubuntu--vg /dev/sdb1
. - Geben Sie ein
sudo pvdisplay
, um Statistiken zu Ihren PVs, einschließlich ihrer Größen, anzuzeigen. - Erstellen Sie mit ein neues logisches Volume (LV)
lvcreate
, wie insudo 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,-L
auf dem das LV erstellt wird (/dev/sdb1
). - Geben Sie es
sudo pvdisplay
erneut 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 ändernlvresize
oder es mit löschenlvremove
und es erneut versuchen. - Erstellen Sie ein Dateisystem auf Ihrem LV, wie in
sudo mkfs -t ext4 /dev/mapper/ubuntu--vg-home
. - Montieren Sie das neue LV an einer geeigneten Stelle, beispielsweise in
sudo mount /dev/mapper/ubuntu--vg-home /mnt
. - Kopieren Sie Ihr
/home
Verzeichnis mittar
,cp
,rsync
oder einem anderen Tool Ihrer Wahl. - Bearbeiten
/etc/fstab
, um das neue LV bei zu mounten/home
. - Benennen Sie Ihr aktuelles Verzeichnis
/home
in einen anderen Namen um (z. B./home-orig
) und erstellen Sie ein neues leeres/home
Verzeichnis, das als Einhängepunkt dient. - Neustart und hoffen, dass es funktioniert.
- Wenn alles gut aussieht, löschen Sie das alte
/home-orig
Verzeichnis.
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 /home
LV 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 /home
LV 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.