可直接用mount -o remount,size=...实时调整已挂载tmpfs容量,无需卸载、不中断服务;需root权限、单位大写(如2g)、路径准确,重启后失效,永久生效须修改/etc/fstab。

直接用 mount -o remount,size=... 就能实时调整已挂载的 tmpfs 分区容量,无需卸载、不中断服务,但要注意单位写法和权限。
必须确保你有 root 权限
所有操作需加 sudo,否则会提示“Operation not permitted”。
语法格式要准确
sudo mount -o remount,size=2G /tmp
-
size=后面不能有空格 - 单位支持
K/M/G(大小写敏感,推荐大写);也支持百分比,如size=10%(表示总内存的 10%) - 挂载点路径(如
/tmp)必须是当前已挂载的 tmpfs 实际路径,可通过mount | grep tmpfs或findmnt -t tmpfs确认
常见可调目标示例
- 调整
/tmp:sudo mount -o remount,size=1.5G /tmp - 调整
/dev/shm:sudo mount -o remount,size=512M /dev/shm - 调整
/run:sudo mount -o remount,size=300M /run
调整后立即生效,但仅限本次启动
- 修改不会写入配置文件,重启后恢复为原大小(通常是内存的一半)
- 若需永久生效,必须编辑
/etc/fstab,例如添加或修改这一行:tmpfs /tmp tmpfs defaults,size=2G,mode=1777,nosuid,nodev,noexec 0 0
然后运行
sudo mount -o remount /tmp触发加载新配置
验证是否成功
执行:
df -h /tmp
看 “Size” 列是否已更新为你设定的值。也可用:
findmnt -t tmpfs | grep "/tmp"
检查 SIZE= 参数是否匹配。
注意几个易错点
- 不要用
tmpfs /tmp这类完整挂载命令去 remount,remount模式下只需指定挂载点路径 - 如果报错
mount: /tmp not mounted or bad option,说明/tmp当前不是 tmpfs 类型(可能已被覆盖挂载成其他文件系统) - size 值不能超过物理内存 + swap 总和(内核会拒绝过大的请求),但一般设到 80% 以内都安全
不复杂但容易忽略。











