首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
Coding
V2EX  ›  Linux

Linux 内存占用

  •  
  •   GGGG430 · 2016-10-27 22:09:30 +08:00 · 2376 次点击
    这是一个创建于 1140 天前的主题,其中的信息可能已经有所发展或是发生改变。

    xx oo gg

    也网上查了查 linux 的内存管理, cache 会很大

    但这是我 dd 克隆的 ubuntu16.04, 原先的系统开机最多占用 1G+的内存, 到了克隆的系统上开机就占用 8G+而且刚开始系统卡出翔, 这是为什么呢?

    [注: 原先 ssd256G+8G, 新机器机械 512G+12G]

    23 回复  |  直到 2016-10-31 21:21:02 +08:00
        1
    billlee   2016-10-27 22:31:09 +08:00
    卡是 ssd 换成了 hdd 的原因吧,和内存没关系
        2
    GGGG430   2016-10-27 22:34:39 +08:00
    @billlee 变化也就是机器变了, 可能吧, 用上一会内存就下来了, 但忍受不了开机后那十分钟的等待(卡死), 有好的建议吗?
        3
    blahgeek   2016-10-27 22:38:36 +08:00
    卡出翔是 HDD 的锅吧,内存里面 3.5G 是 cache ,真正占用没有那么多
        4
    redsonic   2016-10-27 22:38:39 +08:00
    Active , inactive 说明都是用户态程序占用的,就不能看看是哪个进程吗 ps -ao rss,pid,comm |sort -n
        5
    ruojiner   2016-10-27 22:39:34 +08:00 via Android
    Linux 发行版默认会在 SSD 和 HDD 使用不同的 IO 调度器
        6
    GGGG430   2016-10-27 23:04:11 +08:00
    @redsonic
    RSS PID COMMAND
    768 10041 sort
    1520 10040 ps
    3936 8748 sudo
    5440 8758 gpgv
    5696 8756 http
    5748 8755 http
    13852 9136 store
    24716 8749 aptitude
        7
    skydiver   2016-10-27 23:05:33 +08:00 via iPad
    很好理解吧。机械硬盘比较慢,当然 cache 越大越好啊,凑够了一起写进去。 ssd 比较快,就随用随写了。
        8
    skydiver   2016-10-27 23:06:37 +08:00 via iPad
    cache 并不算使用了的内存,系统只是把空闲内存当 cache 用了而已,真的不够用的时候会刷回磁盘。所以不用在意这个。
        9
    GGGG430   2016-10-27 23:07:18 +08:00
    @skydiver 可是以前的 14.04 用的 hdd 没有出现这种情况, 现在卡的开机十分钟内都不能用了
        10
    changwei   2016-10-27 23:07:49 +08:00
    @ruojiner 他能识别 ssd 和 hdd 然后做优化啊?第一次知道 linux 这么智能。。。
        11
    skydiver   2016-10-27 23:09:07 +08:00 via iPad
    @GGGG430 去 htop 里看看到底哪个程序占用了内存就知道了
        12
    redsonic   2016-10-27 23:14:08 +08:00
    @GGGG430 就这几个吗,再看 ps -eo rss,pid,comm |sort -n
        13
    GGGG430   2016-10-27 23:48:25 +08:00
    @redsonic
    @skydiver
    感谢, 系统恢复正常了
    我也没明白怎么就好了(困扰了一周), 打开.bash_history 一个一个的看, 确实没做什么
    1. 无非就是把 /etc/fstab 中 swap 的 uuid 修正了 [由于原先系统是 hdd+ssd, 我将 swap 放在 hdd 的, 系统放在 ssd, 所以 dd 过来 swap 的 uuid 是错误的]
    2. 运行了系统 3 个小时 [这是上周末装上起最长的一次]

    .......难道是新系统要适应几个小时???
        14
    skydiver   2016-10-28 00:34:13 +08:00 via iPad   ♥ 1
    @GGGG430 终于开始适应这具身体了~
        15
    eyp82   2016-10-28 07:27:08 +08:00   ♥ 2
    我来回答一记, 不对的地方请各位拍砖:
    在 Linux 上不用担心 buff/cache 过大, 因为这是系统在尽量充分利用内存. 如果你的应用程序需要分配内存而有没有足够的空闲内存, 它会把 buff/cache 释放, 把内存分给应用程序, 因此 buff/cache 占用内存不是问题, 不需要担心.
    Linux 的设计观念是, 尽量充分利用系统资源, 包括内存.
        16
    kamen   2016-10-28 11:47:45 +08:00
    @skydiver 话糙理不糙,佩服
        17
    franklinyu   2016-10-28 13:40:23 +08:00
    Ubuntu 16.04 新出了後臺系統自動更新安全補丁,說不定是這個東西的鍋。可能是你上面提到的 aptitude 。
        18
    kelvansun   2016-10-28 15:13:15 +08:00
    硬盘配置不同的电脑最好是新安装系统,不要 DD
        19
    GGGG430   2016-10-28 18:55:12 +08:00
    @kelvansun 你清楚配置一个新的 linux 系统需要几周吗?
        20
    kelvansun   2016-10-29 08:37:34 +08:00
    @GGGG430 这样看你的 Linux 基础怎么样了,如果你玩过 Gentoo 或 LFS 那用别的 Linux 发行版就容易多了
        21
    chocotan   2016-10-29 13:02:24 +08:00
    @eyp82
    可是我自己的电脑上似乎根本不会被释放......经常出现内存不够程序崩溃的情况(虚拟机 ide 等).....一检查全是被 buff cache 占了.....而且也清不掉......
        22
    ericgui   2016-10-31 00:36:30 +08:00
    都 12G 内存了,还配个机械硬盘,您老人家真是有趣
        23
    GGGG430   2016-10-31 21:21:02 +08:00
    @ericgui 公司的电脑不可以吗
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   966 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 25ms · UTC 21:50 · PVG 05:50 · LAX 13:50 · JFK 16:50
    ♥ Do have faith in what you're doing.