红联Linux门户
Linux帮助

Linux创建使用内存硬盘(RAM DISK)

发布时间:2016-09-02 11:11:01来源:topspeedsnail.com作者:斗大的熊猫
内存磁盘或内存硬盘是把一部分内存模拟成磁盘,你可以把它当成一块高速的硬盘使用。
我们都知道,内存无论是速度还是稳定性都远胜于硬盘,利用这种技术可以极大地提高文件访问速度,同时它也减少了对硬盘的读写,从一定程度上保护了硬盘,尤其是固态硬盘SSD。
优点:超级快、适合频繁读写
缺点:数据非永久存储,断电或重启信息丢失;内存价格高、容量有限,确保不要分配过多的内存做RAM DISK。
在Windows上创建RAM DISK需要用到第三方软件,而Linux只要几条命令即可。
 
Linux创建RAM DISK
首先创建一个用来挂载RAM DISK的目录,位置随意:
$ sudo mkdir /tmp/ramdisk
如果你想让其它用户使用RAM DISK,更改目录权限:
$ sudo chmod 777 /tmp/ramdisk
查看可用内存:
$ free -h
创建并挂载RAM DISK:
$ sudo mount -t tmpfs -o size=1024M my_fast_disk /tmp/ramdisk
我创建的RAM DISK大小为1G,文件格式tmpfs,挂载目录/tmp/ramdisk。
查看挂载是否成功:
$ df
# 或
$ mount
Linux创建使用内存硬盘(RAM DISK)
RAM DISK创建完成,现在,/tmp/ramdisk 目录的读写速度超快,为了给你一个直观的概念,下面我来和普通目录做一下对比。
 
普通硬盘和RAM硬盘的速度对比
RAM硬盘:
$ dd if=/dev/zero of=/tmp/ramdisk/test bs=1024k count=512 conv=fdatasync
512+0 records in
512+0 records out
536870912 bytes (537 MB, 512 MiB) copied, 0.192046 s, 2.8 GB/s
大概在2.6-2.9 GB/s之间。
普通硬盘:
$ dd if=/dev/zero of=~/test bs=1024k count=512 conv=fdatasync
512+0 records in
512+0 records out
536870912 bytes (537 MB, 512 MiB) copied, 1.12811 s, 476 MB/s
大概在400-500 MB/s之间。
测试完成之后不要忘了删除生成的test文件。
参看:怎么测试VPS或租用服务器的HDD/SSD硬盘速度:http://www.linuxdiyf.com/linux/22122.html
卸载RAM DISK:
$ sudo umount /tmp/ramdisk  # 这个目录中的所有数据丢失并释放占用的内存空间。
 
随系统启动自动挂载
编辑fstab文件:
$ sudo vim /etc/fstab
添加如下一行:
my_fast_disk /tmp/ramdisk tmpfs defaults,size=1G,x-gvfs-show 0 0
x-gvfs-show选项会在文件管理器中显示挂载的RAM DISK:
Linux创建使用内存硬盘(RAM DISK)
 
本文永久更新地址:http://www.linuxdiyf.com/linux/23819.html