在Linux中可以将一部分内存
mount为分区来使用,通常称之为
RamDisk。
RamDisk有三种实现方式:
· 第一种就是传统意义上的,可以格式化,然后加载。
这在Linux内核2.0/2.2就已经支持,其不足之处是大小固定,之后不能改变。
为了能够使用Ramdisk,我们在编译内核时须将block device中的Ramdisk支持选上,它下面还有两个选项,一个是设定Ramdisk的大小,默认是4096k;另一个是initrd的支持。
如果对Ramdisk的支持已经编译进内核,我们就可以使用它了:
首先查看一下可用的RamDisk,使用 ls /dev/ram*
首先创建一个目录,比如test,运行 mkdir /mnt/test;
然后对 /dev/ram0 创建文件系统,运行 mke2fs /dev/ram0;
RamDisk有三种实现方式:
· 第一种就是传统意义上的,可以格式化,然后加载。
这在Linux内核2.0/2.2就已经支持,其不足之处是大小固定,之后不能改变。
为了能够使用Ramdisk,我们在编译内核时须将block device中的Ramdisk支持选上,它下面还有两个选项,一个是设定Ramdisk的大小,默认是4096k;另一个是initrd的支持。
如果对Ramdisk的支持已经编译进内核,我们就可以使用它了:
首先查看一下可用的RamDisk,使用 ls /dev/ram*
首先创建一个目录,比如test,运行 mkdir /mnt/test;
然后对 /dev/ram0 创建文件系统,运行 mke2fs /dev/ram0;
最后挂载 /dev/ram0,运行mount /dev/ram /mnt/test,就可以象对普通硬盘一样对它进行操作了。
如何修改ramdisk的大小写呢?
通过设置grub完成.也就是说ramdisk的大小是在开机加载内核的时候设置的.
可以编辑 /etc/grub.conf
kernel /boot/vmlinuz-2.6.18-92.el5 ro root=LABEL=/1 ramdisk_size=262144
重新启动机器,
dmesg | grep RAMDISK
RAMDISK driver initialized: 16 RAM disks of 262144K size 4096 blocksize
这样就可以设置高达256M的ramdisk了。
dd if=/dev/zero of=/dev/ram bs=1k count=262144
mke2fs -v -m 0 /dev/ramdisk 262144
mount -t ext2 /dev/ram /mnt/ramdisk