Створіть "RAMDisk" у своєму дистрибутиві Linux

Значок RAMDisk

Як відомо, швидкість доступу до пам'яті дуже важлива. Вузькі місця, створені в минулому між магнітними пам'ятями та процесорами, означали, що потрібно було включити швидшу буферну пам'ять, ОЗП. Пізніше, з розвитком мікропроцесорів, з'явився кеш, ще швидше запропонував буфер між оперативною пам'яттю та регістрами центрального процесора. Зовсім недавно з'явилися жорсткі диски SSD, які швидші за магнітно-механічні жорсткі диски, оскільки вони засновані на флеш-пам'яті.

Gigabyte кілька років тому думав створити жорсткий диск з оперативною пам'яттю (RAMDisk, який називається i-RAM), дуже швидка пам'ять у порівнянні з жорсткими дисками, але щось подібне сталося з тим, що сталося з Ageia з її картою PhysX. Вони насправді не гелювались і в кінцевому підсумку зникли з ринку, і тепер із твердотільними накопичувачами (і твердотільними накопичувачами на основі оперативної пам'яті) це має ще менший сенс. Про що це? Ну, в основному він використовує пам’ять RAM для зберігання даних так, ніби це жорсткий диск, тому доступ набагато швидший.

Ну, вам не потрібна i-RAM чи SSD, або щось подібне, щоб пришвидшити передачу та доступ до потрібних каталогів, файлів чи програм. Для цього ви можете створити RAMDisk на вашому дистрибутиві Linux. Єдина вимога - мати достатню кількість оперативної пам’яті, рекомендовану> 4 Гб, щоб трохи її зарезервувати для використання як надшвидкий «жорсткий диск». Щось на зразок того, що робили деякі графічні процесори для ноутбуків із Share Memory, але в даному випадку для ваших даних.

Щоб створити цю пам’ять, ви повинні розрахувати пам’ять, яка у вас є, оскільки якщо ви вичерпаєте всю або значну її частину, у вас закінчиться оперативна пам’ять для цілей, для яких вона була створена, і це буде дурним. Наприклад, якщо у вас 8 ГБ оперативної пам'яті, ви можете взяти 2 ГБ для RAMDisk. Повторюю, його справа в тому, що у вас більше оперативної пам'яті, якщо у вас 2 ГБ або 4 ГБ, це може не коштувати ... (пам’ятайте в "size =" вкажіть розмір, у моєму прикладі я вибрав 1024 МБ, тобто, 1 Гб, або ви також можете використовувати "G" замість "M", щоб вказати його в ГБ) Коли ви це знаєте, ми починаємо працювати з наступні кроки з вашого терміналу:

mkdir /tmp/ramdisk

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

Тепер у вашій оперативній пам’яті зарезервовано 1 ГБ, щоб ви могли додати все, що завгодно, до створеної нами директорії ramdisk. Зробіть тести продуктивності, і ви побачите, як це швидше все, що у вас є ... Якщо хочете, ви можете створити розділ у своїй оперативній пам'яті з іншою файловою системою, відмінною від tmpfs, наприклад ext4 або ramfs.

І якщо ви хочете, щоб вхід для монтажу залишався ... Будьте обережні !! Дані, які ви збережете тут, якщо ви вимкнете ПК або перезавантажитеся, будуть втрачені, але вхідні дані залишатимуться pтак що вам не доведеться створювати розділ при кожному запуску з наступним трюком, щоб додати його до таблиці розділів (fstab), щоб він створювався автоматично (використовуйте улюблений текстовий редактор для редагування введення: 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"

ВАЖЛИВО: Пам'ятайте, що ваші дані зникнуть при перезапуску або вимкненні комп’ютера, оскільки оперативна пам’ять - це енергія, що змінюється. Отже, все, що ви хочете зберегти, зробіть його копію на розділі на жорсткому диску.


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: AB Internet Networks 2008 SL
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.

  1.   Маурісіо - сказав він

    У мене питання, як тільки ми вимкнемо обладнання, чи будуть дані і надалі залишатися в пам'яті? Я кажу це, оскільки оперативна пам'ять нестабільна. Буду вдячний, якби ви пояснили мені це.

    1.    Ісаак ПЕ - сказав він

      Привіт

      Ви маєте рацію, я забув прокоментувати у статті, що, оскільки вона нестабільна, вона буде видалена кожного разу, коли ви запускаєте комп'ютер. Дякую за нагадування, я вже додав його. Це щось дуже важливе, що не слід залишати без уваги, щоб ніхто не втратив свої дані.

      Вітаю і сподіваюся, що я допоміг. Дякую!!!

      1.    Маурісіо - сказав він

        Я бачив, що є програми, які роблять цей розділ. Ці програми роблять це створення зображення на жорсткому диску даних, що знаходяться в оперативній пам’яті, щоб при перезавантаженні вони не були втрачені. Потім, коли система запускається, як я розумію, дані, збережені на жорсткому диску, скидаються в оперативну пам’ять, щоб ми могли використовувати їх знову. Дякуємо за нотатку та швидко відповіли! Вітаю!

  2.   Леопольдо Кантільйо - сказав він

    Цікаво, це подумати про деякі практичні програми, сценарій, який створює цей розділ оперативної пам'яті на початку і завантажує цікаві файли, не буде корисним ... розмістити базу даних ...? ви повинні дослідити тему ... дякую за примітку.

  3.   Султанович - сказав він

    це може працювати лише з деталізацією fs. У моїх тестах це працювало лише наступним чином:

    mount -t tmpfs tmpfs / tmp / ramdisk -o розмір = 300м

  4.   Ісмаель - сказав він

    Неймовірно, пишність, яку можна зробити за допомогою GNU / LINUX. :)

  5.   Джиммі Олано - сказав він

    Як щодо того, щоб ми використали цей RAMDisk для розділу "tmp"?

    Щоб мати можливість, можливо, потрібно буде поставити код, я не прошу коду, Я Я ПРОСЯ ПРО ПРАКТИЧНІСТЬ ТЕМИ, ВИКОРИСТАТИ ЙОГО. Зауважу, що для баз даних, хоча я добре пам’ятаю, вже існує опція підтримки таблиць баз даних в оперативній пам’яті, наприклад: https: // dev.mysql.com/doc /refman/5.5/en/ storage-engine -setting. html

  6.   анонімний - сказав він

    Якщо вам пощастить і перетягнуть протягом останніх 20 років, ви зможете мати 64 ГБ оперативної пам'яті і, отже, зможете скопіювати файл віртуального жорсткого диска VirtualBOX (або будь-якої іншої віртуальної машини) в оперативну пам'ять; Я припускаю, що цей файл не займає більше 48 ГБ (щоб залишити достатньо вільної оперативної пам'яті для Linux та для віртуальної машини). Таким чином віртуальна машина літає, і якщо ви також хочете, щоб зміни у віртуальній машині були втрачені (незмінність), вам більше не потрібно буде втрачати продуктивність, роблячи віртуальний жорсткий диск машини незмінним, тому що перед запуском ви копіюєте це з NVMe / SSD / HDD в оперативну пам'ять, а потім при вимкненні те, що знаходиться в оперативній пам'яті, втрачається (саме те, що бажано в цьому випадку, щоб вам потрібна незмінність).

    Отже, з такою великою кількістю оперативної пам'яті ви можете зробити образ жорсткого диска не незмінним і фіксованого розміру, отримавши максимально можливу продуктивність у доступі, що разом із тим, що згаданий жорсткий диск буде в оперативній пам'яті, це робить захоплення при роботі з віртуальними машинами (лише по одному вириванню за раз).

    Після закінчення використання віртуальної машини ви хочете зберегти стан віртуального жорсткого диска, оскільки він копіюється з оперативної пам'яті на NVMe / SSD / HDD.

    Що я бачив, вже є деякі NVMe, які здатні читати зі швидкістю трохи більше 5 ГБ / с (так, п’ять гігабайт в секунду при читанні), і що використання лише одного (у RAID0 або подібному буде ще швидшим) для копіювання віртуальний образ жорсткого диска 48 ГБ з нього в оперативну пам'ять займає лише близько десяти секунд, оле!
    До мінусів при протилежному процесі (від оперативної пам’яті до NVMe) найшвидше, що я бачив на даний момент, становить трохи більше 3 Гб / с в письмовій формі (так, три гігабайти в секунду в письмовій формі), тому збереження зображення віртуальної жорсткої 48 ГБ диск від оперативної пам'яті до NVMe займає лише близько вісімнадцяти секунд, знову величезна оле!

    У нас буде одна з найшвидших NVMe та 64 ГБ оперативної пам’яті з Linux та віртуальна машина з, наприклад, Windows 10, це цілком пропуск, якщо оперативна пам’ять використовується для розміщення жорсткого диска віртуальної машини.

    А тепер подарунок для Linux ... вже існує пакет під назвою "ramroot" (принаймні здається, що для дистрибутивів на базі Arch), який під час завантаження відповідає за копіювання всього кореня системи Linux в оперативну пам'ять і продовження завантаження з оперативної пам'яті, за допомогою якої ми також отримуємо незмінність в Linux, який ми використовуємо, не кажучи вже про те, що він буде працювати з оперативної пам'яті, за рахунок дещо збільшення часу завантаження.

    Якщо той, хто читає це, знає завантажувальні дистрибутиви Linux з CD / USB, які копіюються в оперативну пам'ять під час запуску (наприклад, SystemRescueCD тощо), вони знатимуть переваги, які він надає: Він завжди запускається однаково, він завжди проходить якомога швидше оскільки все є в оперативній пам'яті, нічого не записується на фізичні диски під час запуску або під час використання Linux (щось дуже корисне для продовження життя твердотільного накопичувача, особисто менш ніж за місяць і з записаним менше терабайта, деякі твердотільні накопичувачі вже залишились мені працювати, зокрема 120 Гб марки KingDian), за винятком випадків, коли ми монтуємо щось у режимі читання та записування та зберігаємо щось там, поєднуючи це з віртуальною машиною, система "летить" при доступі до диска, оскільки всі переходять до оперативної пам'яті.

    Наявність усієї оперативної пам'яті Linux значно подовжує термін експлуатації твердотільних накопичувачів та NVMe, оскільки їм нічого або майже нічого не записується під час завантаження і колись абсолютно нічого не завантажується, якщо ми самі цього не робимо.

    Мої тести проводились на Ryzen 7 2700X (4.35 ГГц з 8 ядрами та 16 потоками) з 64 ГБ DDR4 3200 МГц та 1050 ГБ NVidia 4 Ti Graphics.

    Примітка: Є материнські плати, які навіть підтримують 1 ТБ оперативної пам'яті та мікрофони з 64 потоками, такі як ThreadRipper 2 тощо.

  7.   Marcos - сказав він

    Ваш коментар дуже цікавий, але ми не повинні перебільшувати з необхідною оперативною пам’яттю: у мене є образ Windows 10 VDI, який важить лише 13 ГБ, з 14 ГБ оперативної пам’яті він би працював з абсолютною легкістю.

    Я не дуже чітко розумію, як монтувати всю операційну систему в оперативну пам'ять, що це не надто багато. Якщо ваш твердотільний накопичувач відформатований у BTRFS з увімкненим поточним стисненням (на диск записується набагато менше даних), оскільки при встановленні пакунків у системний розділ записуються майже лише дані (що, очевидно, ми хочемо, щоб він залишився в системному розділі). SSD / диск), файли конфігурації модифікуються (текстові файли незначного розміру, а стиснення BTRFS LZO залишає їх у ще більш незначному розмірі) і мало іншого, тому що, здається, трохи вбивати мух гарматні постріли; майте на увазі, що всі сучасні дистрибутиви motan / tmp в оперативній пам’яті, якщо у користувача більше 4 ГБ, я думаю про оперативну пам’ять, тож SSD / диск не зазнає найменшого зносу через багато тимчасових операцій, які написані, і це було те, що більше тростину, яку я поклав у розділ / кілька років тому.

    Інша справа будинок, там постійно записуються дані: кеші, налаштування, які змінюються раз у раз, якщо ми перенесли вікно, завантаження тощо. Там може бути цікаво працювати лише в оперативній пам’яті та синхронізуватися з диском, лише якщо ми цього дуже хочемо, хоча повинен бути якийсь інструмент (я не знаю, чи буде, я не здивуюсь, але поки я не прочитаю ваш коментар, я не замислювався над цим.) нагадати користувачеві, коли він збирається закрити сеанс, що в їх / домі є зміни, не зберігаючи, або навіть запитати нас, чи хочемо ми синхронізувати їх з диском, тому що, безумовно, половина часу ми забули б і вимкнули комп’ютер, щоб допомогти собі через півсекунди.

    "Існують материнські плати, які навіть підтримують 1 Тб оперативної пам'яті та мікрофони з 64 потоками, як ThreadRipper 2 тощо".

    Вже і стійки, які все ще підтримують набагато більше, але не відпустіть нас xD. Повернімось до планети Земля, де люди навряд чи можуть дозволити собі команду в 800 євро ...

    Привіт.

  8.   Marcos - сказав він

    "У мене є образ VDI для Windows 10, який важить лише 13 ГБ, з 14 ГБ оперативної пам'яті він би працював з абсолютною легкістю".
    Вибачте, я мав на увазі 24 Гб. Мій палець перейшов до наступної клавіші?