Mavericks Finder打开文件夹时旋转


18

由于升级到Mavericks,当我选择一个文件夹并等待其内容填充窗口时,Finder有时会挂起。这主要发生在“打开”对话框中:

Finder旋转

在显示该文件夹中的项目之前,它将旋转大约15-30秒。我可以“转到文件夹”,在这种情况下,它通常会立即显示内容。为什么旋转,并且有办法使其更快?(应该是即时的。我不会进入包含数千甚至数百个项目的文件夹。)

说明:这些只是常规的本地文件夹,通常在我的主目录中……而不是远程光盘或网络共享或任何奇特的东西。这是2013年初的Retina MBP,因此具有固态硬盘。

Answers:


11

关于此问题,有许多Apple支持社区讨论,并给出了许多可能的修复方法。总结一下以防万一:

  • 禁用Finder应用小睡

    这似乎可以解决ASC上几乎所有在Finder中工作良好且在10.9中“损坏”的人。

    sudo defaults write com.apple.Finder NSAppSleepDisabled -bool YES
    

    …然后注销并禁用“重新登录时重新打开窗口”功能。

  • 清除查找器缓存

    清空~/Library/Caches/com.apple.finder并重新启动Finder。

    rm -r ~/Library/Caches/com.apple.finder/ && killall -HUP Finder
    
  • 重置查找器首选项

    与上述相关—删除Finder使用的两个首选项文件:

    rm ~/Library/Preferences/com.apple.finder.plist ~/Library/Preferences/com.apple/sidebarlists.plist
    
  • 重新索引聚光灯

    sudo mdutil -E /
    
  • 更改“显示滚动条”设置

    似乎可以通过将“系统偏好设置”→“常规”中的滚动条设置从“滚动时”更改为“始终”来解决。

  • 维修权限

    尝试修复“磁盘工具”中的权限。


不幸的是,这些并没有为我解决问题。但我喜欢您可以尝试的很多事情!
马特2014年

Disable Finder App Nap为我解决了!
Macki 2014年

4

我不了解所有具体的技术细节,但这显然是由执行NXDOMAIN拦截的ISP引起的。在该论坛帖子之后,请尝试在Terminal中运行它:

ping Backups.backupdb

如果没有收到以下答复:

ping: cannot resolve Backups.backupdb: Unknown host

...然后您的ISP 正在执行NXDOMAIN拦截,这导致了延迟。

禁用拦截的过程取决于您的特定ISP。例如,如果您使用的是OpenDNS(默认情况下会进行拦截),则可以在帐户设置中将其禁用。


我的机器上遇到了完全相同的问题,并且我使用的是OpenDNS(但没有帐户,因此无法更改设置)。我只是切换回我的ISP(AT&T)的默认DNS(由于ping上面得到了“正确”的响应,因此显然不进行拦截),问题立即消失了。

(我个人对此解决方案不屑一顾;我在这里只是为了其他所有人的利益对其进行报告。这在Mavericks中似乎是一个非常普遍的问题)。


显然,这里没有NXDOMAIN拦截。(使用Google的DNS。)感谢您在此处报告!
马特

另一项支持证据:进行此更改后,挂起在我的家庭网络中完全停止了,但是在我上班时又出现了。ping当我在那里时,我没有机会进行测试,但是很明显,它与网络有关,因为这两个地方都是同一台机器。
daGUY 2014年

哇,这很有趣。谢谢,它为我解决了此问题,但是现在,我永远对可能导致此挂起的原因感到好奇。您不会认为DNS和Finder的速度降低完全相关。
安迪·伊瓦内斯

2

快照显示,异步进度指示器(throbber)是侧边栏要绘制的部分:

  • 连接的服务器
  • Bonjour可发现的服务
  • 回到我的Mac

您应该能够专注于网络并隔离这是否确实是在延迟您的工作,或者仅仅是无辜的旁观者,这是在其他情况下暂停和延迟系统时要画的下一件事。

要解决此问题,我将执行以下操作:

  1. 如果我可以重现该问题,请从终端运行sysdiagnose,并查看是否可以使用CPU捕获进程,或者在系统空闲时是否与sysdiagnose有所不同。如果您不喜欢查看系统日志并进入终端,请跳过此步骤。如果您想将此错误报告为错误,则此步骤可能很有价值-我认为系统不应挂起以绘画网络服务,并且应解除阻止该操作并稍后显示网络设备(如果这样做很慢)。
  2. 关闭侧边栏的Finder首选项中的上述所有三个项目。
  3. 注销返回我的Mac
  4. 断开网络连接

由于可能有多个项目,如果我错过了一个步骤,或者发现了有关该问题的更多信息,希望您可以缩小范围或发表评论。另外,请确保没有任何工具,例如Little Snitch或Network Link Conditioner,因为如果配置错误,它们会明显加剧侧边栏的网络共享部分的呈现。


我建议同样的罪魁祸首,但顺序如下:4.(这是与网络相关的问题,我认为这是:(),2.,3.,1。(这将是最难分析的权利: ()
2014年

1
我喜欢先测量,然后有意地更改并重新测量。我可能不会详细检查日志,但是如有需要,请捕获它们。我同意断开网络连接是一个很重要的步骤,只是试图在步骤1中识别出某种东西,而不是“除非找到任何东西,否则不要继续” :)
bmike

首先将步骤1确定为不当行为的快照以及沿寻线的参考。
2014年

这确实是一个聪明的主意。但是我在本地文件夹上以及与网络断开连接时遇到了这种延迟,因此我认为这不是网络问题。
马特

2

是否在您拥有的每个驱动器上?因为如果在不同的硬件上是相同的行为?(USB拇指驱动器和内部磁盘之间的行为差​​异)

在终端或即时中,“ ls”命令是否同样慢?(尝试使用终端和cd并将示例文件夹拖到终端中,然后按Enter。然后键入“ ls”以查看列出文件夹内容需要多长时间。)

  • 这也可能是由于HFS +损坏(运行磁盘实用程序“验证磁盘”(不是权限),并查看您的(我猜您的启动卷是否受到影响)是否有问题。可能会从恢复启动(按住cmd) + R引导),然后尝试从那里使用磁盘实用程序修复磁盘。
  • 最后但并非最不重要的一点是,您是否尝试过设置新的用户帐户并尝试在新的用户帐户中复制它?

很抱歉有很多问题,但我(希望如此)还没有评论问题。


感谢您的贡献。ls总是即时的。但是,有趣的是,启动磁盘上的“验证磁盘”产生了一些错误:“文件硬链接数不正确”和“卷位图需要对孤立块进行较小的修复”和“无效的可用块数(应该为43437880,而不是40702664)”-其他一切都很好。我会尝试进行维修,看看是否有帮助……
Matt

从那时起,我进行了维修,但没有发现问题(但是还没有很久),无论哪种方式,这都是一件好事,您的问题也更深入地探讨了我的问题。赏金将在几分钟内到期,因此我授予了您,也欢迎社区。再多一点时间,我应该能够选择一个最佳答案(如果有一个可以解决的最佳答案;但是也许苹果应该就此解决!)。
马特

Phooey,它仍在发生。
马特

@Matt您看到与我的答案有关的任何内容吗?
markhunte 2014年

好的,非常感谢!您是否尝试过建立新的用户帐户并分析此问题是否也出现在新的本地用户中?
2014年

2

刚刚在Tuaw.com上看到了这篇文章,作者是 Erica Sadun,如何修复filestatsagent-bug

引用来自tuaw.com的帖子:

有时,您的系统似乎正在旋转。窥探活动监视器(位于“应用程序”文件夹的“实用工具”子文件夹中)可以提供有关正在发生的事情的线索。...

..正如我发现的那样,某些Mavericks用户可能会发现FileStatsAgent进程已经吞噬了CPU。如果您遇到这种情况,通常是由于文件损坏。

然后,他们继续说明有关在进程上使用“活动监视器”中的“打开文件和端口”选项的过程,以查看可能引起问题的文件。

这可能不是您的问题。


2

注意:尽管答案现已完全更改,但这只是一个较晚的编辑。我希望无论如何都会从中受益。

最后,从OSXDaily找到了一个可行的解决方法。总而言之,禁用网络共享自动挂载可以解决问题(至少对于我安装了Mavericks的几台Mac)。

要禁用网络共享自动挂载,请打开Terminal.app并键入以下命令。

macbook:~$ sudo sh -c "cp /etc/auto_master /etc/auto_master.OLD && perl -i -pe 's/(^\/net)/#\$1/' /etc/auto_master && automount -vc"

这样做的目的(对于那些不太了解命令行,Bourne Shell等的人来说)是,它首先制作了文件的备份副本/etc/auto_master,然后编辑了其中的一行,最后发出自动挂载器重新读取的信号/etc/auto_master

之后,您将必须手动安装网络共享。更多信息,请参见OSXDaily原始文章


好主意-我想知道是否为图标生成预览是造成问题的一部分。不幸的是,即使在其中仅包含一些项目的目录下,我仍然会在应用程序中间歇出现缓慢的Finder行为。
马特

我也经历过,但是确实从上面的解决方案中得到了一些帮助。我还更新了答案,以反映这一事实并非100%解决方案。
萨米·莱恩

1

我一直遇到相同的问题已有几个星期,尝试这里和其他论坛中列出的每个建议,但都没有成功....直到今晚!

TL; DR:运行这两个命令,然后重新启动。

mv ${TMPDIR}/com.apple.IconServices{,-bad}
mv ${TMPDIR}/../C/com.apple.IconServices{,-bad}

长版

当我尝试一个新创建的用户帐户时,该问题没有发生,因此它指向了我的个人资料。我从“库”文件夹中删除了所有“首选项”和“缓存”,但问题仍然存在。

检查系统日志后,我注意到在Finder中查看文件夹时,经常会出现以下2个错误。

12/16/14 12:24:29.908 AM com.apple.IconServicesAgent[244]: main Failed to composit image for binding VariantBinding [0x2af] flags: 0x8 binding: FileInfoBinding [0x3bf] - extension: mov, UTI: com.apple.quicktime-movie, fileType: ????.
12/16/14 12:24:29.908 AM quicklookd[8215]: Warning: Cache image returned by the server has size range covering all valid image sizes. Binding: VariantBinding [0xa03] flags: 0x8 binding: FileInfoBinding [0x903] - extension: mov, UTI: com.apple.quicktime-movie, fileType: ???? request size:16 scale: 1

这些与为不同文件类型创建/加载图标有关。Finder在尝试为文件列表绘制图标时挂起,因此,如果缓存出现问题,它将滞后。由于IconServicesAgent不是用户与之交互的应用程序,因此缓存/首选项不会保存在典型的〜/ Library /文件夹中,而是保存在用于OS级应用程序和守护程序的特殊隐藏位置中。每个用户在的该位置都有一个Cache and Temp文件夹/var/folders/。我们只需要找到并重命名IconServicesAgent的文件。

创建用户帐户后,系统会在此处为用户生成一个文件夹,但使用32个看似随机的字符命名。由于它们是随机的,因此我无法给您确切的路径,但是TMPDIR环境变量可以。(如果您想知道,请运行命令echo $TMPDIR以获取您自己的Temp文件夹的路径。这类似于/var/folders/jc/vzc51tfn2jzbzqkr9j3g38gm0000gn/T/但我们实际上并不需要它。下面的命令将直接使用变量)

现在,使用此命令在T [temp]目录中重命名com.apple.IconServices文件夹。

mv ${TMPDIR}/com.apple.IconServices{,-bad}

接下来,我们需要在Cache目录中执行相同的操作,该目录与该T目录位于同一父目录中。该命令将完成您需要的操作。

mv ${TMPDIR}/../C/com.apple.IconServices{,-bad}

因此,现在重新启动Mac,然后重新登录,Finder将会再次快速运行。


0

有时我也会遇到类似的问题:Finder完全没有响应,即,所有Finder窗口均被冻结,并且都显示旋转中的沙滩球。

在那种情况下,对我来说唯一有用的是打开“活动监视器”,并多次杀死Finder(即重新启动)。有时,我不得不重新启动多达5次。

(到目前为止,我无法查明罪魁祸首。我没有安装任何网络磁盘。)


0

这在优胜美地发生在我身上。有些文件夹的内容显示得很好,而另一些则装有转盘。所有有问题的文件夹都是本地文件夹,并且其内容ls在终端中显示良好。

我的问题似乎与之相关的是在关闭笔记本电脑的盖子之前,先连接了网络共享,然后打开笔记本电脑并连接到该共享不可用的其他网络。共享仍显示在Finder窗口的左侧面板中,但未显示任何内容。在终端中mount仍显示已安装的份额。在Finder和终端都打开的情况下,我输入umount /Volumes/USBSTORAGE了终端。一旦这样做,Finder窗口就会响应,并立即列出所选本地目录的内容。

Finder中似乎有一些代码在处理远程存储时也被阻塞,该代码也阻塞了一些本地文件操作。

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.