求助:关于 Linux 下彻底关闭 zram 缓存的方法(zram.num_devices=0) - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
lzwt806
V2EX    Linux

求助:关于 Linux 下彻底关闭 zram 缓存的方法(zram.num_devices=0)

  •  
  •   lzwt806 2020-02-07 23:20:45 +08:00 5229 次点击
    这是一个创建于 2122 天前的主题,其中的信息可能已经有所发展或是发生改变。

    各位好,CDLinux 维护者,问题中年又来麻烦各位了

    有朋友会说这个应该让操作系统来管理,我经过大量的测试发现,如果是正常安装的操作系统这种想法是对的,但对于 LiveCD 这个在内存跑的移动系统而言,要随时回收有限的内存资源,内存浪费对 LiveCD 绝对是致命的(不要怀疑我这个结论)。

    亲测 Porteus v4.0 无忧 @wintoflash 前辈定制的版本不管什么时候打开一个软件,关闭之后内存都能回收到刚进入系统时候的值,一直不解这个发行版本是如何做到的?具体情况请看下图:

    http://wuyou.net/forum.php?mod=attachment&aid=NDEwNjg3fGY5ODg3MzAyfDE1ODEwODc4MjJ8MHw0MTg3MzU%3D&noupdate=yes

    不想看图的朋友,图片的内容如下:

    grub2 ( grub.cfg )我写的启动参数:

    menuentry 'ZRAM:关 LOOP:开 语言:简体中文' {

    linux /CDlinux/bzImage quiet zram.num_devices=0 CDL_DEV="Label=CDlinux" CDL_LANG=zh_CN.UTF-8 CDL_LOOP=yes

    initrd /CDlinux/initrd

    }

    而使用 I-Nex 软件看到 kernel 一栏的启动参数为:

    root=/dev/ram0 vga=normal zram.num_devices=4 zswap.enabled=1 zswap.max_pool_percent=20 zswap.compressor=lz4

    显然还是以 zram.num_devices=4 来启动系统的,那么我上面的 grub.cfg 参数就没有生效。

    请问:

    1,这种情况是怎么回事(为什么 grub 的参数没有传递给内核执行)?

    2,还是说我错了,应该把 zswap.enabled=1 改为 zswap.enabled=0 才正确?

    望知道的 /有经验的朋友指导一下,感谢!

    8 条回复    2020-02-09 13:05:39 +08:00
    Cooky
        1
    Cooky  
       2020-02-07 23:44:32 +08:00 via Android
    CDLinux 还活着?
    lzwt806
        2
    lzwt806  
    OP
       2020-02-08 00:06:04 +08:00
    @Cooky 活得很好,而且今非惜比,见: http://kxs-co.gicp.net/Linux/
    这是我维护的第 7 个年头了。
    omph
        3
    omph  
       2020-02-08 10:54:17 +08:00
    厉害,坚持了这么长时间啊
    看看这个是否有用
    [如何提升树莓派的可用运行内存空间?( ZRAM ) - 哔哩哔哩]( https://www.bilibili.com/read/cv727423/)
    [zram - Gentoo Wiki]( https://wiki.gentoo.org/wiki/Zram#Using_zram-init_service)
    Cooky
        4
    Cooky  
       2020-02-08 13:48:29 +08:00 via Android
    @lzwt806 牛逼,以前在上网本上试过 CDL,挺不错的,后来学了 Arch 就没怎么碰其他的,
    话说 CDL 是哪系的?还是 LFS 从头做的?
    楼上的 Gentoo wiki 应该能解决 zram
    lzwt806
        5
    lzwt806  
    OP
       2020-02-08 17:56:19 +08:00
    @omph 感谢,时间太紧,10 号要开工了,搞不完只能等明年春节继续更。

    @Cooky 早期 CDLinux 基于 slackware,到现在为止,70%是 LFS,28%用的 slackware/debian/资源,2%用的 centos/ArchLinux 资源,因为这 30%的包编译真的太麻烦太奇葩了,能用现成的就用现成的。

    另外还有 A/I/N 三家显卡驱动,内核没更,这些都很费时间。
    12101111
        6
    12101111  
       2020-02-08 18:05:35 +08:00
    看启动参数可以直接`cat /proc/cmdline/不需要 GUI 软件
    然后在 Linux x86 架构配置菜单 Processor type and features 下有 Built-in kernel command line 这个选项(CONFIG_CMDLINE_BOOL),打开后可以在 CONFIG_CMDLINE 中指定内置的启动参数,看起来这个内核应该内置了一些启动参数
    lzwt806
        7
    lzwt806  
    OP
       2020-02-08 18:29:29 +08:00
    @12101111 前辈说的“Processor type and features 下有 Built-in kernel command line 这个选项(CONFIG_CMDLINE_BOOL),打开后可以在 CONFIG_CMDLINE 中指定内置的启动参数“,是指在内核编译时的选项对吧?

    意思是我现在的内核没办法关闭?要么重新编译一次对吗?因为这个内核不是我编译的,如果手里没有配置模板,估计配置那些选项对于我一个菜鸟来说都要 1 天以上。
    tempdban
        8
    tempdban  
       2020-02-09 13:05:39 +08:00 via Android
    内核配置可以看看 /proc/config.gz
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2578 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 03:04 PVG 11:04 LAX 19:04 JFK 22:04
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86