我有一个运行 xfce 和 2 GB RAM 的 Ubuntu 系统。我有一个 1GB 的交换文件,当多任务开始填满时,它会占用大量空间。当我有少量的可用交换空间时,我没有问题,但是一旦交换空间填满,系统就会锁定。甚至鼠标都无法移动,尽管我可以使用 [Alt]+[SysRq]+[K] 来关闭 xfce,但这仍然需要重新启动才能再次启动和运行。如果需要,我将提供更多系统详细信息。提前致谢。
答案1
是的,当内存/交换空间耗尽时就会发生这种情况。另一方面,我原本以为 Ubuntu 会开始终止随机进程,拼命避免崩溃。这是系统某个地方的配置,但一旦内存耗尽,文件系统继续运行就不安全了。因此,最明智的做法是停止系统,尽量不要损坏任何(更多)数据。
您必须弄清楚内存不足的原因,哪个应用程序导致这种情况发生。top
或者htop
可以帮助您。htop 可能需要与一起安装sudo apt-get install htop
。的优点htop
是您可以轻松地指向并单击要排序的列标题。
如果不能消除该程序,最好的办法是添加额外的 RAM,但这需要花钱。第二个最佳办法是增加交换空间,但这会降低性能。
作为临时解决方法(直到下次重新启动),您可以测试这是否有效:
- 找到一个有大量可用空间的文件系统。大多数默认安装
/tmp
都可以df -h /tmp
。至少应该有几 GB 的可用空间。 - 创建一个大文件(例如 1M × 2000 = 2GB)
dd if=/dev/zero of=/tmp/extra.swap bs=1M count=2000
- 将文件初始化为交换空间
mkswap /tmp/extra.swap
- 开始使用文件作为交换空间
sudo swapon /tmp/extra.swap
如果这对您有用,您将必须研究如何找到更明确的解决方案。