如何使tmpfs仅使用物理RAM而不使用交换?


12

如何确保tmpfs文件系统只能处理物理文件,而不使用磁盘上的交换分区?

由于我的硬盘驱动器速度慢而RAM速度快,因此我至少希望为相关安装点的RAM使用swap和/ tmpfs或禁用其磁盘使用分配更高的优先级tmpfs


3
实际上,根据您给出的条件,唯一的答案是根本不使用交换。而且JFYI Linux内核程序员确实意识到RAM更快。因此,您所做的事情毫无意义。
poige 2012年

3
每个人的硬盘速度都很慢,RAM很快。使用tmpfs。在确定应保留在RAM中的内容以及在RAM已满时将哪些内容降级到磁盘方面,内核比您聪明。
吉尔(Gilles)'所以

Answers:


8

使用ramfs代替tmpfs。ramfs是一个ramdisk(无交换),tmpfs可以同时位于/ etc / fstab中:

none     /path/to/location     ramfs  defaults,size=512M   0     0

size参数编辑为任意值,但请注意不要超出实际的内存量。

注意:我不建议使用ramfs代替tmpfs。如果发生某些事情,您会发现自己遇到稳定性问题,并且将大量数据写入ramdisk。您不能从ramfs取消分配ram。一旦您的ramdisk(所有ram)都装满了,您的系统就会被占用。ram是易失性内存,这意味着一旦失去电源,所有数据就会消失。因此,如果您的ramdisk填满了ram并崩溃了,您将再也看不到ram磁盘上的内容了。与ramfs不同,tmpfs限制了它的大小。


谢谢,我从来没有听说过这个ramfs,这是最近介绍的东西吗?这有什么要求?内核版本?编辑如何在ramfs上交换?
user1717079 2012年

所有内核2.4+都支持tmpfs。根据Wikipedia的说法,ramfs优先于tmpfs(en.wikipedia.org/wiki/Tmpfs#Linux)。
h3rrmiller 2012年

/ dev / shm是虚拟磁盘的示例。但是,由于磁盘速度更快,因此默认情况下默认为tmpfs。在Solaris上,通常将/ tmp作为ramfs。问题是您可以为/ tmp连续分配更多的ram,但是一旦分配而没有重新引导就无法
取消

1
我不推荐使用ramfs而不是tmpfs。如果发生某些事情,您会发现自己遇到稳定性问题,并且将大量数据写入ramdisk。如我所说,您不能从ramfs取消分配ram。一旦您的ramdisk(所有ram)都装满了,您的系统就会被占用。ram是易失性内存,这意味着一旦失去电源,所有数据就会消失。因此,如果您的ramdisk填满了您的ram并崩溃了,您将再也看不到ram磁盘上的内容了
h3rrmiller 2012年

2
+1到h3rrmiller-我已经看到ramfs设置会消耗所有可用内存,直到计算机死机为止。tmpfs更合适。交换到ram也没什么意义-为什么要交换呢?
丹尼·史泰普
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.