尝试加载特定网站时出现“内存不足”错误(不是内存不足)


15

更新: Rich的解决方案(带有复选标记)解决了我的问题!我还发布了一种解决方法的答案,如果Rich的解决方案对您不起作用,该方法可能会有所帮助。收到赏金的答案在当时是最好的,但它没有实际的解决方案(尽管它有助于故障排除)。


我遇到了我的计算机(Macbook Pro,8GB RAM,OS 10.8)无法尝试加载某些网站的问题。除了重新启动之外,没有任何其他方法可以解决此问题。当我的计算机或Internet连接上没有其他明显错误,并且其他站点加载没有问题时,就会发生这种情况。

发生这种情况时,这是我得到的错误:

  • Error 13 (net::ERR_OUT_OF_MEMORY)
  • Safari"The error is: 'The operation couldn't be completed. Cannot allocate memory.' (NSPOSIXErrorDomain:12)"
  • Firefox:输入URL并按回车键后无响应(无错误消息,没有任何提示表明它正在加载或试图与该网站联系)。
  • ping

    PING google.com (74.125.224.135): 56 data bytes
    ping: sendto: Cannot allocate memory
    ping: sendto: Cannot allocate memory
    Request timeout for icmp_seq 0
    ping: sendto: Cannot allocate memory
    Request timeout for icmp_seq 1
    

(之后我取消了)

我第一次注意到这一点,它发生在我尝试访问的一个或两个站点上。我仍然可以使用Facebook和Google。当天晚些时候,该错误也扩展到了Facebook和Google。重新启动后,这些站点再次变得可访问,但后来我变得无法访问其他站点(stackexchange.com,Surveygizmo.com)。

其他注意事项:

  • 我可以确认这是在多个无线网络和VPN上发生的。
  • 在这种情况发生的那一刻,我在8 GB的总内存中有2 GB的“不活动” RAM和500 MB的“空闲”内存,因此我实际上并没有内存不足。其他网站和应用程序反应迅速,没有过度交换的迹象。
  • ping的响应似乎表明该问题不会影响DNS(尽管IP地址可能已缓存在某个地方)。

此Apple支持线程中,我仅找到了另一个对此问题的引用。除重新启动外,未找到任何解决方案。

注意:这是没有用完RAM问题

活动监视器显示大量可用/非活动内存。不会发生过多的分页。其他网站加载没有问题。可能还会发生其他类型的内存分配错误,但是我无法想象任何简单的旧RAM短缺都会禁用某些特定网站的情况,而对性能没有其他影响。


在我看来,您的RAM一般用光了吗?看一下内存的运行方向(处理过程)。
格里2012年

谢谢,但我不认为这是问题所在。发生这种情况时,没有任何延迟或交换的迹象;它只是立即给我错误。其他程序和浏览器选项卡继续响应而没有延迟。而且,可用RAM的2.5G相当大(除非发生严重损坏,并且无法重新分配不活动的内存)。
2012年

很有可能是某些东西坏了,但这不是浏览问题,而是更普遍地与您的内存管理有关。
格里

休息片刻后,问题又回来了。这次是阻止我访问我的任何工作文件,所以我真的需要修复!赏金增加了。
2013年

2
此问题不太可能与系统内存有关,而是与网络缓冲区有关。请向我们显示的输出netstat -m。您正在使用什么VPN?不使用VPN时看到问题了吗?
AndrewNimmo 2013年

Answers:


6

我无法通过禁用和重新启用TCP / IP或Wi-Fi来恢复网络。在我的情况下,计算机似乎已通过Juniper VPN连接进入睡眠状态,并且在唤醒后,连接已超时并且未清理路由。对我来说,我有两台计算机,一台可以工作,一台不工作,因此能够在运行后确定问题所在netstat -rn

在无法正常运行的计算机上,我的目标地址为192.168.43.1,网关为链接5。在运行WAS的计算机上,该目标的网关是无线路由器的mac地址,因此我使用以下命令删除了该路由:

sudo route delete -host 192.168.43.1

在此之后,我可以对无线路由器执行ping操作,然后又返回到Internet。

有人声称进入设置→网络→Wi-Fi→高级→代理并打开自动代理发现对他们有用。我无法验证这一点,因为我的连接已通过删除“死”路由而修复。


这可行!与我的解决方案不同,它实际上解决了潜在的问题并有助于解释发生了什么。谢谢!
2014年

回想起来,瞻博网络客户端似乎也是我遇到问题的原因。我现在可以报告,自从我的组织停止使用Juniper并切换到OS X本机VPN接口以来,这种现象没有再发生。
2015年

4

这既不是RAM也不是磁盘相关的问题。

由于您的网络接口之一的行为异常,这是一个内核问题。这里是一些命令,可在发生此问题时开始查找问题的根源:

  • netstat -mm 将提供有关您的缓冲池使用情况的详细信息;
  • netstat -I en0如果您使用的实际网络接口是en0(以太网),则将显示任何实际错误(错误,错误);
  • netstat -r 会告诉您通往世界各地的路线是否正确。

这种不当行为可能是自动或有针对性的网络攻击的结果。如果您怀疑自己可能要面对这样的情况,可以采用以下方法直视事实:

  • 留下任何网络应用(SafariMailssh...),以限制(网络接口),自己已知的噪音;
  • 打开a Terminal并键入:(/usr/bin/sudo tcpdump -i en0如果您的接口是en0==以太网);
    • 如果输出tcpdump保持沉默,则不会受到攻击,只需键入control-C退出此特权应用程序
    • 如果的输出tcpdump泛滥,您将受到攻击。如果遇到这种情况,请发布此输出和上面3个命令输出的摘要。

我仍然无法测试,但是我会尝试的。我已授予赏金以防止其过期。谢谢您的建议。
2013年

我对您的以下测试非常感兴趣,因为我遇到了同样的难以重现的问题……而且我必须杀死它!
2013年

3

使用sysdiagnose工具可以很容易地找到它。

当浏览器出现楔入和随地吐痰的错误时,请打开终端,然后将浏览器名称作为脚本的参数添加:(因此,如果Safari崩溃了)

 sysdiagnose Safari

此工具会调用sudo,需要您输入密码(它不会显示在屏幕上,因此,如果您是sudo新手,请缓慢输入密码,如果看不到密码,则容易输入错误密码)。

此时,您将获得一个巨大的系统诊断tar.gz文件,该文件存储在/ private / var / tmp中,您可以将其复制到桌面上并仔细研究。这有点像在大海捞针上找针刺-但是您可以确定,如果重新启动使一切正常,直到重新触发/使用任何错误或资源,您都可以确保某些资源已满。


谢谢你的建议!我必须重新启动才能完成一些紧急工作,因此该问题暂时未解决。我一定会尝试您的建议,并在下次出现时发送答复。
2013年

听起来不错-如果您无法诊断问题,也可以向Apple提交错误报告。他们可能不会回答以帮助您解决问题,但是他们可以使用您提交的数据解决基础问题,以解决系统再次崩溃时的外观问题。
bmike

2

查看您的路由表(netstat -rn在终端上运行)。重新启动后,此问题甚至仍然存在。

我已经通过禁用TCP / IP解决了类似的问题(系统偏好设置»网络»Wi-Fi»高级»TCP / IP)并为Wifi /以太网接口重新启用TCP / IP,。


1

此问题不太可能与系统内存有关,而与网络缓冲区有关。请向我们显示netstat -m的输出。

您正在使用什么VPN软件?不使用VPN时看到问题了吗?


0

一些建议,尽管您可能已经尝试过:

  1. 清除缓存,无处不在...运行Cocktail或MacPilot彻底消灭它们。
  2. 清除Internet Plug-insLibrary文件夹中的文件夹。每个浏览器都会使用它们。
  3. 我还建议创建一个新的新用户帐户并在那里进行测试,以查看会发生什么。

0

我的朋友曾经在Google Chrome浏览器中遇到过类似的问题,该问题导致它拉动RAM。当活动监视器发生此问题时,您可能会查看哪些程序正在使用多少RAM。如果Google Chrome有一个子操作,则您可以尝试重新安装它。


0

经过大量盲目试验,我找到了解决方案!如果我在路由表中为无法加载的IP块手动创建一个条目,则可以解决此问题。

步骤1:找到您要加载的站点的IP地址。

您可以使用pingdig或进行此操作nslookup(有关详细信息,请参阅此问题)。

第2步:查找网关的IP地址

您可以从网络控制面板,ifconfig或通过运行netstat -rn并记下“默认”条目旁边的IP地址来找到它。

步骤3:为受影响的IP地址或块创建路由表条目

使用命令 sudo route add [affected IP address] [gateway IP address]

如果像我一样,一次对整个IP块有此问题,则可以输入整个/ 8块。例如,如果您要访问的网站地址为173.231.155.34,则可以输入sudo route add 173.0.0.0/8 [gateway IP address]

这是一个非常糟糕的解决方案。如果更改为具有其他网关地址的网络,或者重新引导,则必须手动重新输入所有这些信息。并且它仍然没有解释为什么这首先发生。但这确实使我可以使用计算机,而以前我完全无法使用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.