linux – 使用tmpfs为/ tmp而不是常规文件系统的一个非常大的交换分区?

前端之家收集整理的这篇文章主要介绍了linux – 使用tmpfs为/ tmp而不是常规文件系统的一个非常大的交换分区?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有 Linux服务器,我有一个备用的500GB磁盘分区.我想格式化它并将其用于/ tmp.服务器偶尔会运行一些大型数据处理任务,因此可能会发生/ tmp将保存GB的临时数据.

然后我有了一个想法,相反我可以将其添加为交换分区,并将/ tmp挂载到tmpfs.这个想法合理吗?

服务器有6GB的RAM,因此在大多数情况下/ tmp上的数据只能在RAM中,具有明显的速度优势.问题是,如果在/ tmp上有10-20GB的数据会怎样,系统将如何执行?简单地将/ tmp挂载到ext4分区相比,性能会是什么?感谢帮助.

编辑:很明显,当tmpfs的使用达到RAM限制时,系统将开始交换内存.但Linux是否足够智能交换tmpfs数据并在RAM中保留“常规”数据?如果是,那么我认为它可以表现得相当合理.如果没有,那么整个系统将受到严重影响.

解决方法

这不是一个好主意.

你可以使用像这样安装的大/ tmp分区(来自你的/ etc / fstab)

tmpfs  /dev/tmp  tmpfs  defaults,nosuid,nodev,noexec,noatime,nodiratime,size=6000M 0 0

您可以将外部驱动器添加为巨大的交换分区

/dev/sdb1  swap  swap  defaults  0 0

当达到极限时,您的机器将开始将页面从RAM交换到磁盘 – 此时,平均负载将通过顶部,机器将停止运行.

以任何方式依赖SWAP是一个坏主意,你最好卖掉你的500GB硬盘,只需购买更多的RAM – 它便宜.

综上所述

如果你真的想要使用你的500GB磁盘,你可以在/ tmp上使用非日志文件系统安装500GB磁盘,并禁用atime和diratime(例如ext2).这比处理SWAPing的机器快得多

猜你在找的Linux相关文章