起源

起源

起源

我需要为我的 GDB 帮助程序脚本实现一些功能,但我必须坚持使用旧版本的 GDB(在本例中为 5.3)。由于旧版本缺乏如此多的功能,我需要通过将一些字符串重定向到文件然后将source它们重定向到文件来解决所需的功能。

问题

我不想将大量临时文件写入/tmp.

假设

由于我的/tmp文件夹是用 挂载的tmpfs,我假设它实际上放置在 RAM 上,并且在填充时被交换到交换区域:

$ mount | grep /tmp
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime,size=524288k)

问题

我能否保证我写入的任何小文件(最多 30 个字符长的字符串)/tmp(我几乎会立即删除)在其生命周期中仅存在于 RAM 中,并且不会进入硬盘,即使频率高达每秒写入 100 次?

答案1

使用类似swapoff --all(swapoff手册页),将保证tmpfs永远不会到达您的磁盘存储。

在之前的内核中6.4,没有其他方法可以强制它,除非你修补内核模块。

在内核版本中,添加了6.4该选项。noswap内核文档笔记:

noswap:禁用交换。重新安装必须尊重原始设置。默认情况下启用交换。

相关内容