
Es gibt zahlreiche Beiträge zum vollständigen Deaktivieren des Swap-Speichers in Ubuntu. Ist es möglich, Ubuntu anzuweisen, die Verwendung des Swap-Speichers zuzulassen, aber zu unterbinden?
Ich habe Xubuntu auf einem Laptop mit 1 GB RAM und einer kleinen SSD installiert und ihn in einen Samba-Server verwandelt. Im schlimmsten Fall passt der freie Speicher immer noch für alle Daten aus einer Auslagerungsdatei:
~$ free -m
total used free shared buffers cached
Mem: 991 696 294 17 66 175
-/+ buffers/cache: 454 536
Swap: 1952 107 1845
Ich möchte den Swap-Vorgang unterbinden, wenn freier Speicher verfügbar ist, da beim Swap-Vorgang viele IO-Schreibvorgänge ausgeführt werden, die die SSD schnell beeinträchtigen.
Ist es möglich, RAM gegenüber Swap zu priorisieren, oder ist die Auswahl auf „Swap ein/aus“ beschränkt? Welche Nebenwirkungen, wenn überhaupt, verursacht dies?
Vielen Dank für den Hinweis auf vorhandene Antworten. Sie sind zwar relevant, aber schwer zu finden. Der Benutzer muss 90 % der Antwort kennen, um nach „So konfigurieren Sie Swappiness“ zu suchen. Frage beantwortet. Ich hoffe, diese Fragenüberschrift hilft bei der Indizierung.
Antwort1
Sofern Sie nicht über eine sehr alte SSD verfügen, können halbwegs moderne SSDs viele Schreibvorgänge bewältigen, sodass Sie bei einer halbwegs modernen SSD eigentlich nichts tun müssen.
Wenn Sie das Swapping dennoch reduzieren möchten, reduzieren Sie swappiness
(der Mindestwert unter modernem Linux beträgt 1
, nicht 0
, wenn Sie alles geben möchten, 10
ist jedoch das empfohlene Minimum und 60
der Ubuntu-Standard). Dies kann die Dinge erheblich verlangsamen (bis zu dem Punkt, dass das System bei starkem Speicherdruck für eine ganze Weile einfrieren kann), wenn das Swapping schließlich beginnt, da im Voraus wenig bis gar nichts ausgelagert wird.
Um festzulegen swappiness
, ersetzen Sie 10
unten durch den swappiness
gewünschten Wert, 1
um 100
, wobei niedrigere Werte weniger häufig ausgetauscht werden. Öffnen Sie ein Terminal (drücken Sie Ctrl+ Alt+ T) und führen Sie Folgendes aus:
sudo sysctl vm.swappiness=10
sudo nano /etc/sysctl.conf
Fügen Sie nun unten eine Zeile hinzu (oder vm.swappiness
bearbeiten Sie eine Zeile, falls bereits eine vorhanden ist):
vm.swappiness = 10
Drücken Sie Ctrl+ Ozum Speichern. Drücken Sie Ctrl+ Xzum Beenden nano
. Schließen Sie das Terminalfenster.