可用RAM消失-内存泄漏?
在新启动的系统上,free报告有关1.5G已用RAM(总共8G RAM,带有lightdm和血浆桌面的Ubuntu 12.04,启动了一个konsole窗口)。运行我使用的应用程序,它仍然消耗不超过2G。但是,将系统运行了两天后,越来越多的可用RAM消失了-不会出现在已用应用程序列表中:虽然smem --pie=name报告的已用率不到20%(可用率是80%),不一样 free -m例如第7天的报告: total used free shared buffers cached Mem: 7459 7013 446 0 178 997 -/+ buffers/cache: 5836 1623 Swap: 9536 296 9240 (因此您可以看到,它不是缓冲区或缓存)。如今,这种情况终于以系统完全崩溃而告终:Windows管理器消失了,应用程序“悬空了”(无框架),并且弹出窗口通知我“打开的文件太多”。Syslog报告: kernel: [856738.020829] VFS: file-max limit 752838 reached 因此,我关闭了能够关闭的那些应用程序,并使用Ctrl-Alt-backspace取消了X。之后,X尝试使用failsafeX重新启动,但由于无法检测到其配置而无法执行此操作。因此,我使用Ctrl-Alt-F2切换到控制台,捕获了我可能想到的所有信息(vmstat,free,smem proc/meminfo,lsof,ps aux),最后重新启动。X再次提出了failsafeX;这次,我告诉它“从备份的配置中恢复”,然后切换到控制台并成功用于startx启动图形环境。 我不知道是什么原因导致了这个问题-尽管它必须与X本身或运行在X上的某些用户进程有关-在杀死X之后,free -m输出看起来像这样: total used free shared buffers cached Mem: 7459 2677 4781 …