飘在云端

东西南北,海角天涯

· Android · · 1814次浏览

华为EMUI 关闭zram和swap

更新:2022-2-11 21:20:11
magisk 的确支持 开机自动加载指定脚本,路径就是 /data/adb/service.d/ ,在下面创建 xxxx.sh,并且赋予脚本 0755 权限,重启后实时生效,测试环境: Magisk v24.1 金丝雀版 (1a1b346c 24102) Zygisk,小米 K40 。

一个开机时自动关闭 Zram 和 swap 的脚本示例:
在 /data/adb/service.d/ 路径下创建任意名字的以 .sh 后缀结尾的文件,如 ram.sh

#!/system/bin/sh
swapoff /dev/block/zram0
sysctl -w vm.swappiness=0


华为EMUI 8.2.、9.0、9.1测试通过

关闭zram
swapoff /dev/block/zram0

关闭swap
sysctl -w vm.swappiness=0

如果需要开机生效,需要支持init.d,由于华为砍掉了init.d支持,需要magisk安装一个模块实现完整的init.d支持,模块名:Init.d Injector

另外,magisk模块 zRAM/SWAP Manager 测试无法关闭 zram,发现即使设置 disable zram,仍然挂载到 /dev/block/zram0 ,我手机运存6G,系统预设直接不要脸的划分了 2.2G作为 zram 缓冲,然而 CPU 本身也拉垮,实际负载 5.5G 运存,zram 使用量才 300MB,没什么用。

系统通过magisk模块支持init.d 后,可以写个脚本开机 自动关闭swap和zram

#!/system/bin/sh
sysctl -w vm.swappiness=0
swapoff /dev/block/zram0

我印象里,magisk 本身不用模块就可以实现开机自启执行特定命令的功能,我当时还实践过,大概路径好像在/data/adb/service.d/,时过境已迁,建议谷歌一下 magisk 启动脚本路径

评论 (15条)
  1. 半零落

    只要100,我专门帮你搜了下。就是不知道网络上有没有免费的解锁码教程淘宝店铺:华为手机软件服务

    回复
    1. 量子涨落 博主
      @半零落

      100元诱惑力还是很大的,这几天我备份下资料淘宝掌柜说1个小时就能搞定,我还得先自己回退emui8.2

      回复
    2. 量子涨落 博主
      @半零落

      凉凉,居然要电信或联通宽带,手机热点的电信联通还不可以,网吧电脑也不可以,我也是醉了

      回复
      1. 半零落
        @量子涨落

        推荐去电信营业厅

        回复
    3. 量子涨落 博主
      @半零落

      真的只要100,我就去刷了,我去淘宝逛逛

      回复
      1. 半零落
        @量子涨落

        专门帮你问了,就要一百。好吧,不管怎么弄脚本就是不生效,原来是我的手机内核不支持init.d,刷了两个模块都没用,好不容易一个模块创建了init.d文件夹,结果里面一放脚本,开机就给我删掉了。

        回复
        1. 量子涨落 博主
          @半零落

          如果你不是关机狂魔,每次开机自己执行命令就好了,我当时搞zram是因为玩崩坏3卡成翔,崩坏3界面切换要读取大量内存,zram会导致读取速度跟不上,我专门去搜了资料才知道是华为的锅

          回复
  2. 半零落

    /sbin/.core/img/.core/service.d或post-fs-data.d

    居然找不到这两个目录。我的是/sbin/.magisk/img/模块

    回复
      1. 半零落
        @量子涨落

        好的,谢谢。我是把整段代码都复制了。我去研究一下。我zarm两个G,开机占用300M,最高900M。我去关了再看看。你说的这个DEVCHEK我看了zarm还是在跑

        回复
    1. 量子涨落 博主
      @半零落

      /data/adb/service.d/ ,之前我是放这里的 magisk 15-18,我现在没条件测试了

      回复
      1. 半零落
        @量子涨落

        你酷安id是啥,建议你再酷安也发表下。可以把你博客链接也带上。

        回复
  3. 半零落

    这个脚本放置的目录是?

    回复
    1. 量子涨落 博主
      @半零落

      查看是否生效的话,执行df -h ,查看系统是否还挂载了zram,或者酷安应用市场下载 DevCheck 查看zram情况,到底开不开zram就看个人取舍,我关它主要是恶心,可用内存只有1G多,zram 2.2G 只用了 300MiB,太不要脸了,占着茅坑不拉屎

      回复
    2. 量子涨落 博主
      @半零落

      你这样子吧,开机后手动执行这2个命令吧,通过任意shell,root权限下执行即可,执行后需要一段时间才能关闭,并且执行期间系统会变卡,因为要把zram的数据解压还原到系统内存,并且,华为的EMUI太吃内存了,不知道系统拿内存干什么去了,关闭zram之后,可用内存大概2G(我6G运存,系统预留445Mib,也就是用户实际可用5.5G,并且安卓系统本身占用运存1.7-3.5G)

      回复