--修复缓存

--修复缓存

尽管点击了,我还是在 nemo 中反复看到此消息现在就修每一次。我想知道是否可以采取一些措施来一劳永逸地修复缩略图缓存。

一个错误是提交当缩略图目录符号链接到 /tmp 时,但对我来说情况并非如此。但是,我的 ~/Pictures 目录结构中、外部和内部确实有各种符号链接。

我找到了对 的引用nemo --fix-cache,但没有文档(man nemo没有提及此选项)。我想到尝试类似的东西sudo find -type d -exec nemo --fix-cache {} ;,但我担心这是一个未记录的功能,而且我不想把事情搞得更多。

有人有经验可以分享吗?

我在 Mint 17.2 下运行 Nemo 2.6.7。

答案1

一些信息可能会让您更轻松地跟踪问题。

--修复缓存

--fix-cache选项包含在版本 2.6.2 中。它不在男人但发现者:

nemo --help
...
--fix-cache    Repair the user thumbnail cache - this can be useful if
               you're having trouble with file thumbnails.
               Must be run as root

来自变更日志:

[ Michael Webster ]
* Adapt Nemo to deal with problem situations with the user thumbnail cache: 
  - Added --fix-cache command line option (must be run as root) 
  - Added quick check at startup to detect major problems and disable
    thumbnailing until fixed. 
  - Individual thumbnailed files are checked on the fly for permission issues. 
  - When a problem is detected, an infobar appears, offering to fix the problem,
    or ignore it.
* thumbnails: Remove an orphan comment from previous commits, 
              fix wording of the --fix-cache command-line option.

缩略图工厂

尼莫使用Gnome桌面缩略图工厂

因此,它会在缓存目录中创建缩略图。通常~/.thumbnails/[SIZE]~/.cache/thumbnails/[SIZE].其中取决于系统环境;进一步来说xdg设置如XDG_CACHE_HOME.注意!这是一个共享可以被多个应用程序使用的缓存。

缩略图的文件名是通过对原始文件的 URI 进行哈希处理而生成的。然后,库可以通过查看文件位置的哈希和来检查文件是否已被缓存。

如果发生错误,则会在以下位置创建文件.../thumbnails/fail/gnome-thumbnail-factory/[HASH].png

识别缓存缩略图的来源

缩略图工厂添加PNG 文本属性到缩略图。其中包括统一资源标识符。您可以使用各种工具来提取此信息,例如使用 Imagemagick:

identify -format "%[Thumb::URI]\n" ~/.cache/thumbnails/normal/774b4a5ba74455xxx.png
file:///home/foo/some_image.jpg

或者更详细的:

identify -format "%[*]" ~/.cache/thumbnails/normal/774b4a5ba74455xxx.png

或者简单地:

identify -verbose ~/.cache/thumbnails/normal/774b4a5ba74455xxx.png

该信息也存储在失败的缩略图。

自定义缩略图生成器

人们可以通过添加配置文件来添加自定义缩略图生成器share/thumbnailers。通常:/usr/share/thumbnailers/~/.local/share/thumbnailers

示例取自arch Linux PCManFM使用 Imagemagick 创建 PDF 缩略图:

[Thumbnailer Entry]
TryExec=convert
Exec=convert %i[0] -thumbnail %s %o
MimeType=application/pdf;application/x-pdf;image/pdf;

作为最后的手段,你可以尝试这个。 (相信)尼莫使用 GTK 库生成图像缩略图。

你可能会

  • 尝试运行--fix-cacheas
  • 尝试删除(或移动)缩略图缓存目录——重新开始。注意:缓存目录在使用 GnomeDesktopThumbnailFactory 的应用程序之间共享。
  • 跑步尼莫从命令行查看是否报告了任何特定错误。
  • ...

答案2

截至 2017 年,我在使用 Linux Mint 18.1 (Serena) 时就遇到了这个问题,所以我认为它值得更新答案。这个问题被注册为Github 问题 #1429和启动板错误#1592293

修复程序附带了这次提交,它被标记为 Nemo 版本 3.4.2,因此这应该是修复了该问题的发布版本。

这个问题的解决方案就是获取 Nemo 的更新版本。更新到最新版本的 Linux Mint (18.2) 应该就足够了;然而,其发行说明并未具体说明所包含的 Nemo 的确切版本。

相关内容