我有一个很古老(我想是 2009 年左右)Mac Mini,现在它实际上只是充当我们 TimeMachine 备份的 NAS。它一直运行良好,直到大约 2 天前,那些备份突然停止工作。我也无法通过共享屏幕连接到它。当我尝试时ssh
,我意识到它正在运行非常缓慢地。需要 3-5 分钟才能ssh
登录。大多数情况下,这些操作都会超时,但如果我真的可以打开连接,它就会保持打开状态……只是速度非常慢。甚至弄清楚我正在运行 El Capitain 也花了将近 6 分钟:
Krotos:~ cwr$ time uname -a
Darwin Krotos.local 15.6.0 Darwin Kernel Version 15.6.0: Thu Jun 21 20:07:40 PDT 2018; root:xnu-3248.73.11~1/RELEASE_X86_64 x86_64
real 5m58.602s
user 0m0.007s
sys 0m0.007s
运行top
很容易就需要 1-2 分钟才能开始输出(但随后输出似乎以正常速度更新)。
我假设它在做一些事情,但是......我不知道是什么。top
当它启动并运行时,看起来像这样:
Processes: 90 total, 2 running, 17 stuck, 71 sleeping, 365 threads 09:49:05
Load Avg: 1.07, 1.10, 1.07 CPU usage: 0.97% user, 0.48% sys, 98.54% idle
SharedLibs: 100M resident, 6980K data, 45M linkedit.
MemRegions: 30832 total, 775M resident, 53M private, 153M shared.
PhysMem: 2098M used (1007M wired), 6350M unused.
VM: 286G vsize, 535M framework vsize, 0(0) swapins, 0(0) swapouts.
Networks: packets: 8361/986K in, 1770/314K out.
Disks: 11164/837M read, 2740/43M written.
PID COMMAND %CPU TIME #TH #WQ #POR MEM PURG CMPR PGRP PPID
281 AppleFileSer 0.0 00:00.20 8 0 78 13M 8192B 0B 281 1
280 top 1.2 00:02.98 1/1 0 22 3044K 0B 0B 280 222
278- fpsaud 0.0 00:00.13 1 0 2 80K 0B 0B 278 1
270 ocspd 0.0 00:00.22 2 0 30 7376K 0B 0B 270 1
269 makewhatis 0.0 00:00.03 1 0 12 584K 0B 0B 245 267
267 sh 0.0 00:00.01 1 0 17 652K 0B 0B 245 2
...
在我看来,世界一切都好。
无论发生什么,它似乎都发生在网络层之上,因为,例如,我ping
在尝试时连续运行which grep
。我在 100 个数据包后停止了,但它既快又没有丢失任何数据包:
64 bytes from 192.168.1.10: icmp_seq=101 ttl=64 time=1.315 ms
^C
--- krotos.local ping statistics ---
102 packets transmitted, 102 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 1.096/1.927/3.488/0.472 ms
which
另一方面,命令……
Krotos:~ cwr$ time which grep
/usr/bin/grep
real 1m10.675s
user 0m0.007s
sys 0m0.005s
磁盘空间似乎也很好,尽管要花很长时间才能弄清楚:
Krotos:~ cwr$ time df
Filesystem 512-blocks Used Available Capacity iused ifree %iused Mounted on
/dev/disk0s2 232762432 119458488 112791944 52% 14996309 14098993 52% /
devfs 383 383 0 100% 664 0 100% /dev
map -hosts 0 0 0 100% 0 0 100% /net
map auto_home 0 0 0 100% 0 0 100% /home
real 3m4.875s
user 0m0.007s
sys 0m0.007s
我想我可以去借一台显示器然后插上电源,但是,我真的很想能够从命令行诊断这个问题。我试过重新启动,但问题仍然存在。也许它只是在执行那些神秘的 MacOS 操作之一,例如重新索引聚光灯数据库或类似的东西,几天后它就会完成它正在做的事情,但是......我想知道是什么(以及这是否是真的,我应该等几天,或者它是否是一个更大的问题,不会就此消失)。
我还能看什么来弄清楚为什么当 CPU 似乎几乎完全空闲并且有足够的内存和磁盘空间时,简单的命令却需要几分钟?