几周前,我在这里问了这个问题:当系统冻结时,最好的措施是什么
我的系统是一台出色的联想 X220,配备 i5 2520M、6Gb Ram 和 960Gb SSD,安装了 Ubuntu 16.04 64 位。
我的使用纯粹是开发,并且我始终保持至少两个浏览器打开,我首选的 FF-Dev 版本和 Chrome/Opera。冻结每天都在继续,我最终放弃并重新启动系统。
我刚打开我的电脑system monitor
,发现有些奇怪。请看这个:
奇怪的是,系统内存几乎完全用完了,但交换空间却几乎没有动过。为什么系统没有将一些文件迁移到交换空间?
深入挖掘后发现,Firefox-Dev 似乎是罪魁祸首。但是,我犹豫着是否要清除它。有没有解决此内存问题的建议?
附言:这是我的系统开启 5 分钟后的结果,只要我不使用它,我就会关闭它。
更新:
回应 Ravexina 的回复,这是目前统计数据的更好图片,这是在我atom
未打开 (IDE) 时。系统现在运行良好,我想我的警报是 Firefox 消耗太多。
答案1
不要使用系统监视器,而是使用一些专门设计用于监视内存使用情况的实用程序;诸如free
或之类的东西vmstat
。
如果你运行类似的命令free -h
,你会得到类似如下的输出:
total used free shared buff/cache available
Mem: 6G 1G 5G 65M 3G 4G
Swap: 4G 0B 4G
如你所说:
奇怪的是,系统内存几乎完全用完了。
事实上并非如此,您的很多内存都用于缓冲和缓存内容,这意味着它们可以在需要时使用。Linux 只是使用它们来高效地使用所有可用内存。请注意“可用”列。
“已用”列是您的程序实际使用的内存量。
至于交换空间,只有当内存不足时才会使用,比如说“已用”列几乎接近“总计”或任何其他类似情况。例如,我有 8G 的交换空间,但几乎一直没用。
当您的缓存被大量使用时,这表明内存出现了问题;也许我们没有足够的内存等等。这会降低系统速度,因为您使用的是部分硬盘而不是 RAM 内存,而 RAM 内存与 RAM 相比速度非常慢。
所以我不认为你的问题与不使用交换有关,它可能由于内存不足,正在使用交换空间。
检查您实际有多少可用内存以及哪些进程正在使用它,这可能有助于解决您的问题。
我想这足以引导你的问题。;)
答案2
您能否提供更多信息:浏览器启动时通常加载的选项卡数,仅 ff-dev 或 ff-dev + Chrome + Opera @same 每个可能使用 10 个选项卡,您是否使用休眠作为电源选项等。我想到了很多东西,但您需要提供更多简洁的信息以便我们帮助您,毕竟您是一名开发人员,所以我敢打赌您和我一样懒,但有时您需要排除机器故障才能修复它。去获取更多信息并将其发布到这里。Ubuntu 16.02 还是 Ubuntu 16.04.2?您使用的是什么环境,使用 blame 等记录启动程序和服务,进行一些故障排除并向我们发布有关您系统的日志和更多简洁信息。
最重要的是,我认为你的 Swap 分区对于你的 Ram 比例来说太小了。使用 SSD 可以获得更好的性能。
我也在我的笔记本电脑上做开发工作,但它从未超过 5% 的处理器核心或 8GB 的 2-3GB Ram,一个模块最近烧毁了,但在 8GB 的情况下也能正常工作,并且第二个插槽中没有 SSD,机器内部只有 7200 RPM 的 HDD,在 RAM 和 SSD 触电烧毁后,我第一次创建了 SWAP 分区(16GB Ram 根本没有它,因为在我的情况下它从未超过 5GB)。我想你应该检查所有的场景和变量,并帮助我们帮助你解决问题,myb 提供你经常运行或在系统启动时运行的服务/包。我禁用了 apache2、mongod 和 MySql 服务器的自动启动,以便在需要时弹出它们,还有 NodeJS 和更多可能耗尽你设备中 i5 的东西。
你使用什么 IDE,如果这不是秘密的话,你从事什么类型的开发工作?描述标准场景/情况,例如你说“这发生在 5 分钟后。系统启动时间”你通常在前 5 分钟做什么。或者只是提供启动程序/服务,sudo systemd-analyse blame
很多东西可以在那里完成混乱的工作,我的朋友,只需要你提供更多信息来更快地解决问题。
这是我的所有 4 台服务器运行 10-15-30 分钟的情况。现在,并且积极使用 phpmyadmin 来运行 MySql,同时使用 Robomongo - MongoDB Gui 和 Apache Server 和 Postgre-9.5,在 Chromium 9-10 选项卡中浏览并打开 Firefox,因此,几乎有 300 个进程和 10 多个面板,并且仅使用了 3GB 的 Ram(顺便说一下,这是我的高使用率),如您所见,处理器的使用率仅略高于 2%。
这是我当前系统状态的屏幕截图,如果您愿意,请向我发送反馈,或者查看它并与您通常的使用水平进行比较。
https://i.stack.imgur.com/z1Aai.png
稍后我会再检查主题,并在您提供更多信息时尝试帮助您解决问题,我真的很想知道是什么让您如此困扰。
更新
这取决于克隆工具和您执行的克隆类型。但是,假设您保存了不想丢失的数据,是时候在您的 SSD 上创建新的分区表了,让那台机器喘口气吧 :) 它无缘无故地阻塞了。是的,Firefox-dev 是一款资源优化不佳的浏览器,它会很快占用大量 RAM,我确实在我的旧设备上使用了它,一段时间后我意识到我并没有从中获得太多好处,相比之下,更轻量的 Chromium + FFox(普通版)涵盖了 Web 开发测试的各个方面,并且使用一些插件,您甚至可以获得更多,而 dev-edition 占用的资源更少。您需要找到一个适合您需求的 Linux 发行版 + 桌面环境的完美组合,当然还要尊重设备要求,并根据这一点,打造完美的 IDE,没有这样的头痛,早上喝第一杯咖啡时微笑,感到满意,您可以自由工作,而不必担心数据丢失或硬件故障+数据丢失(但愿不会发生):)
如果您需要任何帮助来根据您自己的需求和开发变化构建自己的装备,请告诉我。
干杯