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

Linux 内存占用

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

    xx oo gg

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

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

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

    23 条回复    2016-10-31 21:21:02 +08:00
    billlee
        1
    billlee  
       2016-10-27 22:31:09 +08:00
    卡是 ssd 换成了 hdd 的原因吧,和内存没关系
    GGGG430
        2
    GGGG430  
    OP
       2016-10-27 22:34:39 +08:00
    @billlee 变化也就是机器变了, 可能吧, 用上一会内存就下来了, 但忍受不了开机后那十分钟的等待(卡死), 有好的建议吗?
    blahgeek
        3
    blahgeek  
       2016-10-27 22:38:36 +08:00
    卡出翔是 HDD 的锅吧,内存里面 3.5G 是 cache ,真正占用没有那么多
    redsonic
        4
    redsonic  
       2016-10-27 22:38:39 +08:00
    Active , inactive 说明都是用户态程序占用的,就不能看看是哪个进程吗 ps -ao rss,pid,comm |sort -n
    ruojiner
        5
    ruojiner  
       2016-10-27 22:39:34 +08:00 via Android
    Linux 发行版默认会在 SSD 和 HDD 使用不同的 IO 调度器
    GGGG430
        6
    GGGG430  
    OP
       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
    skydiver
        7
    skydiver  
       2016-10-27 23:05:33 +08:00 via iPad
    很好理解吧。机械硬盘比较慢,当然 cache 越大越好啊,凑够了一起写进去。 ssd 比较快,就随用随写了。
    skydiver
        8
    skydiver  
       2016-10-27 23:06:37 +08:00 via iPad
    cache 并不算使用了的内存,系统只是把空闲内存当 cache 用了而已,真的不够用的时候会刷回磁盘。所以不用在意这个。
    GGGG430
        9
    GGGG430  
    OP
       2016-10-27 23:07:18 +08:00
    @skydiver 可是以前的 14.04 用的 hdd 没有出现这种情况, 现在卡的开机十分钟内都不能用了
    changwei
        10
    changwei  
       2016-10-27 23:07:49 +08:00
    @ruojiner 他能识别 ssd 和 hdd 然后做优化啊?第一次知道 linux 这么智能。。。
    skydiver
        11
    skydiver  
       2016-10-27 23:09:07 +08:00 via iPad
    @GGGG430 去 htop 里看看到底哪个程序占用了内存就知道了
    redsonic
        12
    redsonic  
       2016-10-27 23:14:08 +08:00
    @GGGG430 就这几个吗,再看 ps -eo rss,pid,comm |sort -n
    GGGG430
        13
    GGGG430  
    OP
       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 个小时 [这是上周末装上起最长的一次]

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