Главная » 2010 » Март » 16 » Виртуальный диск в памяти: как создать ramdisk в Linux?
Виртуальный диск в памяти: как создать ramdisk в Linux?
20:48
Бывают задачи, когда нужно работать с большим количеством мелких
файлов и делать это по возможности быстро, без завязок на меееедленную
файловую подсистему. Ветераны вспомнят о том, что есть такой виртуальный диск, он же - RAM-дисках (ramdisk) и будут совершенно правы - это действительно выход, а сделать ramdisk в Linux можно буквально в один клик на клавиатуре.
Собственно,
в ядре должна быть поддержка tmpfs, и если вы (или авторы вашего
дистрибутива) не любители усложнять себе жизнь, она там должна быть. Быстренько создаём новую точку монтирования:
# mkdir /mnt/tmpfs/ # chmod 777 /mnt/tmpfs/
и даём все права на использование. После этого даём команду (от рута или через sudo):
# mount -t tmpfs -o size=xxxM tmpfs /mnt/tmpfs/ или $ sudo mount -t tmpfs -o size=xxxM tmpfs /mnt/tmpfs/
где xxxM есть размер RAMdisk в Мегабайтах. Будьте осторожны и не размахивайтесь слишком широко: если вы попросите создать ramdisk больше, чем имеете оперативной памяти, система начнёт сгружать всё в swap-файл и дела пойдут очень медленно и грустно.
Если же вы хотите изменить размер ramdisk - это просто:
# mount -o remount -o size=yyyM/mnt/tmpfs/ или $ sudo mount -o remount -o size=yyyM/mnt/tmpfs/
При
этом содержимое диска не пропадёт, но его размер тут же увеличится (при
уменьшении также ничего не пропадёт, если только данных не больше, чем
диск).
Предупреждаю
особо горячих финских парней: это RAM-диск, а это значит, что всё его
содержимое после отключения питания машины будет безвозвратно потеряно.
Будьте бдительны.