GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie bekomme ich Centos VM dazu, seine erhöhte Festplattengröße OHNE Neustart erneut zu lesen?

Lösung 1:

Sie müssen den Rescan-Befehl an Ihren SCSI-Bus senden.

In VMware befindet sich der SCSI-Controller möglicherweise an einer ungewöhnlichen Stelle. Zuerst finden:

find /sys -iname 'scan'

Für mich kam das zurück

/sys/devices/pci0000:00/0000:00:07.1/host0/scsi_host/host0/scan
/sys/devices/pci0000:00/0000:00:07.1/host1/scsi_host/host1/scan
/sys/devices/pci0000:00/0000:00:10.0/host2/scsi_host/host2/scan

Geben Sie dann einfach den Rescan-Befehl aus

echo "- - -" >/sys/devices/pci0000:00/0000:00:07.1/host0/scsi_host/host0/scan
echo "- - -" >/sys/devices/pci0000:00/0000:00:07.1/host0/scsi_host/host1/scan
echo "- - -" >/sys/devices/pci0000:00/0000:00:10.0/host0/scsi_host/host2/scan

Das sollte Hilfe. :)

Lösung 2:

Ich hatte ein ähnliches Problem auf einem SLES 11-Server. Das LVM wurde mit Raw-Festplatten erstellt und auf VMWare ESXi ausgeführt

# pvcreate /dev/sdd; vgextend ....

Nach einer Weile musste ich die LVM-Größe erhöhen, aber ich fügte keine zusätzliche Festplatte hinzu und pvcreate + vgextend wie zuvor, sondern ich entschied mich dafür, die Größe einer vorhandenen Festplatte zu erhöhen (in diesem Fall /dev/sdd ). Nachdem ich die Erhöhung in VMWare durchgeführt habe, habe ich eine

ausgeführt
# rescan-scsi-bus.sh

Aber pvdisplay zeigte immer noch die 'alte' Festplattengröße an. Es war notwendig, ein

zu tun
# echo 1 > /sys/block/sdd/device/rescan

damit der Kernel die neue Plattengröße von /dev/sdd

lernt

Lösung 3:

nach dem ersten Ausführen von echo 1 > /sys/block/sda/device/rescan

pvresize /dev/sda hat den Trick für mich getan

Lösung 4:

Wenn die Partitionstabelle direkt verwendet wird (z. B. Sie haben das Dateisystem mit einer Basispartition gemountet), verwendet der Kernel weiterhin die alte Partitionstabelle, bis dies nicht mehr der Fall ist. Jemand hat mir einmal gesagt, dass Sie dies umgehen können, wenn Sie LVM verwenden....

Lösung 5:

Aktualisierung: Centos 6 - es ist nicht möglich, die Partitionstabelle der aktiven Festplatte online zu aktualisieren, Centos 7 - es ist möglich, die letzte Partition mit Growpart zu erweitern oder neue Partition mit fdisk erstellen und ohne Neustart mit partprobe sichtbar machen . Wahrscheinlich dasselbe auf Ubuntu/Debian. - Irgendwann nachdem Kernel 2.6 damit begonnen hat, das Online-Neulesen der Partitionstabelle der aktiven Festplatte zu unterstützen. Da die Frage für Centos 5 ist, würde ich nein sagen.

Wenn Sie Partitionen verwenden, müssen Sie neu starten, um neuen Speicherplatz zu verwenden. Ich habe keine Möglichkeit gefunden, dies zu vermeiden. Wenn mir jemand Bescheid gegeben hat.

Der Neustart sollte jedoch durchgeführt werden, nachdem Sie die letzte Partition auf der Festplatte erweitert oder eine neue Partition hinzugefügt haben. Es macht keinen Sinn, vorher neu zu starten.

Das erste, was Sie nach dem erneuten Scannen bemerken sollten, ist eine größere Festplattengröße in fdisk und in lsblk. Wenn Sie es nicht sehen, müssen Sie mit diesen echo 1 und echo - - - Befehlen spielen.

Nachdem Sie mehr Speicherplatz sehen, können Sie eine Partition erweitern/hinzufügen, dann neu starten, vg erweitern, lv und fs erweitern.

Wenn Sie einen Neustart vermeiden möchten, müssen Sie der Datenträgergruppe eine rohe sda/b/c-Festplatte zuweisen, ohne sie in sda1/2/3 zu partitionieren. Dann ist kein Neustart erforderlich.

Partitionierung war vor einiger Zeit notwendig, als Linux nicht von LVM booten konnte, aber jetzt kann es.

Wenn Sie lsblk verwenden, sehen Sie Partitionen oder lvms, je nachdem, ob Sie Partitionen oder lvm verwenden. Sie können alle Teile haben, wenn Sie lvm nicht verwenden, oder alle lvms, wenn Sie keine Partitionen verwenden. Hier ist ein Beispiel:

[email protected] ~ $ lsblk
NAME                        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                           8:0    0  7.3T  0 disk
├─sda1                        8:1    0  500M  0 part /boot
└─sda2                        8:2    0  7.3T  0 part
  ├─vg_srv4-LogVol13 (dm-0) 253:0    0  7.1T  0 lvm  /
  ├─vg_srv4-LogVol05 (dm-1) 253:1    0  100G  0 lvm  /var/log
  ├─vg_srv4-LogVol04 (dm-2) 253:2    0   20G  0 lvm  /var
  ├─vg_srv4-LogVol01 (dm-5) 253:5    0   20G  0 lvm  /opt
  ├─vg_srv4-LogVol00 (dm-6) 253:6    0   20G  0 lvm  /home
  ├─vg_srv4-LogVol03 (dm-7) 253:7    0   20G  0 lvm  /usr
  └─vg_srv4-LogVol02 (dm-8) 253:8    0    8G  0 lvm  /tmp

Linux
  1. Wie lade ich Udev-Regeln ohne Neustart neu?

  2. Wie kann man Journald anweisen, seine Konfiguration erneut zu lesen?

  3. Linux – Wie kann man 70-persistent-net.rules ohne Neustart regenerieren?

  4. So erhalten Sie die Verzeichnisgröße in Linux

  5. So entfernen Sie ein totes Multipath-Gerät ohne Neustart in CentOS/RHEL

So erweitern Sie die XFS-Root-Partition ohne LVM in Linux

So erhalten Sie die Größe eines Verzeichnisses in Linux

So fügen Sie eine neue Festplatte in Linux CentOS 7 hinzu, ohne neu zu starten

So erweitern Sie die Festplattengröße der virtuellen KVM-Maschine unter Linux

So bearbeiten Sie eine Datei, ohne ihre Zeitstempel in Linux zu ändern

So starten Sie CentOS 8 neu