Swappiness: Как да настроите използването на виртуална памет

swappiness виртуална памет

Тук в Ubunlog Ние се посвещаваме - или се опитваме да се посветим - на всички потребители и това включва много различни хардуерни конфигурации. И по някакъв начин ни харесва да мислим, че с уроците, които показваме тук, допринасяме по някакъв начин за подобряване на общото потребителско изживяване в тази дистрибуция, която харесваме толкова много (във всеки от нейните вкусове), поради което често публикуваме ръководства за постигнете най-доброто представяне възможно, особено при по-скромно оборудване.

Сега, без да продължаваме, ще покажем как да се коригира използването на виртуална памет в Ubuntu, по такъв начин, че да се избегне, че в крайна сметка това се превръща в плъзгане и влошаване на производителността, отколкото би било без него. И е, че въпреки че идеята за използване на файл или суап дял не е лоша сама по себе си, а точно обратното, ако не е добре приложена, тя може да генерира прекомерно използване на твърдия диск, много по-бавно от RAM.

Поради тази причина използването на суап дяла трябва да бъде ограничено до ситуации, в които няма друга алтернатива, освен да се използва, като по това време той ще поддържа основната памет (която е RAM). Ако вместо това го използваме по всяко време, понякога дори преди RAM, нашата производителност ще бъде наказана. Да видим тогава как да коригирам използването на виртуална памет в Linux с помощта на командата Swappiness.

В нашата операционна система създаването на виртуална памет обикновено се извършва по време на инсталационния процес, по това време дефинираме коренния дял (/), дяла за съхранение (/ home) и обменния дял или суап, който обикновено се изпълнява на дяла / dev / sda5. Параметърът на ядрото, който управлява използването на виртуална памет, е споменатото по-горе заместване и в основата си можем да кажем, че той е отговорен за определяне колко често имаме достъп до суап дяла и колко съдържание копираме в него, чрез аргумент, който варира между 0 и 100.

Стойността по подразбиране в инсталация на Linux е 60, но както е лесно да се предположи, не всички хардуерни конфигурации са еднакви и следователно няма смисъл да се поддържа това ниво, независимо кое е нашето. Тази стойност се съхранява във файла / proc / sys / vm / swappiness и можем да я проверим чрез:

cat / proc / sys / vm / swappiness

Почти сигурно ще бъде на 60 и ако случаят е такъв, може да се наложи да го модифицираме, особено ако разполагаме с повече от 4 GB RAM памет, тъй като в този случай обикновено се нуждаем от малко или никаква виртуална памет. Но преди да обясним как да го модифицираме, нека видим малко за логиката зад цялото това нещо за виртуалната памет и разменността; И то е, че когато е оставено по подразбиране на 60, на ядрото се казва да отиде и да използва виртуалната памет, когато нашата RAM има 40% или по-малко от свободния си капацитет. По този начин, ако зададем разместване на 100, виртуалната памет ще се използва през цялото време, и ако го оставим на много ниска стойност, той ще се използва само когато нашата RAM памет е на път да свърши. Минималното възможно е 1, тъй като оставяйки стойността равна на 0, ние деактивираме виртуалната памет напълно.

Така че това, което трябва да направим, е да въведем следната команда от терминала (Ctrl + Alt + T):

sudo sysctl vm.swappiness = 10

Сега стойността на swappiness ще бъде 10 и тогава виртуалната памет едва ли ще се използва. След като тази стойност бъде променена няма нужда да рестартирате компютъра, но влиза в сила незабавно, и всъщност, ако рестартираме стойността, тя ще се намира на 60 както преди, защото това, което ще ни трябва, е да оставим тази промяна за постоянно установена. За да направите това, след като използваме компютъра си и се уверим, че всичко е наред с новата стойност на swappiness, изпълняваме:

sudo nano /etc/sysctl.conf

след което търсим текста vm.swappiness = и добавяме желаната стойност след символа "=". Запазваме файла и сега да, промяната ще бъде постоянна.


15 коментара, оставете своя

Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.

  1.   цесфло каза той

    Отлично обяснение !!! Много добра статия !! В моя случай, когато правя тази промяна при рестартиране на бележника, той се връща към първоначалната стойност 60, това е като файлът е запазен, но при рестартиране е «форматиран». Вече опитах всичко без успех, имате ли представа какво може да се случи? Имам 1GB RAM.

    Благодаря ви!

    1.    Уили Клеу каза той

      Здравей, Сезар, радвам се, че ти беше интересно.

      Ако стойността се загуби, когато системата се рестартира, ще разгледам /etc/rc.local и другите стартови скриптове (те варират в зависимост от всяка дистрибуция), тъй като може да е настроено при стартиране.

      Поздрави!

  2.   Паскуал Мартин каза той

    Много добро обяснение!

    Като допълнение ето още едно интересно за Swap и swappiness в Linux:

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

  3.   състояние на зрителя каза той

    не знаете колко добре е това за мен, благодаря

  4.   клериго каза той

    С уважение,

    В моя /etc/sysctl.conf не е текстът vm.swappiness =, потърсих го добре, файлът е малък. Освен ако не се налага да го добавяте, в статията се казва да намерите и модифицирате стойността, а не да добавяте реда.

  5.   Фундаментален болт каза той

    С уважение,

    В моя /etc/sysctl.conf няма vm.swappiness = текст. Освен ако не се налага да го добавяте, в статията се казва да намерите и модифицирате стойността, а не да добавяте реда.

  6.   Носферат каза той

    Трябва да го създадете, в края на файла поставяте vm.swappiness = 10 и това е всичко.

    Ако не спести при рестартиране, може да е, защото не използвате командата sudo.

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

  7.   Сантяго каза той

    Отлична статия. Благодаря ти!

  8.   Roberto каза той

    Можете да сложите нула. какви проблеми могат да се появят?

  9.   Хосе Кастило Авалос каза той

    Здравейте и благодаря Вили Клий за Вашата статия, която ми изяснява процеса за използване на паметта на swapp, но това ми причини огромно съмнение, защото при влизане в терминала и изпълнение на командите, които посочите, той връща съобщението, което казва:

    bash: cat / proc / sys / vm / swappiness: Файл или директория не съществува

    Какво може да причини това?

    1.    Андрес Чоке Лопес каза той

      Пишете лошо. Не сте поставили интервала след „котка“.

  10.   ледомодиране каза той

    чудесно, споделяме го в групата на ubuntu на испански https://t.me/ubuntu_es

  11.   Ковач каза той

    Отлично работи при мен на Debian 10.9

  12.   Джон каза той

    Аз съм компютърен учен, инсталирах и тествах няколко дистрибуции, най -добрият вариант за конфигуриране на swappiness е да пишете в терминала

    sudo nano /etc/sysctl.conf

    след натискане на enter напишете клавиша и въведете отново, след което напишете в края на следващия ред

    vm.swappiness = 0

    след това натиснете ctrl и клавиша x едновременно, той генерира въпрос, който ако искате да запишете новото изречение във файла, след това натиснете клавиша Y, за да кажете да и n, така че да не го запише

    Защо написах нула 0? Тестовете вече са направени на различни компютри, които съм програмирал, защото това е най -добрият вариант, тъй като използва чиято пагинация, но например, ако chromium или браузър се отвори чрез отваряне на Facebook, защото обменната памет (суап или наричана още пагинация) ще се увеличи но когато е затворена сесия и браузърът или която и да е програма, тъй като паметта за пейджинг (swap) ще намали освобождаването на твърдия диск, което е полезно, за да се избегне повреждането му, не забравяйте, че паметта за swap или наречена paging (swap) използва твърдия диск.

  13.   Норберто Гонсалес каза той

    Не разбрах, съжалявам Ако по подразбиране е 60 за смяна да се активира с 40 или по -малко липсващи, при задаване на параметъра на 10. Няма ли да се активира с 90 от безплатната оперативна памет? Като забавя обмена на данни