sudo -i
生成大小为500kb的磁盘,若2GB则修改rd_size为2097152
modprobe brd rd_nr=1 rd_size=500 max_part=0
modprobe 用于智能地向linux内核中加载模块或者从内核中移除模块。
brd是lnux的一个RAM block内核驱动模块
将ramdisk用一种文件系统格式化,由于没有必要采用日志文件系统,因此仅用EXT2格式即可,以仅需要使用ram0为例:
mke2fs -m 0 /dev/ram0
创建挂载点
mkdir /mnt/ramdisk_test
挂载ramdisk
mount /dev/ram0 /mnt/ramdisk_test/
查看挂载结果
mount | grep ram0
df -h | grep ram0
查看ram0的详细信息
tune2fs -l /dev/ram0
修改挂载点的使用权限
chown room401 /mnt/ramdisk_test
chmod 0770 /mnt/ramdisk_test
chmod 755 /mnt/ramdisk_test/
验证并查看挂载点的权限是否修改
ls -ald /mnt/ramdisk_test
卸载
umount -v /mnt/ramdisk_test
移出内核
modprobe -r brd
以上是手动创建ramdisk的过程,也可以通过在/etc/rc.local初始化脚本中加入一些命令来自动完成以上过程,以在便系统每次启动时就自动创建和挂载ramdisk。
-------------------------------------------------------------
/sbin/mke2fs-q -m 0 /dev/ram0
/bin/mount /dev/ram0 /mnt/ramdisk_test
/bin/chown van:root /mnt/ramdisk_test
/bin/chmod 0750 /mnt/ramdisk_test
————————————————
版权声明:本文为CSDN博主「意念586」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011392772/article/details/122997230
-------------------------------------------------------------------
参考:https://www.cnblogs.com/yiminlin/p/16390488.html
另一种方法:
开机自启动
echo "options brd rd_nr=1 rd_size=16777216 max_part=0" >> /etc/modprobe.d/memdisk.conf
echo "mkfs.ext4 /dev/ram0" >> /etc/rc.d/rc.local
echo "mount /dev/ram0 /ramdisk" >> /etc/rc.d/rc.local
chmod +x /etc/rc.d/rc.local
room401@room401-System-Product-Name:~/ramdisk/read_test/build$ ./readTimeCount ../2022-09-01-11-09-24_120.bag
argv[1]: ../2022-09-01-11-09-24_120.bag
-------
total read time: 0.527022
room401@room401-System-Product-Name:~/ramdisk/read_test/build$ ./readTimeCount /mnt/ramdisk_test/2022-09-01-11-09-24_120.bag
argv[1]: /mnt/ramdisk_test/2022-09-01-11-09-24_120.bag
-------
total read time: 0.455641