Wenn Sie Ihr aktuelles Layout angegeben haben (die Ausgabe von reicht aus fdisk -l
, wenn Sie kein LVM verwenden, die Ausgabe von " fdisk -l
", " pvdisplay -C
", " vgdisplay -C
" und " lvdisplay -C
", wenn Sie LVM verwenden) und das Laufwerk / die Partition, die Sie erweitern möchten, Wir könnten eine genauere Antwort geben.
Angenommen, mit "Nicht-Root-Volume-Laufwerk" ist ein Laufwerk mit einer einzelnen Partition gemeint, das das Volume enthält, das Sie auf eine neue Festplatte erweitern möchten. Die alte Festplatte wird als SDB (und die Partition darauf SDB1) angezeigt, die vorhandene Partition ist ein ext2- oder ext3-Dateisystem, in dem sich die neue Festplatte befindet und als einzelnes Volume (z. B. sdc1) partitioniert ist und das Sie vollständig auf die neue Festplatte verschieben möchten, um die alte zu entfernen. Folgendes funktioniert:
- Sichern Sie die Daten für alle Fälle
- Beenden Sie alle Dienste und anderen Prozesse, die auf das Volume / dev / sdb1 zugreifen
- umount es
dd if=/dev/sdb1 of=/dev/sdc1
fsck /dev/sdc1 -C 0
resize2fs /dev/sdc1 -p
- Passen Sie alle Zeiger auf das alte Gerät (dh in / etc / fstab) auf das neue an
- Dienste erneut einbinden und neu starten
- Entfernen Sie das alte Laufwerk beim nächsten Ausschalten der Maschine. Möglicherweise möchten Sie es eine Weile als Notfallsicherung aufbewahren, falls sich herausstellt, dass das neue Laufwerk ein Blindgänger ist
Bearbeiten: "-C 0" auf fsck und "-p" auf resize2fs weisen die jeweiligen Dienstprogramme an, Fortschrittsinformationen auszugeben, während sie ihre Arbeit erledigen. Der Größenänderungsvorgang sollte ziemlich schnell sein (normalerweise dauert es nur sehr lange, wenn ein Volume kleiner wird, da in diesem Fall mehr Daten verschoben werden müssen). Wenn Sie pv installiert haben, können Sie in Schritt 3 auch Fortschrittsinformationen erhalten, indem Sie den Aufruf von dd durch "pv / dev / sdb1> / dev / sdc1" ersetzen.
edit 2: Dies ist eine gute Option für ziemlich vollständige Volumes, da sie zunächst Block für Block kopiert werden und daher keine Laufwerksköpfe um die Dateisystemstrukturen kümmern müssen (so dass das Kopieren so schnell wie das langsamere von "the" erfolgt Geschwindigkeit, mit der das alte Laufwerk Massenlesen kann "und" die Geschwindigkeit, mit der das neue Laufwerk Massenlesen kann ") und es gibt keine Verwechslungen mit festen Verbindungen, Geräteknoten oder anderen speziellen Elementen im Dateisystem - für Volumes, die es sind Ziemlich leer finden Sie eine der cp / cpio-basierten Methoden viel schneller, da nicht alle leeren Blöcke von Festplatte zu Festplatte kopiert werden
Ich war schon immer an cpio interessiert:
cd /src; find . -print | cpio -dpum /dst
quelle
Wenn es nicht das Stammverzeichnis ist und das Laufwerk (
/usr/sbin/lsof | grep '/path/to/mount/point
) nicht verwendet wird, sollten Sie nicht im Einzelbenutzermodus booten müssen.Ich würde es tun
cp -a
, wenn es nicht LVM ist. Aber wie ich mich erinnere, benötigt Ubuntu (zumindest Version 9) die alternative Installations-CD. Ich weiß nichts über andere Versionen.quelle
Wenn Sie lvm haben, können Sie dies im laufenden Betrieb tun, ohne Dienste neu zu starten oder zu stoppen. Wenn Ihr System das Hot-Plug-In der Laufwerke unterstützt, können Sie die Laufwerke auch ersetzen. - Partitionieren Sie die neue Festplatte - pvcreate die neue Partition - pvcreate new_disk - Erweitern Sie Ihre Volume-Gruppe auf die neue Partition vgextend datavg new_disk - pvmove old_disk new_disk
quelle