Swappiness: het gebruik van virtueel geheugen aanpassen

swappiness virtueel geheugen

hier Ubunlog We zetten ons in (of proberen ons in te zetten) voor alle gebruikers, en dat omvat heel verschillende hardwareconfiguraties. En op de een of andere manier denken we graag dat we met de tutorials die we hier laten zien op de een of andere manier bijdragen aan het verbeteren van de algemene gebruikerservaring in deze distro die we zo leuk vinden (in welke smaak dan ook), daarom publiceren we vaak handleidingen voor krijg de beste prestaties mogelijk, vooral in meer bescheiden apparatuur.

Nu, zonder verder te gaan, zullen we het laten zien hoe u het gebruik van virtueel geheugen aanpast in Ubuntu, op zo'n manier dat wordt voorkomen dat het uiteindelijk een belemmering wordt en de prestaties slechter maakt dan zonder. En het is dat, hoewel het idee om een ​​bestand of swappartitie te gebruiken op zichzelf niet slecht is, maar juist het tegenovergestelde, als het niet goed wordt geïmplementeerd, het overmatig gebruik van de harde schijf kan genereren, veel langzamer dan de RAM.

Om deze reden zou het gebruik van de swappartitie moeten worden beperkt tot situaties waarin er geen alternatief is dan het te gebruiken, op welk moment het het hoofdgeheugen ondersteunt (dat is RAM). Als we het in plaats daarvan altijd gebruiken, soms zelfs vóór RAM, worden onze prestaties bestraft. Eens kijken dan hoe je het gebruik van virtueel geheugen in Linux aanpast met de Swappiness-opdracht.

In ons besturingssysteem wordt het aanmaken van virtueel geheugen meestal uitgevoerd tijdens het installatieproces, waarna we de rootpartitie (/), de opslagpartitie (/ home) en de uitwisselingspartitie of swap, die meestal wordt geïmplementeerd op de / dev / sda5-partitie​ De kernelparameter die het gebruik van virtueel geheugen beheert, is de eerder genoemde swappiness, en in feite kunnen we zeggen dat het de leiding heeft over het definiëren van hoe vaak we toegang krijgen tot de swappartitie en hoeveel inhoud we erin kopiëren, door middel van een argument dat varieert tussen 0 en 100.

De standaardwaarde in een Linux-installatie is 60, maar zoals het gemakkelijk is aan te nemen, zijn niet alle hardwareconfiguraties hetzelfde en daarom heeft het geen zin om dat niveau te handhaven, ongeacht welke van ons is. Deze waarde wordt opgeslagen in het / proc / sys / vm / swappiness-bestand en we kunnen het controleren door:

cat / proc / sys / vm / swappiness

Het zal vrijwel zeker op 60 zijn, en als dat het geval is, moeten we het misschien vooral aanpassen als we meer dan 4 GB RAM-geheugen hebben, omdat we dan meestal weinig of geen virtueel geheugen nodig hebben​ Maar voordat we uitleggen hoe we dat kunnen wijzigen, laten we eens kijken naar de logica achter dit hele virtuele geheugen en swappiness-ding; En het is dat wanneer het standaard op 60 wordt gelaten, de kernel wordt verteld om het virtuele geheugen te gaan gebruiken als ons RAM 40 procent of minder van zijn vrije capaciteit heeft. Dus, als we swappiness gelijk stellen aan 100, zal het virtuele geheugen de hele tijd worden gebruikt, en als we het op een zeer lage waarde laten, zal het alleen worden gebruikt als ons RAM bijna op is. Het minimum mogelijke is 1, aangezien we de waarde gelijk aan 0 laten, deactiveren we het virtuele geheugen volledig.

Dus wat we moeten doen, is de volgende opdracht invoeren vanaf de terminal (Ctrl + Alt + T):

sudo sysctl vm.swappiness = 10

Nu de waarde van swappiness blijft op 10, en dan zal virtueel geheugen nauwelijks worden gebruikt​ Zodra deze waarde is gewijzigd de computer hoeft niet opnieuw te worden opgestart, maar treedt onmiddellijk in werking, en in feite als we de waarde resetten, zal deze als voorheen op 60 worden geplaatst, want wat we nodig hebben is om deze verandering permanent te laten staan. Om dit te doen, voeren we, nadat we onze computer hebben gebruikt en hebben geverifieerd dat alles in orde is met de nieuwe waarde van swappiness, het volgende uit:

sudo nano /etc/sysctl.conf

waarna we zoeken naar de tekst vm.swappiness = en de gewenste waarde toevoegen na het "=" symbool. We slaan het bestand op en ja, de wijziging is definitief.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.

  1.   ceflo zei

    Uitstekende uitleg !!! Zeer goed artikel !! In mijn geval, wanneer ik deze wijziging aanbreng bij het herstarten van de notebook, keert het terug naar de oorspronkelijke waarde van 60, het is alsof het bestand is opgeslagen, maar bij het herstarten is het "geformatteerd". Ik heb alles al zonder succes geprobeerd, heb je enig idee wat er zou kunnen gebeuren? Ik heb 1 GB RAM.

    Dank je wel!

    1.    Willy klew zei

      Hallo César, ik ben blij dat je het interessant vond.

      Als de waarde verloren gaat wanneer het systeem opnieuw opstart, zou ik naar /etc/rc.local en de andere opstartscripts kijken (ze variëren afhankelijk van elke distro), omdat dit mogelijk is ingesteld bij het opstarten.

      Groeten!

  2.   Pascual Martin zei

    Zeer goede uitleg!

    Als aanvulling is hier nog een interessante over Swap en swappiness in Linux:

    http://www.sysadmit.com/2016/10/linux-swap-y-swappiness.html

  3.   kijker conditie zei

    je weet niet hoe goed dit voor mij is, bedankt

  4.   geestelijkheid zei

    Met vriendelijke groet,

    In mijn /etc/sysctl.conf staat niet de tekst vm.swappiness =, ik heb er goed naar gezocht, het bestand is klein. Tenzij u het moet toevoegen, zegt het artikel om de waarde te zoeken en te wijzigen, niet om de regel toe te voegen.

  5.   Lewis zei

    Met vriendelijke groet,

    In mijn /etc/sysctl.conf is er geen vm.swappiness = text. Tenzij u het moet toevoegen, zegt het artikel om de waarde te zoeken en te wijzigen, niet om de regel toe te voegen.

  6.   Nosferatus zei

    Je moet het aanmaken, aan het einde van het bestand zet je vm.swappiness = 10 en dat is alles.

    Als het niet opslaat bij het opnieuw opstarten, kan het zijn dat u de opdracht sudo niet gebruikt.

    Ubuntu: sudo gedit /etc/sysctl.conf
    Xubuntu: sudo mousepad /etc/sysctl.conf

  7.   santiago zei

    Uitstekend artikel. Dank je!

  8.   Roberto zei

    U kunt nul plaatsen. welke problemen kunnen optreden?

  9.   Jose Castillo Ávalos zei

    Hallo en bedankt Willy Clew voor je artikel dat me duidelijk maakt hoe het swapp-geheugen moet worden gebruikt, maar het veroorzaakte grote twijfel, want bij het invoeren van de terminal en het uitvoeren van de door jou aangegeven commando's, wordt het bericht geretourneerd dat zegt:

    bash: cat / proc / sys / vm / swappiness: bestand of map bestaat niet

    Wat kan dit veroorzaakt worden?

    1.    Andres Choque Lopez zei

      Je hebt slecht geschreven. Je hebt de spatie niet achter 'kat' gezet.

  10.   ijsmodden zei

    geweldig, we delen het in de ubuntu-groep in het Spaans https://t.me/ubuntu_es

  11.   smid zei

    Uitstekend, het werkte voor mij op Debian 10.9

  12.   John zei

    Ik ben een computerwetenschapper. Ik heb verschillende distro's geïnstalleerd en getest, de beste optie om de swappiness te configureren, is door in de terminal te schrijven

    sudo nano /etc/sysctl.conf

    nadat u op enter hebt gedrukt, schrijft u de sleutel en voert u opnieuw in, en schrijft u aan het einde de volgende regel:

    vm.swappiness = 0

    druk vervolgens tegelijkertijd op ctrl en de x-toets, hij genereert een vraag dat als u de nieuwe zin in het bestand wilt opslaan, druk dan op de Y-toets om ja en n te zeggen zodat deze niet wordt opgeslagen

    Waarom heb ik nul 0 geschreven? De tests zijn al gedaan op verschillende pc's die ik heb geprogrammeerd omdat dat de beste optie is omdat het gebruik maakt van wiens paginering maar bijvoorbeeld als chroom of een browser wordt geopend door Facebook te openen omdat het uitwisselingsgeheugen (swap of ook paginering genoemd) zal toenemen maar wanneer het een gesloten sessie is en de browser of een ander programma omdat het paginggeheugen (swap) zal afnemen, waardoor de harde schijf vrijkomt, wat handig is om beschadiging te voorkomen, onthoud dan dat het swapgeheugen of paging (swap) wordt genoemd, de harde schijf gebruikt.

  13.   Norbert González zei

    Ik begreep het niet, sorry. Als de standaardwaarde 60 is om swap te activeren met 40 of minder ontbrekende, bij het instellen van de parameter op 10. Zou het niet worden geactiveerd met 90 van de vrije ram? Door gegevensuitwisseling te vertragen