Linux怎么将内存挂载为超高速的临时Tmpfs分区

老墨君_7201

老墨君_7201

2026-09-30

131人浏览

原创

tmpfs挂载必须指定-t tmpfs和size选项,否则报错或占满内存;正确命令为sudo mount -t tmpfs -o size=2g,mode=1777 tmpfs /mnt/ramdisk;开机挂载需在fstab中添加x-systemd.automount;扩容用remount,禁用/dev/ram0。

linux怎么将内存挂载为超高速的临时tmpfs分区

tmpfs挂载命令必须带 -t tmpfs 且指定 size 选项

不加 size 会默认用掉物理内存一半,容易误占满 RAM;不写 -t tmpfs 会导致 mount 报错 “unknown filesystem type”,因为内核不会自动推断类型。实际命令就是一条:

sudo mount -t tmpfs -o size=2G,mode=1777 tmpfs /mnt/ramdisk

  • size=2G 是硬限制,写满后报 No space left on device,不是 OOM,不会杀进程
  • mode=1777 确保 /mnt/ramdisk 支持粘滞位,避免不同用户互相删文件(尤其用于 /tmp 类场景)
  • 目录必须提前创建:sudo mkdir -p /mnt/ramdisk,否则 mount 直接失败
  • 挂载后用 df -h | grep tmpfs 验证,看到对应行且大小匹配才算成功

/etc/fstab 开机挂载要加 x-systemd.automount

直接写静态挂载行(如 tmpfs /mnt/ramdisk tmpfs size=2G 0 0)在 systemd 启动早期可能失败:依赖的 local-fs.target 尚未就绪,/mnt/ramdisk 路径可能不可写或被占用。

正确写法是:

tmpfs /mnt/ramdisk tmpfs size=2G,mode=1777,defaults,x-systemd.automount 0 0

Computer Use Linux
Computer Use Linux

顶级 Linux 计算机使用技能,配套独立自举运行时,无需本地 Claude 安装、私有原生模块等。

下载
  • defaults 包含 rw,exec,dev,suid 等基础选项,保持可用性
  • x-systemd.automount 让 systemd 延迟到第一次访问该路径时才挂载,避开 race condition
  • 改完必须运行 sudo systemctl daemon-reload,再用 sudo systemctl restart local-fs.target 测试,不能只靠重启
  • 别加 noatime:tmpfs 本身不记录 atime,加了无效,还可能干扰某些监控工具

临时扩容或调整已挂载的 tmpfs 只能用 mount -o remount

比如 /tmp 已挂为 tmpfs,但当前只有 512M,想临时扩到 1.5G,不能 umount 再 mount —— 多数进程正往里写临时文件,强制卸载会出错甚至卡死。

正确操作是:

sudo mount -o remount,size=1.5G /tmp

  • remount 不中断现有文件句柄,所有正在读写的程序无感知
  • 新 size 值立即生效,df -h /tmp 能立刻看到变化
  • 这个操作不持久,重启后恢复原大小,所以仅适合调试或应急
  • 如果 remount 失败,大概率是原挂载没用 defaults 或缺少 rw,得先查 findmnt /tmp 看原始选项

别碰 /dev/ram0,它和 tmpfs 完全是两套机制

网上有些教程还在教 modprobe brd rd_nr=1 rd_size=2097152 && mkfs.ext4 /dev/ram0,这套方案在现代发行版上基本走不通。

  • brd 模块默认不加载,lsmod | grep brd 很可能为空
  • 即使加载成功,/dev/ram0 占用的是刚性内存:分配 2GB 就锁死 2GB,哪怕只存 1KB 文件也不会释放
  • fstab 里写 /dev/ram0 极易因设备节点生成时机问题导致启动卡住
  • tmpfs 基于页缓存,可 swap、可回收、无需格式化——这才是你真正需要的“超高速临时分区”

唯一需要 /dev/ram0 的场景是:你要做 loop 设备测试、dd 镜像烧录、或者兼容某个强依赖块设备的老旧驱动。其他所有情况,坚持用 tmpfs。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

linux文件 linux

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

3730

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3233

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2313

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

5590

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

5242

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

3113

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

2625

4

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

2023.07.25

2839

6

linux查找文件命令
linux查找文件命令

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.31

277

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习