Ich habe einen CentOS 6-Server (der als VM auf XenServer läuft), der von einem früheren Mitarbeiter eingerichtet wurde, und eine der Festplatten hat keine Partitionen. Ich habe die Größe der Festplatte über die XenServer-Schnittstelle erhöht, und die Ausführung von lsblk zeigt die neue Größe an. Allerdings kann ich die Festplatte (mit fdisk) nicht auf die neue Größe erweitern.
$ df -h
Filesystem Size Used Avail Use%
/dev/xvda3 1.6G 479M 1.1G 32%
tmpfs 245M 4.0K 245M 1%
/dev/xvda1 113M 59M 48M 56%
/dev/xvda7 485M 2.7M 457M 1%
/dev/xvda2 2.4G 829M 1.5G 36%
/dev/xvda5 2.4G 1.2G 1.1G 53%
**/dev/xvdb 99G 92G 1.8G 99%**
/dev/xvdc 99G 60M 94G 1%
/dev/xvde4 222G 195G 16G 93%
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE
xvda 202:0 0 8G 0 disk
??xvda1 202:1 0 120M 0 part
??xvda2 202:2 0 2.5G 0 part
??xvda3 202:3 0 1.6G 0 part
??xvda4 202:4 0 1K 0 part
??xvda5 202:5 0 2.5G 0 part
??xvda6 202:6 0 768M 0 part
??xvda7 202:7 0 509M 0 part
**xvdb 202:16 0 300G 0 disk **
xvdc 202:32 0 100G 0 disk
xvde 202:64 0 225G 0 disk
??xvde4 202:68 0 225G 0 part
Ich kenne mich mit einem Linux-System ganz gut aus, bin aber keineswegs ein Experte. Ich konnte keine Antwort auf mein Dilemma finden. Ist es an dieser Stelle überhaupt möglich, die Festplatte zu erweitern? Vielen Dank im Voraus für jede Hilfe!
Antwort1
fdisk erweitert nichtFestplatten,Es befasst sich nur mit Partitionen – und Ihre Festplatte hat keine, es gibt also keinen Grund, fdisk zu verwenden.
Da Sie bereits die gesamte Festplatte erweitert haben (also das Gerät "xvdb", wie von lsblk angezeigt) und es keine weiteren Zwischenebenen gibt, besteht Ihr nächster Schritt darin,das Dateisystem, d. h. erlauben Sie ihm, den verfügbaren Speicherplatz zu belegen. Dies ist, was „df“ anzeigt (die Dateisystemkonfiguration).
fdisk erweitert auch keine Dateisysteme (wennDasist, was Sie mit „Disk“ gemeint haben), es gibt also auch hier keinen Grund, fdisk zu verwenden.
Stattdessen benötigen Sie je nach Dateisystemtypresize2fs
für ext4 oderxfs_growfs
für XFS oder btrfs filesystem resize
oder etwas Ähnliches. (Jedes Dateisystem hat sein eigenes Tool. Die meisten unterstützen die Online-Vergrößerung, bei manchen muss das Dateisystem jedoch zuerst ausgehängt werden.)
Verwenden Sie df -T
oder lsblk -f
um den Dateisystemtyp zu bestimmen.
Antwort2
Mein Vorschlag ist, eine NEUE VIRTUELLE FESTPLATTE hinzuzufügen und sie an einem Ort zu montieren, an dem sie den größten Nutzen bringt. Wie das geht, erfahren Sie, indem Sie im Internet nach „xenserver new virtual disk“ suchen. Ich kenne XenServer nicht, aber sie sind alle gleich. Dies ist ein Linux-Konzept und hat nichts mit Ihrem Virtualisierungshost (XenServer) zu tun.
Sie müssen herausfinden, wo der gesamte Speicherplatz Ihrer Linux-Installation belegt ist. Das wissen Sie wahrscheinlich bereits. Für mein Beispiel hier nehmen wir an, es ist /home.
Melden Sie sich als Root an (auch bekannt als sudo -i).
Mounten Sie zunächst die neue virtuelle Festplatte mit dem Mount-Befehl. Erstellen Sie im Stammverzeichnis einen Ordner namens „home“. Sie können/werden damit
rsync
die Dateien von /home/* nach „home“ auf dem neu gemounteten Laufwerk kopieren. Dadurch sollten die Berechtigungen erhalten bleiben.Benennen Sie Ihr altes /home/ in /oldhome/ um, nur für den Fall, dass etwas schief geht.
Verwenden Sie die fstab-Datei, um Ihr neues Laufwerk als /home/ zu mounten und neu zu starten.
Wenn alles gut aussieht, führen Sie als Root das folgende Kommando aus: rd /s /q /oldhome
Ich bin kein Linux-Gott, aber ich habe diese Methode unzählige Male verwendet, um meinen Speicherplatz in *nix-Betriebssystemen zu erweitern. Wenn jemand Kritik daran hat, wie ich das geschafft habe, helfen Sie mir bitte, einen besseren Beitrag zu verfassen. Ich werde ihn gerne ändern.