机器:17 款 13 寸 MacBook Pro
macOS version:10.15.2
现象:待机情况下,经过一夜之后早上起来 Chrome 的 CPU 使用率极高,导致笔记本温度升高,风扇狂转。进入已经打开的 terminal,键入任意字符,出现以下情况:
应该是 fork 系统调用失败导致不能创建新的进程。不能打开任何软件也印证了这一点。并且点击顶部状态栏左边的 apple logo 会卡死,一直转菊花。
这个现象是这一周才出现的,而且每天都有。只能通过强制关机暂时解决。
不知道有没有 v 友遇到类似情况
1
raynor2011 2020-01-04 09:41:22 +08:00
你确定你不是某项系统资源负载满了吗
|
2
Bantes 2020-01-04 10:01:11 +08:00
10.15.2 (19C57) 没有遇到过
|
3
webshe11 2020-01-04 10:12:10 +08:00
进程表满了?
|
4
Lax 2020-01-04 10:36:09 +08:00
同意 #1 的猜测,先看看是不是内存用尽之类的小问题。
|
5
zander 2020-01-04 10:40:20 +08:00
有软件内存泄漏。
|
6
zander 2020-01-04 10:40:47 +08:00
以前碰到过类似的事情。
现在黑苹果 64G 内存。 |
7
Nitroethane OP @raynor2011 #1
@webshe11 #3 @Lax #4 因为出现问题之后打不开任何程序,所以没法及时排查问题。今天在打开应用的数量不多的情况下再测试一下。 应该不会是内存用尽,因为之前重启过,系统运行的时间刚好一天,而且是 16G 内存,就算物理内存耗尽使用 swap,也是反应系统整体响应时间延长,很难导致 fork 系统调用失败吧。 至于进程表满了的问题,除非是某个软件存在 bug 疯狂 fork 才能导致这种情况吧,不然只运行了一天的系统能有多少进程,况且这一周 Mac 只用来听歌了,打开的软件不超过五个,而且都是普通软件,不是耗资源大户啊 |
8
ai277014717 2020-01-04 10:54:21 +08:00
经常不关机,一个月大概会死机两次,先卡死转菊花,然后重启。偶尔盒盖待机后点亮掉光。
|
9
Lax 2020-01-04 10:55:07 +08:00
“内存用尽”和“物理内存耗尽使用 swap”根本就是两个概念。另外你说的疯狂 fork,也是一个很好的猜测,为什么不经验证就否定了呢?
|
10
fashioncj 2020-01-04 11:06:45 +08:00 via iPhone
简单,盒盖前打开活动监视器,里面有线程数目,按照这个排序。看看是不是哪个进程 fork 太多了
|
11
Nitroethane OP @Lax #9 我说的”内存用尽“指的就是物理内存用尽,而且我没说“内存用尽”和“物理内存耗尽使用 swap”是一个概念啊。当然,不是物理内存耗尽才会使用 swap。另,我好像没有否定哪个说法呀,我不太赞同内存耗尽的说法是因为当时看到状态栏的 istat 显示的内存用量并没有满,当然也可能是因为系统已经出现问题导致状态栏没有刷新,istat 显示的不是当时时刻的内存用量。
”为什么不经验证?” -> “今天在打开应用的数量不多的情况下再测试一下” @ai277014717 #8 我最长的运行时间是俩月,当时重启的原因是出现了一些莫名其妙的小问题(不是卡死转菊花)就重启了。盒盖待机掉电的话,经历过最多的一次掉电是一晚上掉了 10% |
12
Nitroethane OP @fashioncj #10 准备今天盒盖之前不关掉 activity monitor,过十几个小时看看状况
|
13
Roojay 2020-01-04 14:51:35 +08:00 via Android
我使用的时候隔一段时间必须重启,不然动不动转菊花
|
14
wanguorui123 2020-01-04 14:54:32 +08:00 via iPhone
苹果真是索尼的徒弟,每次升级 bug 比新功能都多
|
15
yzxhzxsw 2020-01-04 15:01:40 +08:00
crontab -l 把里面的任务删了,我的之前是这么解决的
|
16
zh4710jj 2020-01-05 05:05:59 +08:00
确实可能是某个进程疯狂 fork 造成的吧,我之前就是实验室服务器进程开多了,报这个错的(连 ssh 都不能创建了),不过我当时创建了大概上千个……,不知道你这里为什么也会占满
|
17
chunlinyao 2020-01-05 07:45:43 +08:00 via Android
我的 Mac 出现大量 cron 进程没有正常退出
|
18
konakona 2020-03-02 14:08:09 +08:00
我也是,还在努力排查 ing,按照楼上几位的方法,大概可以这样看看:
活动监控器->搜索输入 cron->出现后,双击任意一个 cron,出现详情窗口,点击“取样”然后分析下。 如果想看当前有多少 cron,命令行输入:ps -ef | grep cron | wc -l 我有 530 个。 |
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 |
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,暂时没有找到源头。 |
21
konakona 2020-03-02 15:46:20 +08:00
|