Linux корневой раздел в RAM

Привет Хабр!
Есть мощный комп с 16Гб оперативной памяти и хорошим UPS.
Трудится на нём Linux и всё работает хорошо.
Но душа просит идеала суперскорости в системе. Заранее предположим что вопросы надёжности и сохранности данных при сбоях отодвинуты на задний план.
Создавать обычные диски в RAM мы уже научились, это просто и понятно. «Тяжелый» кеш уже хранится там.
Но, думаю, закинуть в RAM можно и корневой раздел. Пусть это, возможно, и увеличит скорость загрузки и выключения системы.
Live СD нас не устроит, т.к. нам нужно сохранять изменения в корневом разделе.
Системный раздел (/) занимает 4 Гб, места в RAM должно хватить с избытком.
Когда то я сталкивался с мануалом создания «волшебной» usb флешки с которой образ системы выгружался в RAM и, при выключении, с изменениями выгружался обратно. Но, увы, пока ничего подобного не нашёл
Кто нибудь сталкивался с такими задачами?
Заранее спасибо за помощь.
  • Вопрос задан
  • 3598 просмотров
Пригласить эксперта
Ответы на вопрос 1
@rPman
Когда то давно считал, что будет быстрее, грузиться нормально или скопровать образ системы в память и грузиться уже с нее, разница была незначительная и в смысле — грузить образ в память оказывалось дольше (больше данных считывалось), а если и будет экономия (если систему хорошо почистить от лишних данных), то только за счет уменьшения seek-to-seek запросов.

Если памяти много, то все необходимое легко кешируется (например простейшим tar --one-file-system -c / > /dev/null или еще лучше собрать самостоятельно список необходимых файлов)

p.s. еще у меня были эксперименты по ускорению кеширования записи (игнорирование принудительного отключения отложенной записи) с помощью lvm + снапшоты в ram:
1. создаем в памяти блочное устройство (самое простое настраивается опциями ядра)
2. добавляем созданный образ в группу lvm
3. создаем снапшот, указав место хранения изменений — этот раздел ram
Теперь любая запись будет произведена в оперативную память, используя ее максимально эффективно! (только изменения, повторная перезапись сектора не увеличивает требования к памяти)
4. при необходимости сохранить изменения — удаляем снапшот, это перенесет все изменения на первоначальный раздел, кстати так же максимально эффективно
Цикл создания-удаления снапшота можно повторять периодически на автомате.

Примеры команд в гугле, первыйже результат запроса linuxsoftware.co.nz/blog/2008/03/lvm-snapshot-with-no-free-diskspace
Очень большой недостаток — при некорректном завершении системы нужно будет чинить группу (я не сильно копался, возникали ошибки со структурой), плюс конечно же изменения, записываемые на диск с момента создания последнего снапшота будут потеряны, что логично.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы