V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
catalina
V2EX  ›  Android

如何在 root 过的安卓手机上使用内存磁盘(即 tmpfs)?

  •  
  •   catalina · 2019-01-28 14:34:22 +08:00 · 4502 次点击
    这是一个创建于 1887 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在 root 过的安卓手机上装了终端模拟器,在 sdcard 目录下创建了一个目录,然后 mount -t tmpfs -o size=1024m tmpfs ./memblock(挂载点),成功,随后查看 df 的输出,显示了挂载的目录。 然而,用 es 文件浏览器向其中复制文件后,再次执行 df,发现挂载点占用的空间并未变大。同时,删除文件前后执行 free 命令输出的结果中,Mem 的各项大小并无变化,而 Swap 的空闲空间却变大了。 请问有什么办法让我直接把文件写入 tmpfs 中吗?

    3 条回复    2019-11-02 20:53:47 +08:00
    leodi
        1
    leodi  
       2019-01-30 10:05:23 +08:00 via Android   ❤️ 1
    关掉 swap 或者修改 swappiness
    catalina
        2
    catalina  
    OP
       2019-01-30 12:07:31 +08:00 via Android
    @leodi 谢谢,实际实践中发现不需要。
    通过查看 /proc/swaps 发现此安卓手机使用的 swap 其实是 zram,在内存需要较大时压缩部分内存页面,而不是将内存页面写到闪存上,因此无需关闭 swap。
    kalas789
        3
    kalas789  
       2019-11-02 20:53:47 +08:00
    安卓 4.4 能直接用,安卓 5.0 后有了所谓的 挂载命名空间 ,root 用户设置的内存盘是无法被一般用户使用到的,我也折腾过一段时间无果。不过最近知道有个 存储重定向 软件,貌似解决了一步,还差一步,发了邮件问作者还没回。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2599 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 15:37 · PVG 23:37 · LAX 08:37 · JFK 11:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.