Failo naudojimas kaip apsikeitimo atmintis (SWAP)

Autorius: Maikel Llamaret Heredia Paskelbta. Svetainėje GUTL.

Seniai, GNU / Linux, apsiribojo vieno keitimosi atminties skaidinio naudojimu 128 MB, ką labai kritikavo Lino Torvaldso šerdies niekintojai.

Laimei, šiais laikais tokios ribos nėra, taip pat galima naudoti tiek apsikeitimo atminties, kiek reikia bet kurios sistemos poreikiams patenkinti.

Kartais, įdiegę savo sistemą, pastebime, kad reikia padidinti atmintį SWAP kurį sukonfigūravome diegimo metu, ką galima padaryti paprastai, padidinant šiems tikslams pasirinkto skaidinio dydį. Bet ... Ką daryti, jei nenorite liesti skaidinių lentelės?

Kas yra SWAP ir kaip jis veikia?

Keisti atminties vietą arba Keistisyra tai, kas žinoma kaip virtuali atmintis. Skirtumas tarp tikrosios ir virtualios atminties yra tas, kad virtualioji atmintis vietoj atminties modulio naudoja standžiojo disko vietą.

Kai baigsis tikroji atmintis, sistema dalį savo turinio nukopijuoja tiesiai į šią keičiamą atminties vietą, kad galėtų atlikti kitas užduotis.

Naudojant SWAP pranašumas yra papildomos atminties suteikimas, kurio reikia, kai tikra atmintis yra išeikvota ir reikia atlikti procesą. Trūkumas yra tas, kad dėl vietos standžiajame diske naudojimo lėtesnis kietojo disko naudojimas.

Naudokite failą kaip keitimo atmintį.

Šis metodas nereikalauja keisti standžiojo disko skaidinių lentelės. Idealiai tinka nepatyrusiems vartotojams, tiems, kurie nori išvengti rizikos rizikuodami keisdami kietojo disko skaidinių lentelę, arba tiems, kuriems reikalinga daugiau nei retkarčiais keičiama atmintis arba retkarčiais.

Atsižvelgiant į tai, kad apsikeitimo failą galima įdėti į bet kurį kietojo disko katalogą, komanda vykdoma dd, nurodant, kad bus rašomi nuliai (jei = / dev / nulis) sukurti failą / apsikeitimas (iš = apsikeitimo), 1024 baitų blokais (bs = 1024) kol baigsis tam tikras kiekis baitais (skaičius = [kiekis padaugintas iš bs vertės]). Šis pavyzdys atlieka aukščiau nurodytus veiksmus, kol bus baigti 524288000 baitai (padalinti iš 1024 lygu 512 MB):

Norėdami sukurti failą, kurį naudosime kaip SWAP, atidarysime konsolę ir įveskite šiuos duomenis (kaip šaknis):

dd if=/dev/zero of=/swap bs=1024 count=512000

Ankstesnis veiksmas gali užtrukti kelias sekundes, būkite kantrūs. Tada, norėdami suformatuoti sukurtą failą kaip apsikeitimo atmintį, vykdysime komandą mkswap, taip (visada kaip šaknis):

mkswap /swap

Jums bus grąžinta konsolės išvestis, panaši į šią:

Nustatoma 1 apsikeitimo vietos versija, dydis = 511996 KiB be etiketės, UUID = fed2aba5-77c6-4780-9a78-4ae5e19c506b

Norėdami suaktyvinti skaidinį ir nedelsdami jį naudoti operacinėje sistemoje, vykdykite komandą apsikeitimo. Mūsų atveju mes aktyvuosime kaip apsikeitimo atminties skaidinį / swap failą, kurį sukūrėme ir suformatavome SWAP atlikdami ankstesnius veiksmus:

swapon /swap

Norėdami patikrinti, ar naują apsikeitimo failą naudoja operacinė sistema, komandą atliksime dar kartą nemokamai ir pamatysime, kad naujojo failo talpa buvo pridėta prie pradinės SWAP atminties.

Kad šis failas būtų automatiškai naudojamas kaip apsikeitimo atmintis, kai bus paleista kita sistema, mes redaguosime  / etc / fstab (naudojant „nano“, „gedit“, „kate“, „kwrite“, „vim“ arba pasirinktą paprasto teksto redaktorių), pridedant atitinkamą eilutę taip, kur vietoj įrenginio dedamas sukurto apsikeitimo failo kelias:

Mes atidarome failą

nano /etc/fstab

Ir mes pridedame:

/swap         swap      swap     defaults               0 0

Paruošta !!!!

Mes galime iš naujo paleisti sistemą ir patikrinti, ar padidėjo mūsų apsikeitimo atmintis naudojant naują failą KEITIMASIS. Tiesiog tai, ką mes padarėme, yra sukurti failą sistemos šaknyje, jį suformatuoti SWAP ir pasakyk mūsų GNU / Linux naudoti ją kaip apsikeitimo atmintį kartu su skaidiniu, kurį jau buvome numatę šiam tikslui.

Kažkas paprasto, bet tai galėtų būti naudinga daugeliui iš mūsų ... be tolesnių veiksmų ...


25 komentarai, palikite savo

Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   khourtas sakė

    Užrašas puikus. Tik dabar tai priverčia susimąstyti apie vieną dalyką, ar galėčiau panašiai naudoti USB atmintinę? Jei turite šiek tiek seną įrangą ir atmintis yra sudėtinga arba per brangi (atrodo, kad kuo senesnė, tuo brangesnės yra atsarginės kompiuterių dalys), būtų gerai, jei atmintį galėtumėte išplėsti tik USB

    1.    „AurosZx“ sakė

      Taip, tai labai gerai, daugiau ar mažiau taip daro mano įdiegtas „zramswap“ (nemėgstu pertvarų salotų, nieko neatskiriu).
      Jei norite naudoti USB kaip apsikeitimo sandorį, tiesiog tam tikslui suformatuokite skaidinį ir įtraukite jį į fstab, pakeisdami / sukeiskite į / dev / sdb1 (darant prielaidą, kad jūsų USB kelias yra sdb1).

      1.    84 sakė

        būsite patenkinti btrfs ir jo dalimis

      2.    khourtas sakė

        Na, jei aš gerai supratau, kaip atlikti USB keitimą, bet galvojau daugiau apie kažką panašaus į papildomą RAM, nes USB bus fizinė atmintis, ir aš nenorėčiau laukti, kol ji viršys 60% atminties pradėti naudoti USB.

        Na ir matant @nonamed komentarą, tokių sprendimų priežastis (ir tik kaip indėlis, o ne kaip komandų karo pradžia ir su visa pagarba) tuo metu, kai jau yra komandų, kurių rezultatai geresni ir atrodo nereikalingas; Aš galiu sugalvoti 3 taškus:

        1-oji. Ir akivaizdžiausias - naudoti jį senoje įrangoje
        2-oji. Taip pat galvoju apie ne tokius naujus nešiojamuosius kompiuterius, kurių talpa yra 1 GB arba 2 GB, „MINUS“ atminties, skirtos vaizdo plokštei
        3 d. Na, tai akivaizdu, tiesa? Nes tai įdomu ir todėl, kad tai galima padaryti ... hehehe! XD

        Sveikinimas

        1.    k1000 sakė

          Arba, jei pamiršote sukurti SWAP ir nenorite netvarkauti su skaidinių lentele

        2.    Katekyo sakė

          Ar nusprendėte naudoti USB diską kaip RAM? To negalima padaryti, nes RAM skaitymo ir rašymo greitis yra daug greitesnis nei palaiko USB, taip pat USB bus sunaikintas po trumpo naudojimo laiko haha ​​ir tai būtų naudokite USB diską kaip papildomą SWAP

    2.    Altair sakė

      Taip, jūs sukuriate apsikeitimo skaidinį USB ir prijungiate jį naudodami sudo swapon / dev / sdX ir galite pridėti -s 60 prie jo, kad jis turėtų pirmenybę prieš kitus apsikeitimo skaidinius. Taip pat galite jį pridėti prie „fstab“, kad jis būtų automatiškai pritvirtintas, arba sukurti sukeitimo failą, kaip sakoma šiame puikiame usb vadove 😉

  2.   Slayerkornas sakė

    Puikus vadovas ir praktika tuo pačiu metu, kai trūksta apsikeitimo, nors ir sunku. Dabar aš pakartoju tą patį dalyką, bet USB atmintyje, kad duomenys būtų šiek tiek greičiau perkeliami iš fizinės atminties į keitimo atmintį.

  3.   elendilnarsil sakė

    Ačiū už informaciją. bet tai generuoja klausimą, galbūt kažką kvailo: ar sukūrus šį apsikeitimo failą, ar negalima ištrinti apsikeitimo skaidinio ???

  4.   bevardis sakė

    Kartais pagalvoju, ar tikrai verta apsikeitimą, visada turiu 0%, galbūt tai susiję su atmintimi, turiu 4Gb RAM, manau, kuo daugiau atminties yra mažiau prasmės naudoti apsikeitimo

    1.    Danielis Rojas sakė

      Taip, tai priklauso nuo atminties, kurią turite mašinoje. Aš taip pat visada turiu 0%, o turėdamas 4Gb RAM, aš suteikiu 512 MB tik apsikeitimo skaidiniui

      1.    pzero sakė

        Paskutiniame diegime pašalinau apsikeitimą. Nepaisant to, turėdamas 24 GB operatyviosios atminties, retkarčiais mačiau nedidelį keitimą (kelis KB), net ir tuo atveju, kai didelė dalis RAM nenaudojama. Kodėl? Neturiu idėjos

  5.   84 sakė

    Aš turėjau tai padaryti sabayone, aš negalėjau rasti priežasties, kodėl jis suvalgė visą RAM ir apsikeitimą.

  6.   Ponas Linux sakė

    Visada sakysiu, „FromLinix“ yra tinklaraštis numeris vienas, dėka šių įdomių straipsnių. Beje, radau raktą, kurį Yoyo išmetė iš kalėjimo, kur turi Elavą, manau, kad pasiliksiu.

    Sveikinimai Elavai.

  7.   merlinas debianitas sakė

    Labai naudinga ačiū už indėlį.

  8.   tinkamas sakė

    Tai lengviau
    lvm lvresize /dev/vg_laptpop/vl_swap -L +4G
    jei naudojate LVM clear (darant prielaidą, kad norite pakeisti 4gigas)

    1.    tinkamas sakė

      Tačiau tas indėlis yra p% $ motinai, anksčiau to nežinodamas, kiek formatų būčiau išsaugojęs

  9.   Invisible15 sakė

    Turiu du apsikeitimo skaidinius (po vieną kiekviename kietajame diske) ir turėdamas 1 GB RAM, naudoju mažiausiai 200–500 MB keitimo ...

  10.   kalh sakė

    Jei turite kelis senus USB rašymo įrenginius, galite pakeisti 0 N USB įrenginių RAID juostą, tokiu būdu pagreitindami keitimo našumą proporcingai pradūrusiems USB įrenginiams ir, kai tik įmanoma, kiekvienam skirtingame šakotuve - manau! . Jūs tiesiog turite informuoti save apie vietinę „RAID Linux“ palaikymą.
    nuoroda daugiau informacijos:
    http://www.kriptopolis.com/raid-1
    arba bendresnė paieška
    https://www.google.es/search?q=raid+por+soft+en+linux&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a&channel=fflb

    1.    kalh sakė

      Aš pamiršau pasakyti, kad reidą galima atlikti pertvaros lygiu. Taigi, jei USB spygliai nėra vienodo dydžio, galite padaryti mažiausio smaigo dydžio pertvaras, o likusias didesnių usb skyles galima naudoti kitiems dalykams ar daugiau mainų failo ar skaidinio lygiu ... o tai yra ne Ar įmanoma atlikti reidą su keliais mainų failais jūsų aprašytu metodu ???…

  11.   Carlos sakė

    Puiki pamoka, buvau paraginta padidinti turimą apsikeitimo sandorį. (Y)

  12.   jorge sakė

    Tai atrodo gerai. Pabandysiu su USB atmintimi.

  13.   „The Guillox“ sakė

    puikus ... ar jis veikia „Android“ mobiliajame telefone? Aš jau turiu pasirinktinį branduolį, bet nenoriu skaidyti SD. Spėju, kad tai turėtų pasiteisinti

  14.   delugas sakė

    Labai geras straipsnis.

    Kita įdomi „Linux“ apsikeitimo koncepcija yra „swappiness“:

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

  15.   Davidas Colemanas sakė

    Sveiki, mano vardas yra Davidas Colemanas, man 32 metai, iš Ohajo, studijuoju kompiuterių programavimą ir kompiuterių mokslus, kad per 4 metus įgyčiau asocijuotą laipsnį!
    Mano klausimas dėl programos (SWAP / be šaknies) APK yra paprastas po „swap / swp“ failo, kurį sukūriau 2Gb 999 MB × 2, iš esmės kaip tiksliai, kur jis turi būti saugomas? Aš naudoju 3Gb RAM 32 GB atminties kortelę +32 GB „SanDisk SD“ taip pat įkeliu „Stylo 5“, padidindamas mobilųjį neįsišaknijusią įrenginį, kai įkrovos įkėlimo programa yra atrakinta ir SIM atrakinta! Bet koks patarimas yra labai vertinamas, sveikintinas thx
    Urs SENCERLY, David Coleman 32 iš Ohajo JAV.. ?