我可以安全地将哪些系统文件夹安装到 RAM 驱动器?

我可以安全地将哪些系统文件夹安装到 RAM 驱动器?

我最近将 Ubuntu 15.10 完整安装到了 USB 驱动器上。

为了使其更快,使用 RAM,我通过在 fstab 中添加此行,将 /tmp 文件夹安装在启动时 RAM 上:

tmpfs /tmp tmpfs 默认值,noatime,nosuid,nodev,mode=1777 0 0

哪些其他系统文件夹可以以相同的方式安全地移动到 RAM?“安全”是指其内容永远不会改变或重启后不需要其中的更改的文件夹。

我接受因电源故障、硬件故障或 RAM 超载而产生的风险。

答案1

虽然这已经是一年多前的事了,但我仍然觉得有必要在这里说说。在有大量可用 RAM(从未使用过)的情况下,我遇到了类似的请求,但总是没有得到答复,但我总是注意到系统并没有用尽所有可能/可用的 RAM。我最终做的是:我将尽可能多的 /etc /var /usr 和 /home 放入 ramdisk(我有大约 12 GB 的 RAM),并使用 cron-job 将每个已安装的部分 rsynced 回磁盘,以便在断电时有备份。我还在关机/重启之前创建了卸载到磁盘,并在启动时使用 /etc/rc.local 创建了返回 RAM 的副本,因此机器始终能够重启并且不会丢失任何内容。请放心,我从来没有需要过备份!而且它在 Debian 服务器上已经这样运行了 3 年。顺便说一下,IO 响应时间非常快。使用 tmpfs 并没有什么用,某些软件似乎不想从 tmpfs 运行,但可以从我安装的单独 ramdisk 运行。我确实必须对某些不喜欢从 ram 运行的软件使用特殊的安装选项,但它们都是特定于用例的。

答案2

您实际上是在问“我可以将哪些系统文件夹加载到 RAM 中而不是保存在磁盘上”。

简短而模糊的答案是“你可以将任何文件夹加载到 RAM 中,方法是将它们设为 'tmpfs' 挂载点/etc/fstab当且仅当文件夹包含临时文件或不需要在重启后保留的项目”,以及“我们无法具体回答这个问题,因为问题的范围没有限制。”

答案虽然较长,但同样模糊是“什么可以或不能加载到 RAM 中,无法在此处简短回答的范围中描述”。不同的系统和软件处理信息缓存或临时文件的存储略有不同,并且它们通常都没有设计为使用 /tmpfsramdisk存储这些文件,因为其中一些需要它们的缓存才能在重新启动后继续存在。

无论出于何种目的和意图,以这种方式加载到 RAM 中的唯一“安全”目录是/tmp,因为该目录的内容是极其有规律地重新启动即可清除。不过,请记住,如果你想用 执行此操作,/tmp你可能需要为其提供更大的 ramdisk 空间(例如1024MB1GB),这会减少系统可用内存


总结:在本网站范围内,/tmp是少数可以理智地放入 RAM 磁盘/tmpfs空间。我们无法评论是否可以加载任何其他系统目录tmpfs,因为我们不知道您的系统需求、您需要的软件需求,也不知道您这样做的最终目的是什么。

答案3

将 /tmp 放入内存和 Firefox 的缓存中(听起来您已经这样做了)后,提高浏览性能(随意使用)的最简单方法是使用客户会话,该会话耗尽了内存。桌面环境会写入大量(隐藏)文件,因此这会给您带来很大的提升。放弃任何故障分析,并将 /var/log 也放入内存中。真的,听起来您想要一个持久的实时媒体,并在启动行中使用“toram”键 - 它将文件系统复制到内存中,并在第一次调用时为您提供非常快(比硬盘更好)的性能。USB 文件系统无论如何都会使用缓存,因此第一次调用之后的调用应该更快。使用 iotop 检查其他写入量大的位置,并考虑将它们放入内存中。

相关内容