Die Datenträger- und Speicherplatzverwaltung ist ein wesentliches Wissen eines Systemadministrators. Es ist seine oder ihre tägliche Aufgabe, sich mit Festplattenproblemen zu befassen. Als Teil der Vorbereitung auf die RHCSA-Prüfung lernen wir, wie wir mithilfe der von RHEL8 bereitgestellten Tools neue Bereiche verschiedener Art zum System hinzufügen. Viele dieser Aufgaben haben wir bereits behandelt, und in diesem Tutorial konzentrieren wir uns darauf, neuen Speicherplatz hinzuzufügen, ohne die im System enthaltenen Daten zu beschädigen.
In diesem Tutorial lernen Sie:
- Wie man neue Partitionen zu RHEL8 hinzufügt
- Wie man neue logische Volumes zu RHEL8 hinzufügt
- So fügen Sie Swap zu RHEL8 hinzu
Hinzufügen von Auslagerungsspeicher zum System.
Softwareanforderungen und verwendete Konventionen
Kategorie | Anforderungen, Konventionen oder verwendete Softwareversion |
---|---|
System | Red Hat Enterprise Linux 8.1 |
Software | util-linux 2.32.1 |
Andere | Privilegierter Zugriff auf Ihr Linux-System als root oder über sudo Befehl. |
Konventionen | # – erfordert, dass bestimmte Linux-Befehle mit Root-Rechten ausgeführt werden, entweder direkt als Root-Benutzer oder durch Verwendung von sudo Befehl$ – erfordert, dass bestimmte Linux-Befehle als normaler, nicht privilegierter Benutzer ausgeführt werden |
Wie man neue Partitionen zu RHEL8 hinzufügt
Wir haben die technischen Schritte zum Erstellen einer Partition bereits im Partitionierungs-Tutorial für RHCSA behandelt, daher muss hier nur klargestellt werden, dass Sie es sich zweimal überlegen, bevor Sie partitionieren. fdisk
kann fragen, ob Sie sich über eine Änderung sicher sind, aber danach wird die Partitionstabelle neu geschrieben, was dazu führen kann, dass auf die Daten, die sich bereits auf der Festplatte befinden, nicht mehr zugegriffen werden kann. Erstellen Sie immer ein Backup, wenn die Daten benötigt werden.
Wie man neue logische Volumes zu RHEL8 hinzufügt
Das Erstellen eines neuen logischen Datenträgers wird im Lernprogramm für logische Datenträger für RHCSA behandelt. Logische Volumes verleihen dem Systemspeicher die Flexibilität, die einzelne Festplatten allein nicht bieten können. Was hier umrissen werden muss, ist, dass wir unser LVM-Setup von Grund auf aufbauen müssen, und wenn wir es erweitern müssen, müssen wir immer prüfen, ob wir genug Platz in den zugrunde liegenden physischen Volumes haben.
So fügen Sie Swap zu RHEL8 hinzu
Swap ist ein spezieller Speicherplatz, der vom Betriebssystem zum Schreiben von Speicherseiten verwendet wird. In diese Swap-Partition können Speicherinhalte geschrieben werden, die längere Zeit nicht verwendet werden, und somit der Speicher von anderen Programmen genutzt werden. Wenn der freie Speicherplatz des Systems knapp wird, hilft Swap, das Problem zu lösen. Aber wenn das System mehr Speicher verwenden muss, als es tatsächlich hat, kommt es zu intensivem Lesen/Schreiben auf der Swap-Partition (was als „Swapping“ bezeichnet wird), was das Gesamtsystem verlangsamt, bis zu dem Punkt, an dem es immer weniger reagiert.
Dies sollte vermieden werden, selbst ein Desktop ist beim Austauschen schwer zu verwenden, und stellen Sie sich einen Produktionsserver vor, auf dem eine OLTP-Datenbank ausgeführt wird, die plötzlich mit dem Austauschen beginnt. Während dieses intensive Auslagern eine gefürchtete Situation ist, ist die Nutzung des Auslagerungsbereichs im Allgemeinen eine gute Sache – es hilft, Operationen schneller zu machen. Wenn wir dem System mehr Auslagerungsspeicher hinzufügen möchten, haben wir zwei Möglichkeiten:Wir können eine neue Auslagerungspartition erstellen oder wir können eine Datei im Dateisystem erstellen, die als Auslagerungsspeicher dient. Wir werden beide Fälle abdecken.
Erstellen einer neuen Swap-Partition
Um eine Swap-Partition zu erstellen, benötigen wir eine leere Partition auf einer unserer Festplatten ohne Dateisystem. In unserem Testaufbau haben wir eine 2 GB leere Festplatte, die vom System als /dev/sdb
gesehen wird :
# fdisk -l /dev/sdb Disk /dev/sdb: 2 GiB, 2147483648 bytes, 4194304 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
Das Erstellen einer Swap-Partition ist nur einen Befehl entfernt, genannt mkswap
.
# mkswap /dev/sdb Setting up swapspace version 1, size = 2 GiB (2147479552 bytes) no label, UUID=34aa2332-0514-42ab-9635-1fd6b922d213
Wie bei allen Festplattenoperationen, überprüfen Sie zweimal, bevor Sie fortfahren. Das Neuformatieren einer Partition zum Austauschen zerstört jeglichen Inhalt, den sie zuvor hatte. Der mkswap
Dienstprogramm stellt uns die UUID der neuen Partition bereit, die zum Mounten benötigt wird.
Als nächstes erstellen wir eine Auslagerungsdatei im Dateisystem, die wir auch als Auslagerung verwenden. Weil unsere Testumgebung xfs
verwendet Dateisystem, müssen wir die Datei mit dd
vorbereiten .
# dd if=/dev/zero of=swapfile count=2048000 2048000+0 records in 2048000+0 records out 1048576000 bytes (1.0 GB, 1000 MiB) copied, 7.91227 s, 133 MB/s
Wir haben die standardmäßigen 512 Bytes aus /dev/zero
kopiert zwei Millionen Mal in die Datei namens „Swapfile“, wodurch die Datei effektiv mit Nullen bis zu einer Größe von etwa 1 GB gefüllt wird. Diese Datei wiederum kann verwendet werden, um swap zu erstellen:
# mkswap swapfile mkswap: swapfile: insecure permissions 0644, 0600 suggested. Setting up swapspace version 1, size = 1000 MiB (1048571904 bytes) no label, UUID=8dc7aa71-524c-4d2b-bbb3-5b9fbbfb3327
Unser anfänglicher Auslagerungsbereich in der Testumgebung beträgt 1,5 GB:
# free -m | grep Swap Swap: 1535 482 1053
Welches vom Gerät /dev/dm-1
bereitgestellt wird :
# cat /proc/swaps Filename Type Size Used Priority /dev/dm-1 partition 1572860 492984 -2
Um unsere neuen Swap Spaces mit dem swapon
für das System nutzbar zu machen Befehl. Wenn Sie es ohne Argumente ausführen, werden bereits verfügbare Daten des Swaps bereitgestellt:
# swapon NAME TYPE SIZE USED PRIO /dev/dm-1 partition 1.5G 478M -2
Das Hinzufügen unserer Auslagerungsdatei als Argument aktiviert die Datei als Auslagerung. In diesem Beispiel befindet sich die Datei im /root
Verzeichnis, aus dem der Befehl ausgegeben wird, sodass kein Pfad angegeben werden muss.
# swapon swapfile
Der free
Befehl zeigt den vergrößerten Auslagerungsbereich:
# free -m total used free shared buff/cache available Mem: 981 615 121 7 243 216 Swap: 2535 477 2058
Wir können /dev/sdb
einschalten Swap-Partition nach UUID:
# swapon UUID=34aa2332-0514-42ab-9635-1fd6b922d213
Und wieder wird unser Auslagerungsraum vergrößert:
# free -m total used free shared buff/cache available Mem: 981 617 119 7 243 215 Swap: 4583 477 4106
Und der swapon
Befehl zeigt auch unsere neuen Geräte:
# swapon NAME TYPE SIZE USED PRIO /dev/dm-1 partition 1.5G 474M -2 /root/swapfile file 1000M 0B -3 /dev/sdb partition 2G 0B -4
Und damit haben wir unserem System erfolgreich neuen Swap Space hinzugefügt. Diese Änderungen sind zu diesem Zeitpunkt nicht dauerhaft, nach dem Neustart werden sie nicht als Swap erkannt. Um diese Auslagerungsbereiche nach dem Neustart zu nutzen, müssen wir zwei Einträge in /etc/fstab
hinzufügen Datei, die auf diese Geräte verweist, damit das System sie beim Start erkennen und einbinden kann.
# tail -n 2 /etc/fstab UUID=34aa2332-0514-42ab-9635-1fd6b922d213 swap swap defaults 0 0 /root/swapfile swap swap defaults 0 0
Übungen
- Nach dem Erstellen einer Auslagerungsdatei und dem Hinzufügen zu
/etc/fstab
, löschen Sie es und starten Sie Ihr System neu. Wird es Fehler in den Logfiles und der Swapon-Ausgabe geben? - Nachdem Sie Swap mit einer Datei oder Partition hinzugefügt haben, versuchen Sie, die alte Partition mit
swapoff
auszuschalten . Tun Sie dies nicht auf Produktionssystemen! - Versuchen Sie
mkswap
auf einer Partition mit einem Dateisystem.