Swap -tiedoston luomisen ja kytkemisen ominaisuudet Linuxiin

Swap -tiedoston luomisen ja kytkemisen ominaisuudet Linuxiin

RAM -muistin määrä tietokoneessa on rajoitettu. Useimmiten taloudellisten näkökohtien vuoksi, vaikka puhtaasti teknisesti et voi asettaa OP: tä enemmän tietylle emolevystään. Ja jos niin, tilanteet, joissa muistista puuttuu. Näitä ovat Linux, ja vaikka sitä pidetään vähemmän vaativana PC -resursseiksi, sitä ei voida kutsua ihanteelliseksi. RAM -puutos ratkaistaan ​​eri tavoin. Yksi optimaalisin niistä on tiedoston tai osan käyttö levyllä, jossa tiedot tallennetaan väliaikaisesti, jotka on poistettu fyysisessä muistissa tarvittaessa.

Mikä on vaihto

Swapin alla oleva Linux -kaltainen käyttöjärjestelmä ymmärtää virtuaalisen muistin organisaation mekanismin, jossa osa RAM -muistiin tallennetusta tiedosta (yleensä harvoin käytetty) siirretään väliaikaiseen tallennustilaan erityisessä osassa tai tiedostossa kovassa tai kiinteässä tilassa levy.

Koko fyysisen muistin tilavuus Linuxissa on jaettu sivuille. Tarvittaessa yksittäisten sivujen sisältö siirretään erilliseen levyyn, jota kutsutaan SWAP -tilaksi tai erilliseen tiedostoon (Windowsin pumppaustiedoston analogi). Itse OP: n vapauttamisprosessia kutsutaan vaihtamiseksi, ja fyysisen ja vaihtamisen muistin kokonaiskokoa kutsutaan - saatavissa olevan virtuaalisen muistin tilavuutta.

Mikä on vaihtaa

Monitehtävät eivät tarkoita monien ohjelmien samanaikaista avaamista. Vaikka käynnistämme selaimen, se itse käyttää monia kirjastoja, joista kukin käyttää omaa muistialoaan. Jokainen uusi välilehti, jokainen avoin asiakirja on yhä enemmän muistisivuja, jotka eivät välttämättä riitä tietyssä ajankohdassa.

Ja jos uudelle välilehdelle ei ole ilmaisia ​​sivuja, käyttöjärjestelmä pakotetaan osallistumaan muistin vapauttamiseen. Ja mitä vapauttaa, jos kaikki sivut ovat varattuja tarvittavien tietojen tai välimuistin kanssa? Jota käytetään harvemmin. Mutta ennemmin tai myöhemmin tarvitaan ladattamaton koodi, mutta se ei ole muistiin. Tätä tilannetta kutsutaan sivuvikaksi, ja käyttöjärjestelmän on käsiteltävä sitä uudella. Jos levyn puuttuvia tietoja ei löydy, prosessi lopettaa hätätilanteen. Jos se on, järjestelmä lataa koodin levystä, mutta tätä varten sinun on vapautettava tietty määrä muita muistisivuja. Seurauksena on, että roskakoriksi kutsuttu prosessi alkaa, kun käyttöjärjestelmä on mukana vain siinä, mikä vapauttaa uusia sivuja, poistamalla niiden sisällön ja ladataan puuttuvat tiedot niihin.

Vaihtotiedoston läsnäolo ratkaisee vain tämän ongelman. Sen sijaan, että yksinkertaisesti puhdistaisi muistin sivuja, järjestelmä pudottaa sisällönsä levylle, joka sellaisenaan laajentaa fyysisen RAM -muistin määrää. Samanaikaisesti roskakori korvataan yhdellä luku-/tallennusmenettelyllä.

Tietysti kuvasimme prosessia melko kaavamaisesti, itse asiassa sillä on monia vivahteita ja melko monimutkainen toteutusalgoritmi. Joka tapauksessa kuva on seuraava: Jos teet vaihtosopimuksen riittävän suuren, harvoin käytettyjä ja muuttumattomia tietoja, kun RAM -muisti "jätä" levylle, missä tarvittaessa ne voidaan poistaa niin monta kertaa kuin välttämätön.

Jos tiedosto/swing -osa on pieni, siitä on vähän hyötyä, koska ennemmin tai myöhemmin vapaa tila on uupunut siihen, ja sitten "tanssi" jatkuvilla nauhoitusoperaatioilla pippuritiedostossa alkaa uudelleen, mikä tulee olemaan erittäin hidastunut, jota järjestelmä hidastaa hyvin.

Seuraavat voidaan väittää, että vastataan kysymykseen vaihdon tarvetta Linuxissa:

  • Se auttaa purkamaan järjestelmän, kun ohjelma pyytää fyysisen muistin määrää, joka ei ole järjestelmässä. Tällaisissa tapauksissa Linux -ydin analysoi, mitä sivuja valitus tapahtuu harvemmin, pudottaa niiden sisällön levylle ja erottaa vaaditun määrän sivuja nykyiseen prosessiin;
  • Monien ohjelmien erikoisuus on, että niiden käynnistämishetkellä osa sivuista on kiireinen tietojen kanssa, joita käytetään vain prosessin/sovelluksen alustuksen yhteydessä. Järjestelmä voi ja sen pitäisi pudottaa nämä sivut vaihtoon, purkamalla OP.

Mutta kaikki ei ole niin yksinkertaista. Vaihda ei myöskään ole puutteellisia puutteita, joiden pääasiallinen on levyn tallennus-/lukemisoperaatioiden nopeus. Riittää, kun sanotaan, että fyysisen muistin kanssa tapahtuvissa tapahtumissa tämä nopeus mitataan nanosekunnissa (katso vain OM -sirujen ominaisuuksia), ja kiintolevylle se on millisekuntia, ts. Useita suuruusluokkaa enemmän. SSD -tiedonvaihtokurssilla on paljon enemmän tiedonvaihtokurssia, mutta hitaan rajapinnan vuoksi ne ovat edelleen vertaansa vailla RAM -indikaattoreiden kanssa. Joten osoittautuu, että vaihtosuunnassa usein muistisivujen purkautumisella järjestelmä voi myös toimia hitaammin.

Tämä on erityisen yleistä, jos tietokonetta käytetään palvelimena, ja Linuxin kanssa tämä on suurin osa tietokoneesta. Muistin puutteen vuoksi tietokannat kuuluvat yleensä ensimmäisten uhrien lukumäärään, ja jos se on MySQL, sen putoaminen uhkaa sivuston tai sen sivujen käyttökelpoisuutta, joten palvelimille on niin tärkeää, että palvelimilla on suuri tilavuusvaihto Osa - Anna sivuston toimia paremmin kuin se ei ole täysin käytettävissä.

Kuinka luoda ja määrittää keinutiedosto Ubuntu -esimerkin avulla

Pumppaustiedoston luomismenettely on melko monimutkainen, mikä vaatii tiettyjä taitoja komentorivin kanssa työskentelemisessä.

Ja ensimmäinen vaihe - meidän on selvitettävä, onko järjestelmän vaihtamisen alla valittu osa tai tiedosto.

Vaihdon saatavuuden tarkistaminen Ubuntussa

Käytämme komentoa:

Swapon -S

tai

ilmainen -M

Jos vaihto on poissa, ensimmäisessä tapauksessa saat tyhjän tuloksena olevan viivan, toisessa - taulukon virtuaalimuistin käyttö, jossa vaihtosuoja sisältää nollia.

Jos pumppaustiedostoa ei ole, sinun on päätettävä, onko se mahdollista luoda.

Ilmaisen tilan läsnäolon tarkistaminen levyllä

Suoritamme komennon

Df -h

Taulukko seuraavan sisällön suhteen tulee näkyviin:

Levyllä on noin 23 Gt vapaata tilaa, tämä on enemmän kuin tarpeeksi vaihtotiedoston luomiseen.

Minkä kokoinen vaihdon luominen

Pumppaustiedoston koko riippuu monista tekijöistä:

  • kuinka paljon RAM -muistia on järjestelmässä;
  • Mikä on käytettyjen ohjelmien/sovellusten koostumus;
  • Aiotko käyttää lepotilaa;
  • Käytetäänkö salaisia ​​tiedostoja.

Tietysti pääkohta on fyysisen muistin määrä. Jos se on alle 2 Gt, SAWP-tiedosto tarvitaan yli 1,5-2 kertaa suurempi, ts. Enintään 4 Gt.

Jos sinulla on 3-4 Gt RAM-muistia, päätä ensin, käytätkö lepotilaa. Jos näin on, on suositeltavaa valita pumppaustiedoston äänenvoimakkuus laskelmasta 110-115% RAM-muistin määrästä, jos ei, ihanteellinen vaihtoehto on saman volyymin vaihtotiedosto.

Jos sinulla on tehokas tietokone ja OP: n äänenvoimakkuus ylittää 6 Gt, SWAP -tiedoston koko Linux Select -sovelluksessa puolet RAM -muistin määrästä. Jos lepotilassa olevaa tilaa on tarkoitus käyttää, voidaan tarvita kokeilu selvittääksesi, kuinka paljon RAM -muistia käytetään lepotilaan, ja valitse arvo, joka perustuu saatuihin tulosten perusteella. Onneksi voit muodostaa keinutiedoston milloin tahansa, ei välttämättä Linux -asennuksen vaiheessa.

Suositellut Swap -tiedoston koot Linuxissa Fedoran dokumentaatiossa

Vaihtotiedoston luominen Linuxissa

Pumppaustiedoston luomismenettelyssä Linuxissa on useita vaihtoehtoja, joista toista pidetään perinteisellä ja toinen kiihdytettynä.

Aluksi tutustumme Quick Way -tapahtumaan, joka koostuu yhden joukkueen käytöstä:

Fallote -l 2g/swapfile

Tässä toinen parametri osoittaa luodun tiedoston koon, joka on ilmaistu GB: ssä (jos kirjainta ei ole osoitettu, järjestelmä tulkitsee parametria suunnittelutoimistossa, tämä on otettava huomioon).

Tässä tapauksessa tiedosto luodaan ja saatavana heti komennon suorittamisen jälkeen, joten on suositeltavaa käyttää tätä tiettyä menetelmää.

Toinen vaihtoehto, perinteinen:

Dd if =/dev/nolla =/swapfile bs = 1m count = 2096

Tässä BS -parametri osoittaa, missä yksiköissä asetamme yhden lohkon koon vaihtotiedostolle. Tässä tapauksessa - 1 megabyt. Laskentaparametri osoittaa pumppaustiedostolle allokoiduiden tällaisten lohkojen lukumäärän, ja yhteensä 2 Gt saadaan, kuten ensimmäisessä versiossa.

Itse DD-tiimi Linuxissa tarkoittaa sävelkorkeuden kopioita, jos parametri osoittaa, mihin kopioidaan, meidän tapauksessamme se on /dev /nolla- erityistiedosto nolla tavulla. Parametri osoittaa, että tallennamme nämä nollatavut /swapfile -tiedostoon.

Huomaa, että tätä komentoa käytettäessä virhettä ei voida hyväksyä. Jos ilmoitat väärin parametrin, niin tärkeille tietoille on mahdollisuus vaurioittaa.

Jos määrittelit pumppaustiedoston riittämättömän koon (tämä saattaa selvittää paljon myöhemmin), lisää tai yksinkertaisesti muuttaa Swap Ubuntun kokoa, voit sammuttaa nykyisen (miten tämä tehdään, me kerromme sinulle myöhemmin) ja Sen luominen uudelleen tässä annetun algoritmin mukaisesti oikean koon kanssa.

Kuinka kytkeä vaihtotiedosto

Pumppaustiedosto on tärkeä käyttöjärjestelmän näkökulmasta, ja sen muokkaaminen voi johtaa sen romahtamiseen. Siksi on tärkeää rajoittaa pääsyä vaihtoon seuraavalla komennolla:

CHMOD 600 /SWAPFILE

Seurauksena on, että vain juurten käyttäjällä (järjestelmänvalvojan analogilla Windowsissa) on oikeus lukea ja kirjoittaa siihen).

Lisävaihtotiedoston asetus on muuntaa /swapfile pumppaustiedostoksi komennolla

Mkswap/swapfile

Ja lopullinen joukkue, jonka toiminnan on kytkeä vaihto järjestelmään (sen sisällyttäminen):

Swapon/swapfile

Nyt hän on täysin valmis työskentelemään.

Vaihdon lisääminen automaattiseen lastaukseen

Joten jokaisen uudelleenkäynnistyksen jälkeen, jotta pumppaustiedostoa ei liitetä järjestelmään edellisen osan uusimpaan komentoon, kirjoitamme /etc /fstab -tiedostoon millä tahansa tekstieditorilla, jota käytetään jokaisessa Linux -latauksessa:

/Swapfile Ei mitään vaihda oletusarvot 0 0

Tietokoneen uudelleenkäynnistyksen jälkeen voit tarkistaa Free -M -komennon oikean toiminnan.

Kuinka puhdistaa vaihtaminen Ubuntussa

Joskus voi olla tarpeen vapauttaa tila väliaikaisesti levylle, ja usein pumppaustiedosto on ainoa todellinen ehdokas näihin tarkoituksiin.

Vaihtopuhdistus (tai pikemminkin irrottaa) suoritetaan komennolla

Swapoff -a

Sisällyttäminen tehdään komennolla

Swapon -a

Neuvoja. Vaihtoa ei ole suositeltavaa irrottaa tällä tavalla, koska tiedot ovat yksinkertaisesti nolla, siirtymättä RAM -muistiin. Jos järjestelmäprosessit käyttävät ne voivat seurata järjestelmän romahtamista.

Jos päätät kieltäytyä käyttämästä pumppaustiedostoa, voit poistaa vaihdon seuraavasti:

CAT/PROC/SWAPS (Määritä vaihtotiedoston sijainti)

SWAPOFF/DIR/SWAPXXXXX (sammuta swing -tiedosto, tässä DIR on seurausta edellisen komennon suorittamisesta, ts. Hakemisto tiedostolla, ja SWAPXXXXX on itse swing -tiedoston nimi)

Rm /dir /swapxxxxx (poista tiedosto levystä)

Jos lisäsit vaihdon väyläkuormaan, sinun on poistettava se sieltä poistamalla vastaava rivi /etc /fstab -tiedostossa (esimerkiksi GEDIT -editori).

Mutta muista, että ilman vaihtotiedoston läsnäoloa järjestelmä voi toimia epävakaana, etenkin pienellä määrällä RAM -muistia, joten swing -tiedoston poistaminen luomalla uutta on erittäin suositeltavaa.