我已经使用Arch大约3-4个月了,我从来没有实际处理过升级错误。昨天我跑sudo pacman -Syu的时候
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...
Packages (2) fontconfig-1:2.13.1-1 librsvg-2:2.44.2-1
Total Download Size: 1.81 MiB
Total Installed Size: 6.09 MiB
Net Upgrade Size: 0.06 MiB
:: Proceed with installation? [Y/n] y
:: Retrieving packages...
fontconfig-1:2.13.1-1-x86_64 871.8 KiB 830K/s 00:01 [#############################################] 100%
librsvg-2:2.44.2-1-x86_64 980.1 KiB 2.19M/s 00:00 [#############################################] 100%
(2/2) checking keys in keyring [#############################################] 100%
(2/2) checking package integrity [#############################################] 100%
(2/2) loading package files [#############################################] 100%
(2/2) checking for file conflicts [#############################################] 100%
(2/2) checking available disk space [#############################################] 100%
:: Processing package changes...
(1/2) upgrading fontconfig [#############################################] 100%
Rebuilding fontconfig cache...Fontconfig error: "/etc/fonts/local.conf", line 1: XML or text declaration not at start of entity
/usr/share/fonts/OTF: failed to write cache
/usr/share/fonts/cyrillic: failed to write cache
/usr/share/fonts/encodings/large: failed to write cache
/usr/share/fonts/util: failed to write cache
done.
(2/2) upgrading librsvg [#############################################] 100%
:: Running post-transaction hooks...
(1/2) Probing GDK-Pixbuf loader modules...
(2/2) Arming ConditionNeedsUpdate...archlinux.org's的头版上一次记录更新失败是在7月,而我从未处理过这个问题。
我怎么知道这是否是一个重大的错误?我的电脑似乎运转良好,但我还没有重新启动。重写字体缓存的失败看起来并不是什么大事,但我并不是真的知道。
有什么建议吗?
请注意:我问的问题与目前的标题,因为我特别感兴趣的是如何寻求解决方案,以解决无文件的拱形更新失败,以及解决这个具体的问题。如果我只对此感兴趣,我会问"fontconfig更新错误“这个技术问题。
更新失败后应采取的步骤的建议。
发布于 2018-08-31 13:54:06
听起来你在问更多关于如何处理系统更新的意外结果的问题,而不是任何特定的包。听起来你还在问如何在将来减轻这种情况。根据您的问题,我将重点讨论这些一般性问题,而不是任何具体与fontconfig有关的问题。
在Arch中,除了定期运行pacman -Syu或pacman -Syyu之外,没有真正的方法来缓解类似的问题。然后,当出现问题时,通常很容易将角色返回到最近的版本中,然后等待更新的版本来解决问题。
最近的一次内核升级导致我的Arch笔记本电脑上的wifi停止工作。由于我定期更新,所以我能够使用pacman -U /var/cache/pacman/pkg/<old-kernel>返回到另一个最近的内核。我时不时地尝试另一次升级,看看更新的内核是否解决了这个问题。
在我的经验中,这类问题确实偶尔发生,而且通常在一段时间后就会好起来。也许需要几个月的时间。继续努力吧。同时,继续使用旧版本。
但是,当你不想等的时候,当你在一些包裹里发现了一些令人费解的东西时,你可以使用一些策略。考虑到您描述的问题,我至少尝试几种方法:
"font config error" "XML or text declaration not at start of entity"或linux fonts "failed to write cache"的东西。(我不打算为你做谷歌搜索。你要求的是策略,而不是对这个精确问题的简单说明;)fontconfig有关,所以使用asp来研究这个包的构建方式:asp checkout fontconfig。在主干目录中,您将找到一个PKGBUILD,它显示了包是如何构建的。它将为您提供步骤,以尝试重现问题。这也许能帮你找出哪里出了问题。或者,如果你认为有一个真正的错误在发挥,它会让你框架的条款,将有意义的上游。说到重新启动,实际上,字体问题在我看来并不是不重新启动的理由。不过,最坏的情况是什么?很容易从最新的Arch映像创建一个liveusb,引导它,将chroot转到您的主系统中,并在重新启动之前回滚到旧版本。
这是处理Arch问题的另一种策略:在其他计算机周围,您可以抓取一个iso来安装usb,以便在出错时恢复;)
编辑:有人要求我在答案中添加,另一个很好的地方是Arch网站上的补丁/包注释。此外,这些天我不经常去论坛,但在过去我发现它们很有价值,所以这是另一个尝试的地方。
https://unix.stackexchange.com/questions/466025
复制相似问题