RAM-диск на Mac: команда в Терміналі й безкоштовна програма

RAM-диск на Mac: команда в Терміналі й безкоштовна програма

У Дисковій утиліті немає кнопки «Новий RAM-диск», але macOS уміє його створювати: дві вбудовані команди Термінала, hdiutil і diskutil, одним рядком створюють диск у пам’яті. Нижче команди, розрахунок розміру, як вийняти диск, чого цей спосіб не вміє і коли простіше скористатися програмою.

Коротко
  • RAM-диск на 2 ГБ: diskutil erasevolume APFS RAMDisk $(hdiutil attach -nomount ram://4194304)
  • Розмір задається в секторах по 512 байтів: гігабайти × 2097152.
  • Вийміть диск у Finder або командою hdiutil detach: файли зникнуть, пам’ять повернеться.
  • Після перезавантаження диска теж не буде. Exlade RamDisk, безкоштовна програма, повертає його разом із файлами.

Як створити RAM-диск у Терміналі

Відкрийте Термінал («Програми» → «Утиліти») і виконайте один рядок. Цей створює диск на 2 ГБ з назвою RAMDisk:

diskutil erasevolume APFS RAMDisk $(hdiutil attach -nomount ram://4194304)
  • hdiutil attach -nomount ram://4194304 створює блоковий пристрій у пам’яті й виводить його назву, наприклад /dev/disk4.
  • diskutil erasevolume APFS RAMDisk ... форматує цей пристрій і монтує його як /Volumes/RAMDisk. Він з’являється у Finder, як USB-флешка.
  • Для Mac OS Extended напишіть HFS+ замість APFS. Для тимчасового диска підходять обидві.

Ні sudo, ні пароль адміністратора не потрібні.

Скільки секторів

Число після ram:// означає кількість секторів по 512 байтів, а не мегабайти. Один гігабайт дорівнює 1024 × 1024 × 1024 / 512 = 2097152 секторам, один мегабайт дорівнює 2048.

Розмір диска Сектори Що написати
512 МБ 1048576 ram://1048576
1 ГБ 2097152 ram://2097152
2 ГБ 4194304 ram://4194304
4 ГБ 8388608 ram://8388608
8 ГБ 16777216 ram://16777216

diskutil erasevolume стирає будь-який пристрій, який ви йому вкажете. Залишайте форму $(...), щоб команда отримала RAM-пристрій від hdiutil, і ніколи не вводьте номер диска вручну, якщо не перевірили його в diskutil list.

Яка версія macOS: ці команди є в macOS багато років і досі працюють у macOS 15 Sequoia та macOS 26 Tahoe, на Apple Silicon та Intel. На сторінці довідки hdiutil досі є приклад із ram://. Для APFS потрібна macOS 10.13 High Sierra або новіша; HFS+ працює всюди.

Як вийняти RAM-диск

Натисніть кнопку виймання поруч із диском у Finder або виконайте одну з цих команд із назвою пристрою, яку вивела hdiutil:

hdiutil detach /dev/disk4
diskutil eject disk4

Якщо ви загубили назву, hdiutil info або diskutil list покаже її знову. Усе на диску буде видалено, а macOS отримає пам’ять назад.

Чого не вміє спосіб із Терміналом

Переваги
  • Вбудовано в macOS, нічого не треба встановлювати
  • Без прав адміністратора
  • Диск на один сеанс або одну велику збірку
Обмеження
  • Зникає після перезавантаження разом з усіма файлами
  • Фіксований розмір: щоб змінити його, вийміть диск і створіть знову
  • Пам’ять повертається лише тоді, коли ви виймаєте диск
  • Не створюється під час входу, якщо ви не напишете для цього скрипт
  • Кеші, як-от DerivedData, доводиться переносити вручну

Щоб диск з’являвся під час кожного входу, помістіть команду в shell-скрипт і запускайте його через LaunchAgent: файл .plist у ~/Library/LaunchAgents з RunAtLoad. Диск однаково з’являтиметься порожнім: збереження й відновлення файлів лягає на ваш скрипт.

Спосіб із програмою: Exlade RamDisk для Mac

Exlade RamDisk є безкоштовною програмою для RAM-дисків для macOS 15 і новіших, на Apple Silicon та Intel. Вона працює зі смуги меню, не потребує прав адміністратора й безкоштовна для дому та роботи. Вона також працює у Windows і Linux: див. допис про випуск.

  Термінал Exlade RamDisk
Після перезавантаження зникає створюється знову, файли зберігаються за бажанням
Зміна розміру вийняти й створити знову будь-коли, файли залишаються
DerivedData, кеш npm переносити вручну шаблони переносять їх
Шифрування додаткові команди diskutil apfs шифрування APFS, випадковий ключ
Мало пам’яті стежите самі зберігає файли, пропонує вийняти невикористовувані диски
Установіть

Завантажте програму зі сторінки завантаження і перетягніть її в «Програми» або встановіть через Homebrew разом з інструментом eramdisk:

brew install --cask exlade-ci/tap/exlade-ramdisk
Створіть диск

Натисніть «Новий RAM-диск» і задайте назву й розмір або виберіть шаблон: «Xcode» створює диск на 8 ГБ для DerivedData, «npm» диск на 2 ГБ для кешу npm. Також можна перенести кеші Swift Package Manager, CocoaPods, Homebrew і Chrome та TMPDIR. Xcode і npm отримують нове розташування у своїх налаштуваннях (перезапустіть Xcode), TMPDIR діє для програм, запущених після цього, а інші папки замінюються посиланням, тож програми зберігають свої шляхи.

Збережіть диск після перезавантаження

Увімкніть «Створювати під час запуску RamDisk» і, якщо файли важливі, «Зберігати файли між запусками»: вони зберігаються кожні 5, 10 або 30 хвилин і перед переходом у режим сну. Потім увімкніть «Відкривати під час входу» в параметрах.

Нехай програма стежить за пам’яттю

У «Параметри» → «Поведінка» параметр «Діяти, коли не вистачає пам’яті» зберігає файли, які треба зберігати, і пропонує вийняти диски, якими ніщо не користувалося 10 хвилин. Заповнений диск можна збільшити.

Параметри Exlade RamDisk на Mac, вкладка «Поведінка»: коли диск майже заповнено, дії за нестачі пам’яті, виймання невикористовуваних дисків

Для розробників: які папки переносять шаблони, описано на сторінці папки й шаблони Exlade RamDisk.

Поширені запитання

Як зробити, щоб RAM-диск створювався під час запуску Mac?

Сама macOS цього не робить. Або запускайте команду Термінала з LaunchAgent під час входу, або скористайтеся програмою: в Exlade RamDisk увімкніть для диска «Створювати під час запуску RamDisk», а в параметрах «Відкривати під час входу».

Скільки секторів у 8 ГБ?

16777216: 8 × 1024 × 1024 × 1024 байтів, поділені на 512. Для будь-якого розміру множте гігабайти на 2097152 або мегабайти на 2048.

APFS чи HFS+?

Підходять обидві. HFS+ (Mac OS Extended) цілком годиться для тимчасового диска. Якщо потрібен зашифрований RAM-диск, він має бути APFS: Exlade RamDisk завжди використовує APFS для зашифрованих дисків.

Чи працює RAM-диск на Apple Silicon?

Так. Команди Термінала однакові на Mac із чипами серії M та Intel, а Exlade RamDisk є універсальною програмою. На Apple Silicon пам’ять спільна з GPU, тож на Mac із 8 ГБ робіть диск невеликим. Див. також керування пам’яттю в Exlade RamDisk.

Завантажте Exlade RamDisk безкоштовно

Windows 10 і 11, macOS 15 і новіші, Ubuntu, Debian і Fedora. Без реєстрації та без пробного періоду.

Завантажити безкоштовно Можливості