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

So erstellen und verwenden Sie eine Auslagerungsdatei unter Linux

In diesem Tutorial wird das Konzept der Auslagerungsdatei in Linux erläutert, warum es verwendet wird und welche Vorteile es gegenüber der herkömmlichen Auslagerungspartition hat. Sie erfahren, wie Sie eine Auslagerungsdatei erstellen oder deren Größe ändern.

Was ist eine Auslagerungsdatei unter Linux?

Eine Auslagerungsdatei ermöglicht es Linux, den Speicherplatz als RAM zu simulieren. Wenn Ihrem System der RAM ausgeht, verwendet es den Auslagerungsspeicher und lagert einen Teil des RAM-Inhalts auf den Festplattenspeicher aus. Dadurch wird der Arbeitsspeicher für wichtigere Prozesse freigegeben. Wenn der Arbeitsspeicher wieder frei ist, lagert er die Daten von der Platte zurück. Ich empfehle, diesen Artikel zu lesen, um mehr über Swap unter Linux zu erfahren.

Traditionell wird Swap Space als separate Partition auf der Festplatte verwendet. Wenn Sie Linux installieren, erstellen Sie eine separate Partition nur für den Austausch. Aber dieser Trend hat sich in den letzten Jahren geändert.

Mit der Auslagerungsdatei benötigen Sie keine separate Partition mehr. Sie erstellen eine Datei unter root und weisen Ihr System an, diese als Auslagerungsspeicher zu verwenden.

Bei einer dedizierten Swap-Partition ist die Größenänderung des Swap-Bereichs ein Albtraum und in vielen Fällen eine unmögliche Aufgabe. Aber mit Auslagerungsdateien können Sie die Größe beliebig ändern.

Neuere Versionen von Ubuntu und einigen anderen Linux-Distributionen verwenden standardmäßig die Auslagerungsdatei. Selbst wenn Sie keine Auslagerungspartition erstellen, erstellt Ubuntu selbst eine Auslagerungsdatei von etwa 1 GB.

Lassen Sie uns mehr über Auslagerungsdateien sehen.

Auslagerungsspeicher unter Linux prüfen

Bevor Sie beginnen, Auslagerungsspeicher hinzuzufügen, sollten Sie prüfen, ob in Ihrem System bereits Auslagerungsspeicher verfügbar ist.

Sie können dies mit dem kostenlosen Befehl unter Linux überprüfen. In meinem Fall hat mein Dell XPS 14 GB Swap.

free -h
              total        used        free      shared  buff/cache   available
Mem:           7.5G        4.1G        267M        971M        3.1G        2.2G
Swap:           14G          0B         14G

Der freie Befehl gibt Ihnen die Größe des Auslagerungsbereichs an, sagt Ihnen jedoch nicht, ob es sich um eine echte Auslagerungspartition oder eine Auslagerungsdatei handelt. Der Swapon-Befehl ist in dieser Hinsicht besser.

swapon --show
NAME           TYPE       SIZE USED PRIO
/dev/nvme0n1p4 partition 14.9G   0B   -2

Wie Sie sehen können, habe ich 14,9 GB Auslagerungsspeicher und er befindet sich auf einer separaten Partition. Wenn es eine Auslagerungsdatei wäre, wäre der Typ file statt partition.

swapon --show
NAME      TYPE SIZE USED PRIO
/swapfile file   2G   0B   -2

Wenn Sie keinen Auslagerungsbereich auf Ihrem System haben, sollte es etwa so aussehen:

free -h
              total        used        free      shared  buff/cache   available
Mem:           7.5G        4.1G        267M        971M        3.1G        2.2G
Swap:           0B          0B         0B

Der Befehl swapon zeigt keine Ausgabe.

Auslagerungsdatei unter Linux erstellen

Wenn Ihr System keinen Auslagerungsspeicher hat oder Sie der Meinung sind, dass der Auslagerungsspeicher nicht ausreicht, können Sie unter Linux eine Auslagerungsdatei erstellen. Sie können auch mehrere Auslagerungsdateien erstellen.

Mal sehen, wie man eine Auslagerungsdatei unter Linux erstellt. Ich verwende Ubuntu 18.04 in diesem Tutorial, aber es sollte auch auf anderen Linux-Distributionen funktionieren.

Schritt 1:Erstellen Sie eine neue Auslagerungsdatei

Erstellen Sie als Erstes eine Datei mit der gewünschten Größe des Auslagerungsbereichs. Nehmen wir an, ich möchte meinem System 1 GB Auslagerungsspeicher hinzufügen. Verwenden Sie den Befehl fallocate, um eine Datei mit einer Größe von 1 GB zu erstellen.

sudo fallocate -l 1G /swapfile

Es wird empfohlen, nur root das Lesen und Schreiben in die Auslagerungsdatei zu erlauben. Sie sehen sogar eine Warnung wie „Unsichere Berechtigungen 0644, 0600 vorgeschlagen“, wenn Sie versuchen, diese Datei für den Auslagerungsbereich zu verwenden.

sudo chmod 600 /swapfile

Beachten Sie, dass der Name der Auslagerungsdatei beliebig sein kann. Wenn Sie mehrere Auslagerungsbereiche benötigen, können Sie ihm einen geeigneten Namen wie Auslagerungsdatei_1, Auslagerungsdatei_2 usw. geben. Es ist nur eine Datei mit einer vordefinierten Größe.

Schritt 2:Markieren Sie die neue Datei als Auslagerungsbereich

Sie müssen dem Linux-System mitteilen, dass diese Datei als Auslagerungsspeicher verwendet wird. Sie können das mit dem mkswap-Tool tun.

sudo mkswap /swapfile

Sie sollten eine Ausgabe wie diese sehen:

Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
no label, UUID=7e1faacb-ea93-4c49-a53d-fb40f3ce016a

Schritt 3:Aktivieren Sie die Auslagerungsdatei

Jetzt weiß Ihr System, dass die Datei Auslagerungsdatei als Auslagerungsspeicher verwendet werden kann. Aber es ist noch nicht fertig. Sie müssen die Auslagerungsdatei aktivieren, damit Ihr System diese Datei als Auslagerung verwenden kann.

sudo swapon /swapfile

Wenn Sie nun den Auslagerungsbereich überprüfen, sollten Sie sehen, dass Ihr Linux-System ihn erkennt und als Auslagerungsbereich verwendet:

swapon --show
NAME       TYPE   SIZE USED PRIO
/swapfile  file 1024M   0B   -2

Schritt 4:Machen Sie die Änderungen dauerhaft

Was Sie bisher getan haben, ist vorübergehend. Starten Sie Ihr System neu und alle Änderungen verschwinden.

Sie können die Änderungen dauerhaft machen, indem Sie die neu erstellte Auslagerungsdatei zur Datei /etc/fstab hinzufügen.

Es ist immer eine gute Idee, eine Sicherungskopie zu erstellen, bevor Sie Änderungen an der Datei /etc/fstab vornehmen.

sudo cp /etc/fstab /etc/fstab.back

Jetzt können Sie die folgende Zeile am Ende der /etc/fstab-Datei hinzufügen:

/swapfile none swap sw 0 0

Sie können dies manuell mit einem Befehlszeilen-Texteditor tun oder Sie verwenden einfach den folgenden Befehl:

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

Jetzt haben Sie alles an Ort und Stelle. Ihre Auslagerungsdatei wird auch nach einem Neustart Ihres Linux-Systems verwendet.

Austauschverhalten anpassen

Die Auslagerungsparameter bestimmen, wie oft der Auslagerungsbereich verwendet werden soll. Der Auslagerungswert reicht von 0 bis 100. Ein höherer Wert bedeutet, dass der Auslagerungsbereich häufiger verwendet wird.

Die Standardauslagerung im Ubuntu-Desktop ist 60, während sie im Server 1 ist. Sie können die Auslagerung mit dem folgenden Befehl überprüfen:

cat /proc/sys/vm/swappiness

Warum sollten Server eine niedrige Swapiness verwenden? Da Swap langsamer als RAM ist und für eine bessere Leistung sollte der RAM so viel wie möglich genutzt werden. Auf Servern ist der Leistungsfaktor entscheidend und daher ist die Swappinness so gering wie möglich.

Mit dem folgenden systemd-Befehl können Sie die Auslagerung im Handumdrehen ändern:

sudo sysctl vm.swappiness=25

Dies ändert es jedoch nur vorübergehend. Wenn Sie es dauerhaft machen möchten, können Sie die Datei /etc/sysctl.conf bearbeiten und den Swapiness-Wert am Ende der Datei hinzufügen:

vm.swappiness=25

Auslagerungsspeicher unter Linux ändern

Es gibt mehrere Möglichkeiten, wie Sie die Größe des Auslagerungsbereichs unter Linux ändern können. Aber bevor Sie das sehen, sollten Sie ein paar Dinge darüber lernen.

Wenn Sie Ihr System auffordern, die Verwendung einer Auslagerungsdatei für den Auslagerungsbereich einzustellen, überträgt es alle Daten (genauer gesagt Seiten) zurück in den Arbeitsspeicher. Sie sollten also genügend freien RAM haben, bevor Sie auswechseln.

Aus diesem Grund empfiehlt es sich, eine weitere temporäre Auslagerungsdatei zu erstellen und zu aktivieren. Auf diese Weise verwendet Ihr System die temporäre Auslagerungsdatei, wenn Sie den ursprünglichen Auslagerungsbereich auslagern. Jetzt können Sie die Größe des ursprünglichen Auslagerungsbereichs ändern. Sie können die temporäre Auslagerungsdatei manuell entfernen oder so lassen, wie sie ist, und sie wird beim nächsten Start automatisch gelöscht.

Wenn Sie über genügend freien Arbeitsspeicher verfügen oder einen temporären Auslagerungsbereich erstellt haben, lagern Sie Ihre Originaldatei aus.

sudo swapoff /swapfile

Jetzt können Sie den Befehl fallocate verwenden, um die Größe der Datei zu ändern. Angenommen, Sie ändern die Größe auf 2 GB:

sudo fallocate -l 2G /swapfile

Markieren Sie die Datei nun wieder als Auslagerungsbereich:

sudo mkswap /swapfile

Und schalten Sie den Swap wieder ein:

sudo swapon /swapfile

Sie können auch mehrere Auslagerungsdateien gleichzeitig haben.

Auslagerungsdatei unter Linux entfernen

Möglicherweise haben Sie Ihre Gründe, warum Sie die Auslagerungsdatei unter Linux nicht verwenden. Wenn Sie es entfernen möchten, ist der Prozess ähnlich dem, was Sie gerade bei der Größenänderung des Swaps gesehen haben.

Stellen Sie zunächst sicher, dass Sie über genügend freien Arbeitsspeicher verfügen. Tauschen Sie nun die Datei aus:

sudo swapoff /swapfile

Im nächsten Schritt entfernen Sie den entsprechenden Eintrag aus der Datei /etc/fstab.

Und am Ende können Sie die Datei entfernen, um Speicherplatz freizugeben:

sudo rm /swapfile

Tauschen Sie?

Ich denke, Sie haben jetzt ein gutes Verständnis für das Konzept der Auslagerungsdatei in Linux. Sie können jetzt ganz einfach Auslagerungsdateien erstellen oder deren Größe nach Bedarf ändern.

Wenn Sie zu diesem Thema etwas hinzuzufügen haben oder irgendwelche Zweifel haben, hinterlassen Sie bitte unten einen Kommentar.



Linux
  1. So erstellen Sie einen Alias ​​und verwenden den Alias-Befehl in Linux

  2. So installieren und verwenden Sie Flatpak unter Linux

  3. So erstellen Sie einen Swap unter Linux

  4. So erstellen Sie eine Auslagerungsdatei unter Linux

  5. UNIX / Linux:So verwenden Sie Sticky Bit für Verzeichnis und Datei

Linux-Hostdatei:Wie wird sie bearbeitet und verwendet?

So installieren und verwenden Sie PuTTY unter Linux

So installieren und verwenden Sie phpMyAdmin unter Linux

So installieren und verwenden Sie den fd-Befehl unter Linux

So deaktivieren Sie Swap unter Linux

Wie verwende ich gzip unter Linux?