什么是 mediascanner-service 以及如何避免安装它?

Luí*_*usa 23 package-management unity cpu

几个月以来,在我使用的其中一个桌面 Ubuntu 14.04 系统上,CPU 经常无缘无故地上升到 80-100%。htop通常会将责任归因于文件系统进程,例如nemontfs。为了让 CPU 恢复正常,我会终止这些进程,这在某些情况下会导致无法访问文件系统并随后重新启动。

前几天我注意到,每当这种情况发生的另一个进程始终也存在使用高CPU: mediascanner-service-2.0。一些研究使我在论坛上找到了这个帖子,该帖子只是建议将其删除。所以我做了。

最终结果出人意料地是积极的:不仅高 CPU 负载的情况消失了,系统也变得更快了。Lens 的加速非常显着:找到像Calc这样的应用程序现在最多只需要 2 秒,而以前需要大约 20 秒。查找文件现在需要大约 5 秒,而以前需要 30 秒。像 Eclipse 这样的繁重程序启动速度更快,工作空间也更加流畅。磁盘访问频率似乎也整体降低了。

这个mediascanner2.0包究竟是什么?它是 Unity 7 的一部分还是后验安装依赖项?是否可以阻止其安装?

更新:按照赛斯的建议,可以将这个包裹追踪到indicator-session

$ sudo aptitude why mediascanner2.0
i   indicator-session         Recommends indicator-applet (>= 0.2) | indicator-renderer
i A unity8                    Provides   indicator-renderer                            
i A unity8                    Recommends unity-scope-mediascanner2                     
pi  unity-scope-mediascanner2 Depends    mediascanner2.0                               
Run Code Online (Sandbox Code Playgroud)

显然,mediascanner2.0(和 Unity 8 shell)是基础 14.04 系统的一部分。剩下要回答的是这个流氓包的确切功能。

Max*_*her 18

mediascanner2.0是 Unity 8 中用于发现媒体然后播放的包。例如,Unity 8 上的 Core Music Appmediascanner用于扫描音乐目录(或任何与此相关的目录),然后播放音乐。由于 Ubuntu 正在向 Unity 8 发展,它默认包含在 Ubuntu iso 中。

mediascanner正在扫描您的整个硬盘以发现媒体,所以第一次,它会降低您的计算机速度。最终,它应该缓存它的结果,然后它就不再是资源密集型的了。

您有两个选项可以帮助您解决问题:

  1. (首选解决方案)您可以mediascanner通过创建新文件并为其添加标题来明确告知不要尝试扫描目录.nomedia。然后,当mediascanner到达这个目录时,它甚至不会费心去索引它。理论上,您可以对计算机上的多个目录执行此操作,并且mediascanner应该停止索引它们。
  2. 您可以卸载它,这在短期内(直到 Unity 8 成为默认设置)将阻止这种情况发生,但您可能会遇到依赖问题。注意:如果是做 Ubuntu SDK 开发,mediascanner是一个依赖。

希望这有帮助:)

来源

  • `mediascanner` 正在扫描整个硬盘驱动器中的文件。如此处所述: https://bugs.launchpad.net/ubuntu/+source/mediascanner2/+bug/1294303 ,您可以创建一个新的文本文件并将其命名为 `.nomedia` 以告诉 `mediascanner` 不要搜索该目录. 不幸的是,您必须对 HD 上的许多目录执行此操作。 (2认同)
  • 谢谢 Max,这是一个有用的评论。你为什么不用这些信息更正你的答案? (2认同)