V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
Buffer2Disk
V2EX  ›  Linux

Linux swap 占用始终很小,这是为啥?

  •  
  •   Buffer2Disk · Jul 2, 2018 · 4812 views
    This topic created in 2865 days ago, the information mentioned may be changed or developed.

    机器是 centos 512M 内存的,升级物理内存很麻烦,物理内存使用比例较大,经常不定时 OOM

    想尽量使用 swap,但是 swap 占用始终很小

    free -m , 内存占用如下:

    改了 /etc/sysctl.conf

    vm.swappiness=90

    sysctl -p 执行后依然不生效。

    是不是我对 swap 的理解有问题?

    Supplement 1  ·  Jul 2, 2018
    下面 2 个老哥的评论应该可以解答这个问题了

    1.swap 是存储“暂时不需要使用的内存”到硬盘上,等到使用的时候再载入到内存中
    这种情况只能说明,没有“长期不使用的内存”


    2.Swap 的使用量和 OOM 没有直接关系。OOM 看的是申请量不是使用量。哪怕你内存没用完都会触发 OOM
    12 replies    2018-07-02 15:51:07 +08:00
    tempdban
        1
    tempdban  
       Jul 2, 2018 via Android
    cat /proc/meminfo
    Buffer2Disk
        2
    Buffer2Disk  
    OP
       Jul 2, 2018
    @tempdban 老哥,你发这个是查看内存信息的啊,我的问题是为啥 swap 没有使用起来
    oovveeaarr
        3
    oovveeaarr  
       Jul 2, 2018   ❤️ 1
    如果我记得没错的话,swap 是存储“暂时不需要使用的内存”到硬盘上,等到使用的时候再载入到内存中
    这种情况只能说明,没有“长期不使用的内存”
    Buffer2Disk
        4
    Buffer2Disk  
    OP
       Jul 2, 2018
    @oovveeaarr 对,我也是这么理解的,这样的话,只有升级物理内存了
    tempdban
        5
    tempdban  
       Jul 2, 2018 via Android
    ………这你不发贵知道你内存是怎么用的?
    Nitroethane
        6
    Nitroethane  
       Jul 2, 2018
    `vm.swappiness` 的值越大,表示 Linux 在进行内存回收的时候越倾向于回收**匿名页**,即将匿名页中的数据交换到 `swapfile` 或者 `swap` 空间。如果内存中的匿名页特别少的话,把 `swapiness` 的值设得再高也没用啊。“**在 Linux 下,内存的使用量取决于你的程序是怎样写的**”。
    Levox
        7
    Levox  
       Jul 2, 2018
    Android 里 swap ( 512M )占满而内存还有 1G 空闲导致经常卡顿 =_=

    想知道非 root 下有什么能清 swap 的命令
    tempdban
        8
    tempdban  
       Jul 2, 2018 via Android   ❤️ 1
    @Levox 你不 root 用的的是 zram 没有磁盘 io 不会导致你手机卡。neon 压一下就进去了。
    Levox
        9
    Levox  
       Jul 2, 2018
    @tempdban 原来如此,我的是 Nexus 6P,查了下国外论坛上的讨论,感觉 Google 在 N6P 上开 zram 不太好
    msg7086
        10
    msg7086  
       Jul 2, 2018
    Swap 的使用量和 OOM 没有直接关系。OOM 看的是申请量不是使用量。哪怕你内存没用完都会触发 OOM。
    liangzi
        11
    liangzi  
       Jul 2, 2018 via Android
    我的 VPS 也是 512M 跑了个博客 ss 没速度了 博客关了好了。。。。悲剧。。。
    iwtbauh
        12
    iwtbauh  
       Jul 2, 2018 via Android
    并非所有虚拟内存都能换入 swap 的,有的虚拟内存被锁死在物理内存(主存)中。因此这种情况是有可能发生的。
    不过看到 CentOS,不知道你内核版本多少,用个新点内核的发行版试试或许有惊喜呢。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5811 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 03:43 · PVG 11:43 · LAX 20:43 · JFK 23:43
    ♥ Do have faith in what you're doing.