Sukurkite „RAMDisk“ savo „Linux“ paskirstyme

„RAMDisk“ piktograma

Kaip žinote, atminties prieigos greitis yra labai svarbus. Anksčiau susidariusios kliūtys tarp magnetinių atmintinių ir procesorių reiškė, kad reikėjo įtraukti greitesnę buferinę atmintį, RAM. Vėliau, tobulėjant mikroprocesoriams, atsirado talpykla, dar greičiau, kad būtų galima pasiūlyti buferį tarp RAM ir CPU registrų. Visai neseniai pasirodė SSD standieji diskai, kurie yra greitesni nei magnetiniai-mechaniniai HDD, nes jie yra pagrįsti „flash“ atmintimi.

„Gigabyte“ prieš kelerius metus sugalvojo sukurti kietąjį diską su RAM („RAMDisk“, vadinamas „i-RAM“), labai greita atmintis, palyginti su standžiaisiais diskais, tačiau kažkas panašaus nutiko ir „Ageia“ su jos „PhysX“ kortele. Jie tikrai negelėjo ir galiausiai dingo iš rinkos, o dabar su SSD (ir RAM pagrindu veikiančiais SSD) tai dar mažiau prasmės. Apie ką tai? Na, iš esmės jis naudoja RAM atmintį duomenims laikyti, tarsi tai būtų standusis diskas, todėl prieiga yra daug greitesnė.

Na, jums nereikia i-RAM ar SSD, ar nieko panašaus, kad pagreitintumėte perkėlimą ir prieigą prie norimų katalogų, failų ar programų. Už tai galite sukurkite RAMDisk savo Linux distributore. Vienintelis reikalavimas yra turėti pakankamai RAM (rekomenduojama> 4 GB), kad rezervuotumėte šiek tiek jos naudoti kaip ypač greitą „standųjį diską“. Kažkas panašaus į tai, ką kai kurie nešiojamųjų kompiuterių GPU darė naudodami „Bendrąją atmintį“, bet šiuo atveju - jūsų duomenims.

Norėdami sukurti šią atmintį, turite apskaičiuoti turimą atmintį, nes jei išnaudosite visą ar didelę jos dalį, pritrūks RAM tiems tikslams, kuriems ji buvo sukurta, ir bus kvaila. Pavyzdžiui, jei turite 8 GB RAM, galite paimti 2 GB RAMDiskui. Kartoju, jo dalykas yra tas, kad turite daugiau RAM, jei turite 2 GB ar 4 GB, gali būti, kad neverta ... (atminkite, kad „size =“ nurodykite dydį, savo pavyzdyje pasirinkau 1024 MB, tai yra, 1 GB arba galite naudoti „G“, o ne „M“, kad nurodytumėte jį GB). Kai tai žinosite, imsimės darbo su atlikite šiuos veiksmus iš savo terminalo:

mkdir /tmp/ramdisk

mount -t tmpfs none /tmp/randisk -o size=1024M

Dabar jūsų RAM yra rezervuotas 1 GB, kad galėtumėte pridėti viską, ką norite, į mūsų sukurtą „ramdisk“ katalogą. Atlikite našumo testus ir pamatysite, kaip tai greičiau viską, ką turite ... Jei norite, galite sukurti skaidinį savo RAM naudodami kitą failų sistemą, išskyrus tmpfs, pvz., ext4 ar ramfs.

Ir jei norite, kad montažo įvestis liktų ... Būkite atsargūs! Duomenys, kuriuos išsaugosite čia, jei išjungsite kompiuterį ar paleisite iš naujo, bus prarasti, tačiau įvestis liks pkad jums nereikėtų kurti skaidinio kiekvieno paleidimo metu su tokiu triuku pridėkite jį prie skaidinių lentelės (fstab), kad ji būtų sukurta automatiškai (įvesties redagavimui naudokite mėgstamą teksto rengyklę: vi, nano, gedit ...):

gedit /etc/fstab

Y en el fichero de texto que se abre crea la siguiente entrada sin comillas "tmpfs /mnt/ramdisk tmpfs nodev, nosuid, noexec, nodiratime, size=1024M 0 0"

SVARBU: Atminkite, kad jūsų duomenys dings, kai paleisite iš naujo arba išjungsite kompiuteris, nes RAM yra nepastovi atmintis. Taigi, ką norite pasilikti, padarykite jo kopiją standžiojo disko skaidinyje.


Palikite komentarą

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

*

*

  1. Už duomenis atsakingas: AB Internet Networks 2008 SL
  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.   mauricio sakė

    Turiu klausimą, ar išjungus įrangą duomenys ir toliau išliks atmintyje? Aš tai sakau, nes RAM yra nepastovi. Būčiau dėkingas, jei galėtumėte man tai paaiškinti.

    1.    Izaokas PE sakė

      Sveiki,

      Jūs teisus, pamiršau straipsnyje pakomentuoti, kad būdamas nepastovus, jis bus ištrintas kiekvieną kartą paleidus kompiuterį. Ačiū, kad priminėte, aš jau jį pridėjau. Tai labai svarbu, ko negalima pamiršti, kad niekas neprarastų savo duomenų.

      Džiaugsmas ir viltis, kad padėjau. Dėkoju!!!

      1.    mauricio sakė

        Aš mačiau, kad yra programų, kurios atlieka šį skaidinį. Šios programos daro tai, kad kietajame diske yra duomenų, esančių RAM atmintyje, vaizdas, kad, iš naujo paleidus, jie neprarastų. Tada, kai sistema paleidžiama, kaip suprantu, kietajame diske išsaugoti duomenys išmetami į RAM, kad galėtume juos vėl naudoti. Dėkojame už užrašą ir už greitą atsakymą! Sveikinimai!

  2.   Leopoldas Kantiljas sakė

    Įdomu tai apgalvoti kai kurias praktines programas, scenarijų, kuris pradžioje sukuria šį RAM skaidinį ir įkelia dominančius failus. Tai nebus naudinga ... įdėti duomenų bazę ...? jūs turite ištirti temą ... ačiū už užrašą.

  3.   Sultanovičius sakė

    jis gali dirbti tik išsamiai aprašydamas fs. Mano bandymuose jis veikė tik taip:

    mount -t tmpfs tmpfs / tmp / ramdisk -o dydis = 300m

  4.   Izmaelis sakė

    Neįtikėtina, didybės, kurias galima padaryti naudojant GNU / LINUX. :)

  5.   Džimis Olano sakė

    Kaipgi mes naudojame tą RAMDisk „tmp“ skaidiniui?

    Kad galėčiau, galėčiau, reikės įdėti kodą, aš neprašau kodo, kurio klausiu apie dalyko praktiškumą, juo naudotis. Atkreipiu dėmesį, kad duomenų bazėms, nors ir gerai prisimenu, jau yra galimybė palaikyti duomenų bazių lenteles RAM atmintyje, pavyzdžiui: https: // dev.mysql.com/doc /refman/5.5/en/ storage-engine -setting. HTML

  6.   anoniminis sakė

    Jei jums pasisekė ir vilkite per pastaruosius 20 metų, galėsite turėti 64GiB operatyviosios atminties ir tokiu būdu galėsite nukopijuoti virtualų „VirtualBOX“ (ar bet kurios kitos virtualios mašinos) standžiojo disko failą į RAM; Manau, kad šis failas neužima daugiau nei 48GiB (kad liktų pakankamai laisvos operatyviosios atminties „Linux“ ir virtualiajai mašinai). Tokiu būdu skrieja virtuali mašina, o jei taip pat norite, kad virtualios mašinos pakeitimai būtų prarasti (nekintamumas), jums nebereikės prarasti našumo, kai paversite virtualų mašinos standųjį diską nekintamu, nes prieš jį paleisdami nukopijuosite prarandama iš NVMe / SSD / HDD į RAM ir tada išjungiama visa, kas yra RAM (tik tai, ko šiuo atveju norima, tai yra nekintamumas).

    Taigi, turėdami tiek daug RAM, kietojo disko vaizdas gali būti nekintamas ir fiksuoto dydžio, kad pasiektumėte maksimalų įmanomą prieigos našumą, kad kartu su tuo, kad minėtas standusis diskas bus RAM, tai padarys tikrą malonumai tvarkant virtualias mašinas (vienu metu tik vienas išplėšimas).

    Kai baigsite naudotis virtualia mašina, norite išsaugoti virtualaus standžiojo disko būseną, nes jis nukopijuojamas iš RAM į NVMe / SSD / HDD.

    Kad mačiau, jau yra keletas NVMe, galinčių skaityti šiek tiek didesniu nei 5GiB / s greičiu (taip, penki gigabaitai per sekundę skaitant) ir kad kopijavimui naudoti tik vieną (naudojant RAID0 ar panašiai būtų dar greičiau) 48GiB virtualaus kietojo disko vaizdas iš jo į RAM trunka tik dešimt sekundžių, olé!
    Pagal minusus, kai darau priešingą procesą (nuo RAM iki NVMe), kol kas greičiausiai mačiau, yra šiek tiek daugiau nei 3GiB / s raštu (taip, rašant trys gigabaitai per sekundę), taigi išsaugant 48GiB virtualaus vaizdo atvaizdą važiuoti iš RAM į NVMe trunka tik aštuoniolika sekundžių, vėlgi didžiulė olé!

    Mes turėsime vieną iš greičiausių „NVMe“ ir 64GiB operatyviosios atminties su „Linux“ ir virtualią mašiną su, pavyzdžiui, „Windows 10“. Tai yra gana praeinantis dalykas, jei RAM naudojama virtualiosios mašinos standžiajam diskui laikyti.

    Dabar dovana „Linux“ ... jau yra paketas, vadinamas „ramroot“ (bent jau atrodo, kad „Arch“ pagrindu veikiantiems paskirstymams), kuris įkrovos metu yra atsakingas už visos „Linux“ sistemos šaknies nukopijavimą į RAM ir toliau įkrovą iš RAM, su kuria taip pat gauname nekintamumą naudojamoje „Linux“ sistemoje, jau nekalbant apie tai, kad ji veiks iš RAM, šiek tiek padidindama įkrovos laiką.

    Jei kas nors tai skaito, žino iš „CD / USB“ įkeliamą „Linux“ distros, kurie paleidimo metu nukopijuojami į RAM (pvz., „SystemRescueCD“ ir kt.), Jie žinos savo teikiamą naudą: ji visada prasideda taip pat, visada vyksta kuo greičiau nes viskas yra RAM atmintyje, nieko neįrašoma į fizinius diskus paleisties metu ar naudojant „Linux“ (tai labai naudinga norint pratęsti SSD gyvenimą, asmeniškai mažiau nei per mėnesį ir parašius mažiau nei terabaitą, kai kurie SSD jau yra palikti dirbti, ypač 120 GB prekės ženklo „KingDian“), išskyrus akivaizdų atvejį, jei mes ką nors prijungiame skaitymo ir rašymo sistemoje ir ten ką nors išsaugome, derindami tai su virtualia mašina, sistema „skrenda“ prieigose prie disko, nes visi eina į RAM.

    Visų „Linux“ operatyviųjų atmintinių naudojimas labai prailgina SSD ir NVMe naudingo tarnavimo laiką, nes įkrovimo metu jiems nieko nėra parašyta arba beveik nieko ir, kai tik mes nieko nepadarome, įkrovos metu jie nieko nepaleidžia.

    Mano bandymai buvo atlikti su „Ryzen 7 2700X“ (4.35 GHz su 8 branduoliais ir 16 gijų) su 64GiB 4MHz DDR3200 ir 1050GiB NVidia 4 Ti grafika.

    Pastaba: yra pagrindinių plokščių, kurios palaiko net 1TiB RAM ir mikrofonus su 64 gijomis, pvz., „ThreadRipper 2“ ir kt.

  7.   Marcos sakė

    Jūsų komentaras yra labai įdomus, tačiau neturime perdėti reikalingos operatyviosios atminties: turiu „Windows 10 VDI“ vaizdą, kuris sveria tik 13 GB, o su 14 GB RAM jis veiktų visiškai lengvai.

    Man nėra labai aišku apie visos operacinės sistemos montavimą į RAM, kad tai nėra šiek tiek per daug. Jei jūsų SSD yra suformatuotas BTRFS formatu su įjungtu suspaudimu skrydžio metu (žymiai mažiau duomenų įrašoma į diską), nes įdiegus paketus į sistemos skaidinį rašomi beveik tik duomenys (kuriuos mes akivaizdžiai norime palikti SSD / diskas), konfigūracijos failai yra modifikuoti (nereikšmingo dydžio tekstiniai failai, o BTRFS suspaudimas LZO palieka dar nereikšmingesnį dydį) ir dar mažai, nes man atrodo, kad muses užmušti patrankų šūviais; turėkite omenyje, kad visi šiuolaikiniai „distros motan / tmp“ RAM atmintyje, jei vartotojas turi daugiau nei 4 GB, manau, kad tai yra RAM, todėl SSD / diskas nėra nusidėvėjęs dėl daugelio laikinų operacijų, kurios yra parašytos, o tai buvo dar daugiau nendrę įdėjau į / partition prieš kelerius metus.

    Kitas dalykas yra namai, ten nuolat rašomi duomenys: talpyklos, nustatymai, kurie laikas nuo laiko keičiasi, jei mes perkėlėme langą, atsisiuntimai ir kt. Čia gali būti įdomu dirbti tik RAM atmintyje ir sinchronizuoti su disku tik tuo atveju, jei to labai norime, nors turėtų būti koks nors įrankis (nežinau, ar bus, nenustebčiau, bet kol neperskaičiau jūsų komentaras, apie kurį negalvojau.) norėdamas vartotojui, kai jis baigs sesiją, priminti, kad jų / namuose yra pakeitimų neišsaugojus ar net paklauskite, ar norime juos sinchronizuoti su disku, nes tikrai pusę laiko mes pamiršome ir išjungėme kompiuterį, kad po pusės sekundės galėtume sau padėti pirmauti.

    "Yra pagrindinių plokščių, kurios palaiko net 1TiB operatyviosios atminties ir mikrofonus su 64 gijomis, pavyzdžiui," ThreadRipper 2 "ir kt."

    Jau ir lentynos, kurios vis dar palaiko daug daugiau, bet neleiskite mums eiti xD. Grįžkime į Žemės planetą, kur žmonės vargu ar gali sau leisti 800 eurų komandą ...

    Sveikinimai.

  8.   Marcos sakė

    "Turiu VDI" Windows 10 "vaizdą, kuris sveria tik 13 GB, o su 14 GB RAM jis veiktų visiškai lengvai."
    Atsiprašau, turėjau omenyje 24 GB. Ar mano pirštas nuėjo prie kito rakto?