V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Nitroethane
V2EX  ›  macOS

macOS 10.15.2 疑似出现重大 bug

  •  
  •   Nitroethane · 2020-01-04 09:40:17 +08:00 · 7452 次点击
    这是一个创建于 1546 天前的主题,其中的信息可能已经有所发展或是发生改变。

    机器:17 款 13 寸 MacBook Pro
    macOS version:10.15.2
    现象:待机情况下,经过一夜之后早上起来 Chrome 的 CPU 使用率极高,导致笔记本温度升高,风扇狂转。进入已经打开的 terminal,键入任意字符,出现以下情况:
    crash 应该是 fork 系统调用失败导致不能创建新的进程。不能打开任何软件也印证了这一点。并且点击顶部状态栏左边的 apple logo 会卡死,一直转菊花。
    这个现象是这一周才出现的,而且每天都有。只能通过强制关机暂时解决。
    不知道有没有 v 友遇到类似情况

    21 条回复    2020-03-02 15:46:20 +08:00
    raynor2011
        1
    raynor2011  
       2020-01-04 09:41:22 +08:00
    你确定你不是某项系统资源负载满了吗
    Bantes
        2
    Bantes  
       2020-01-04 10:01:11 +08:00
    10.15.2 (19C57) 没有遇到过
    webshe11
        3
    webshe11  
       2020-01-04 10:12:10 +08:00
    进程表满了?
    Lax
        4
    Lax  
       2020-01-04 10:36:09 +08:00
    同意 #1 的猜测,先看看是不是内存用尽之类的小问题。
    zander
        5
    zander  
       2020-01-04 10:40:20 +08:00
    有软件内存泄漏。
    zander
        6
    zander  
       2020-01-04 10:40:47 +08:00
    以前碰到过类似的事情。
    现在黑苹果 64G 内存。
    Nitroethane
        7
    Nitroethane  
    OP
       2020-01-04 10:46:42 +08:00
    @raynor2011 #1
    @webshe11 #3
    @Lax #4
    因为出现问题之后打不开任何程序,所以没法及时排查问题。今天在打开应用的数量不多的情况下再测试一下。
    应该不会是内存用尽,因为之前重启过,系统运行的时间刚好一天,而且是 16G 内存,就算物理内存耗尽使用 swap,也是反应系统整体响应时间延长,很难导致 fork 系统调用失败吧。
    至于进程表满了的问题,除非是某个软件存在 bug 疯狂 fork 才能导致这种情况吧,不然只运行了一天的系统能有多少进程,况且这一周 Mac 只用来听歌了,打开的软件不超过五个,而且都是普通软件,不是耗资源大户啊
    ai277014717
        8
    ai277014717  
       2020-01-04 10:54:21 +08:00
    经常不关机,一个月大概会死机两次,先卡死转菊花,然后重启。偶尔盒盖待机后点亮掉光。
    Lax
        9
    Lax  
       2020-01-04 10:55:07 +08:00
    “内存用尽”和“物理内存耗尽使用 swap”根本就是两个概念。另外你说的疯狂 fork,也是一个很好的猜测,为什么不经验证就否定了呢?
    fashioncj
        10
    fashioncj  
       2020-01-04 11:06:45 +08:00 via iPhone
    简单,盒盖前打开活动监视器,里面有线程数目,按照这个排序。看看是不是哪个进程 fork 太多了
    Nitroethane
        11
    Nitroethane  
    OP
       2020-01-04 11:19:23 +08:00
    @Lax #9 我说的”内存用尽“指的就是物理内存用尽,而且我没说“内存用尽”和“物理内存耗尽使用 swap”是一个概念啊。当然,不是物理内存耗尽才会使用 swap。另,我好像没有否定哪个说法呀,我不太赞同内存耗尽的说法是因为当时看到状态栏的 istat 显示的内存用量并没有满,当然也可能是因为系统已经出现问题导致状态栏没有刷新,istat 显示的不是当时时刻的内存用量。
    ”为什么不经验证?” -> “今天在打开应用的数量不多的情况下再测试一下”

    @ai277014717 #8 我最长的运行时间是俩月,当时重启的原因是出现了一些莫名其妙的小问题(不是卡死转菊花)就重启了。盒盖待机掉电的话,经历过最多的一次掉电是一晚上掉了 10%
    Nitroethane
        12
    Nitroethane  
    OP
       2020-01-04 11:21:24 +08:00
    @fashioncj #10 准备今天盒盖之前不关掉 activity monitor,过十几个小时看看状况
    Roojay
        13
    Roojay  
       2020-01-04 14:51:35 +08:00 via Android
    我使用的时候隔一段时间必须重启,不然动不动转菊花
    wanguorui123
        14
    wanguorui123  
       2020-01-04 14:54:32 +08:00 via iPhone
    苹果真是索尼的徒弟,每次升级 bug 比新功能都多
    yzxhzxsw
        15
    yzxhzxsw  
       2020-01-04 15:01:40 +08:00
    crontab -l 把里面的任务删了,我的之前是这么解决的
    zh4710jj
        16
    zh4710jj  
       2020-01-05 05:05:59 +08:00
    确实可能是某个进程疯狂 fork 造成的吧,我之前就是实验室服务器进程开多了,报这个错的(连 ssh 都不能创建了),不过我当时创建了大概上千个……,不知道你这里为什么也会占满
    chunlinyao
        17
    chunlinyao  
       2020-01-05 07:45:43 +08:00 via Android
    我的 Mac 出现大量 cron 进程没有正常退出
    konakona
        18
    konakona  
       2020-03-02 14:08:09 +08:00
    我也是,还在努力排查 ing,按照楼上几位的方法,大概可以这样看看:

    活动监控器->搜索输入 cron->出现后,双击任意一个 cron,出现详情窗口,点击“取样”然后分析下。

    如果想看当前有多少 cron,命令行输入:ps -ef | grep cron | wc -l

    我有 530 个。
    konakona
        19
    konakona  
       2020-03-02 14:16:18 +08:00
    我的 crontab -l,出现了 2 个之前我注释掉的任务,而且有指定>> 日志输出,可以看到,的确没有运行计划。

    crontab -e,进去把内容清空。可见 cron 还在增长。

    wangyibode-MAC:~ mac$ crontab -e
    crontab: installing new crontab
    wangyibode-MAC:~ mac$ crontab -l

    wangyibode-MAC:~ mac$ ps -ef | grep cron | wc -l
    554
    wangyibode-MAC:~ mac$ ps -ef | grep cron | wc -l
    554
    wangyibode-MAC:~ mac$ ps -ef | grep cron | wc -l
    557
    konakona
        20
    konakona  
       2020-03-02 14:32:19 +08:00
    # 看下僵尸进程
    ps -A -o stat,ppid,pid,cmd | grep -e '^[Zz]'

    # 查看僵尸进程第二列的 PID (父进程)是谁
    ps -ef | grep [pid]

    结果还是 cron,暂时没有找到源头。
    konakona
        21
    konakona  
       2020-03-02 15:46:20 +08:00
    我找到我的原因了,我写成了 blog:

    https://blog.crazyphper.com/2020/03/02/记一次 macos-catalina-有几百个 cron 进程的问题解决 /
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5465 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 06:04 · PVG 14:04 · LAX 23:04 · JFK 02:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.