为什么我的ubuntu 16.04 LTS突然变得很慢?

去年10月,我在新购买的HP Envy i7-6700 CPU(基于x64的3.4GHz 4核8处理器,16 GB RAM,2TB硬盘)上安装了ubuntu 16.04 LTS,它运行正常,直到去年之前X-mas假期的时候变得很慢,有些时候是灰色的窗框。 它似乎停留在某个地方。

我在Dell Precision M4800上运行Ubuntu 16.04。 今天,我的系统突然变得极其缓慢。 谷歌搜索问题把我带到了这里。

我通过引导进入BIOS并禁用一些电源管理function来解决这个问题,这些function旨在降低CPU功耗,而无需做多少工作。 重新启动到Ubuntu后,我的系统再次正常运行。

我之前的笔记本电脑也存在这个问题 – 不知怎的,似乎Ubuntu可能会永久性地将Intel CPU“卡在”低功耗,低性能配置中。

作为另一个答案,我的解决方案是在BIOS上禁用SpeedStep。 我发现我的cpu运行速度较慢。 我的CPU应该以1800MHz运行,但是运行在1000MHz。 您可以使用多个shell命令查看当前CPU速度,例如:

lscpu 

要么

 cat /proc/cpu 

我的充电器似乎存在问题,这使得Ubuntu将CPU置于低功耗模式。

当它在终端窗口(ctrl-alt-t)中缓慢发出时,使用进程显示最高资源

 top 

这是第一行右边的输出…通知load average

 top - 11:48:11 up 3 days, 8 min, 1 user, load average: 0.23, 0.39, 0.54 Tasks: 276 total, 1 running, 272 sleeping, 0 stopped, 3 zombie %Cpu(s): 1.8 us, 0.7 sy, 0.0 ni, 95.2 id, 2.3 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 16326792 total, 6946732 free, 1726764 used, 7653296 buff/cache KiB Swap: 16669692 total, 16669692 free, 0 used. 13860968 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 17093 stens 20 0 1629772 446180 121904 S 5.6 2.7 137:51.51 firefox 14358 stens 20 0 1390800 420448 113728 S 4.2 2.6 0:35.42 Web Content 1219 etcd 20 0 639392 28764 12468 S 2.8 0.2 9:24.84 etcd 1531 root 20 0 470212 72960 56564 S 1.4 0.4 25:49.02 Xorg 2718 stens 20 0 1266236 112712 61796 S 1.4 0.7 52:15.46 compiz 2757 stens 20 0 506036 25220 19440 S 1.4 0.2 32:02.48 indicator-multi 3228 stens 20 0 712920 69960 35624 S 1.4 0.4 2:51.65 gnome-terminal- 3488 root 20 0 251432 53740 24132 S 1.4 0.3 5:33.92 mongod 13335 root 20 0 0 0 0 S 1.4 0.0 0:01.17 kworker/u16:3 

通常,一旦load average超过5左右,它就会显得很慢。在COMMAND列出的YMMV …是顶级资源消费者的有序列…当它缓慢杀死任何一个进程正在减慢它以确认你发现了糟糕的行为过程…在运行top它会每隔几秒自动刷新一次,如果匆忙击中空格键强制刷新…按键m将关注显示内存饥饿进程…以消除最耗费资源的进程只需按下键k ,您可以从中输入选项或只需按Enter键

由于互联网带宽不足,上面与慢速无关。 如果慢一点意味着浏览器速度慢,那么简单的检查就是http://beta.speedtest.net/

top替代品是

 htop atop iotop 

调查缓慢的另一个途径是查看系统错误是否会被系统日志…问题

 dmesg 

寻找条目(向上滚动终端按住class次然后按键page up …或滚动鼠标中间滚动按钮)重要条目显示为红色或出现错误相关然后研究它们…如果你正在运行一些流氓驱动程序未调整到您的硬件或未能与其他人合作,那么其冲突的行为可能会表现得很慢……以清空之前的条目问题

 sudo dmesg -c 

设置dmesg问题的实时监控

 watch "dmesg | tail -20" 

这里有更多要检查的日志

 cat /var/log/syslog cat /var/log/kern.log 

让我们知道你是如何进行的 – 这当然是可以解决的…… linux的一个主要优点是它有效地使用硬件以及它能够提供控制来调整一切