Zoeken op website

Hoe u het swapgeheugen in Ubuntu Linux kunt vergroten


Een van de eenvoudigste manieren om problemen met onvoldoende geheugen in toepassingen te voorkomen, is door de swapgrootte op uw server te vergroten. In dit artikel leggen we uit hoe je een wisselbestand toevoegt aan een Ubuntu-server.

Stap 1: Swap-informatie controleren

Voordat we beginnen, moet u eerst controleren of het systeem al swap ruimte beschikbaar heeft door de volgende swapon-opdracht uit te voeren.

sudo swapon --show

Als u geen uitvoer ziet, betekent dit dat uw systeem momenteel geen swapruimte beschikbaar heeft.

U kunt ook bevestigen dat er geen swapruimte beschikbaar is met behulp van de opdracht free.

free -h

U kunt aan de bovenstaande uitvoer zien dat er geen actieve swap op het systeem is.

Stap 2: Beschikbare ruimte op de partitie controleren

Om een swapruimte aan te maken, moet u eerst uw huidige schijfgebruik controleren en bevestigen dat er voldoende ruimte is om een swapbestand op het systeem te maken.

df -h

De partitie met / heeft voldoende ruimte beschikbaar om een wisselbestand te maken.

Stap 3: Een wisselbestand maken in Ubuntu

Nu gaan we een wisselbestand maken met de naam "swap.img" in onze Ubuntu root (/) map met behulp van het fallocate commando met de grootte van 1GB (u kunt de grootte aanpassen aan uw behoeften) en verifieer de grootte van de swap met behulp van de opdracht ls, zoals weergegeven.

sudo fallocate -l 1G /swap.img
ls -lh /swap.img

Uit de bovenstaande uitvoer kunt u zien dat we het wisselbestand met de juiste hoeveelheid ruimte hebben gemaakt, d.w.z. 1 GB.

Stap 4: Het wisselbestand inschakelen in Ubuntu

Om het wisselbestand in Ubuntu in te schakelen, moet u eerst de juiste machtigingen voor het bestand instellen, zodat alleen de root-gebruiker toegang heeft tot het bestand.

sudo chmod 600 /swap.img
ls -lh /swap.img

Uit de bovenstaande uitvoer kunt u zien dat alleen de root-gebruiker lees- en schrijfrechten heeft.

Voer nu de volgende opdrachten uit om het bestand te markeren als wisselruimte en zorg ervoor dat het wisselbestand het op het systeem kan gaan gebruiken.

sudo mkswap /swap.img
sudo swapon /swap.img

Controleer of de swapruimte beschikbaar is door de volgende opdrachten uit te voeren.

sudo swapon --show
free -h

Uit de bovenstaande uitvoer is het duidelijk dat ons nieuwe wisselbestand met succes is gemaakt en dat ons Ubuntu-systeem het indien nodig zal gaan gebruiken.

Stap 5: Monteer het wisselbestand permanent in Ubuntu

Om de swapruimte permanent te maken, moet u de swapbestandsinformatie toevoegen aan het bestand /etc/fstab en deze verifiëren door de volgende opdrachten uit te voeren.

echo '/swap.img none swap sw 0 0' | sudo tee -a /etc/fstab
cat /etc/fstab

Stap 6: Wisselinstellingen afstemmen in Ubuntu

Er zijn een paar instellingen die u moet configureren en die een effect hebben op de prestaties van uw Ubuntu bij gebruik van de swap.

De swappinesswaarde aanpassen

Swappiness is een Linux-kernelparameter die specificeert hoeveel (en hoe vaak) uw systeem gegevens uit het RAM naar de swapruimte wisselt. De standaardwaarde voor deze parameter is “60” en kan alles van “0” tot “100” gebruiken. Hoe hoger de waarde, hoe hoger het gebruik van swapruimte door Kernel.

Controleer eerst de huidige swappiness-waarde door de volgende opdracht te typen.

cat /proc/sys/vm/swappiness

De huidige swappiness-waarde van 60 is perfect voor desktopgebruik, maar voor een server moet u deze op een lagere waarde instellen, bijvoorbeeld 10.

sudo sysctl vm.swappiness=10

Om deze instelling permanent te maken, moet u de volgende regel toevoegen aan het bestand /etc/sysctl.conf.

vm.swappiness=10

De cachedrukinstelling aanpassen

Een andere soortgelijke instelling die u wellicht wilt wijzigen is de vfs_cache_druk – deze instelling specificeert hoeveel het systeem inode en dentry details in de cache wil opslaan andere gegevens.

U kunt de huidige waarde controleren door het proc-bestandssysteem te bevragen.

cat /proc/sys/vm/vfs_cache_pressure

De huidige waarde is ingesteld op 100, wat betekent dat ons systeem inode-informatie te snel uit de cache verwijdert. Ik stel voor dat we dit op een stabielere instelling zetten, zoals 50.

sudo sysctl vm.vfs_cache_pressure=50

Om deze instelling permanent te maken, moet u de volgende regel toevoegen aan het bestand /etc/sysctl.conf.

vm.vfs_cache_pressure=50

Sla het bestand op en sluit het als u klaar bent.

Stap 7: Een wisselbestand verwijderen in Ubuntu

Voer de volgende opdrachten uit om het nieuw gemaakte wisselbestand te verwijderen of te verwijderen.

sudo swapoff -v /swap.img
sudo rm -rf /swap.img

Verwijder ten slotte het wisselbestandsitem uit het bestand /etc/fstab.

Dat is alles! In dit artikel hebben we uitgelegd hoe u een wisselbestand op uw Ubuntu-distributie kunt maken. Als u vragen heeft over dit artikel, kunt u uw vragen stellen in het commentaargedeelte hieronder.