Мне нужно сделать ramfs смонтировать его в каталог в Linux с помощью C ++. Я хочу сделать это как пользователь (нет sudo
).
Мне нужно вызвать приложение на файл, который я создал, и это будет часто. Запись на жесткий диск очень медленная.
Я нашел только:
system("mkdir /mnt/ram");
system("mount -t ramfs -o size=20m ramfs /mnt/ram");
но это не хорошо Я хочу быть обычным пользователем, и команда mount
можно назвать просто как root.
Что я могу сделать?
Для пользовательского решения ramfs вы можете использовать Python-плавких Ramfs.
Я проверяю, если /tmp
это ramfs, но это не так. Он создает файлы на жестком диске. но когда я бегу df -h
это выводит:
rootfs 25G 9,4G 15G 40% /
devtmpfs 1,9G 0 1,9G 0% /dev
tmpfs 1,9G 1,6G 347M 83% /dev/shm
tmpfs 1,9G 1,3M 1,9G 1% /run
/dev/mapper/vg_micro-root 25G 9,4G 15G 40% /
tmpfs 1,9G 0 1,9G 0% /sys/fs/cgroup
tmpfs 1,9G 0 1,9G 0% /media
/dev/mapper/vg_micro-stack 289G 191M 274G 1% /stack
/dev/mapper/vg_micro-home 322G 40G 266G 14% /home
/dev/sda2 485M 89M 371M 20% /boot
/dev/sda1 200M 19M 182M 10% /boot/efi
Это означает, что tmpfs
(рамдиски): /dev/shm
, /run
, /sys/fs/cgroup
а также /media
, Но только один из них предназначен для временного виртуального диска для обмена данными между процессами с использованием файлов. Вот это /dev/shm
описание и использование. Единственное что tmpfs
не будет расти динамически, но для моих целей этого будет достаточно (20МБ — 1ГБ).