如何使ttf-mscorefonts-installer软件包在安装完成后下载字体?

当我在14.04的软件中心安装"Installer for Microsoft TrueType core fonts"(ttf-mscorefonts-installer)时,它会给出一个肯定的回应,但之后我遇到了下载错误。似乎实际提供字体的文件从未被检索到。有没有办法解决这个问题?

7取决于错误的性质,你不觉得吗?所以请提供错误信息 :) - Rinzwind
从软件中心(基于图形界面)下载Wine似乎没有提供基于curses的EULA确认,或者至少弹出的窗口被隐藏了。很容易只安装这个特定的软件包的一部分。 - artless noise
这是一个好问题,也有一个好答案。我不认为它应该被关闭。它对我有帮助。谢谢! - Mark
@Eliah 实际上,那个问题对我没有帮助,因为我试图通过GUI软件包安装程序安装这些字体,但它从未显示给我接受许可协议的菜单(可能对这里的OP也是如此)。这个答案很有帮助,因为它促使我尝试了命令行安装,然后显示了许可协议。 - Mark
2@Mark 我现在认为你是对的;我认为我们不应该关闭这个问题,而且它目前关闭的状态很可能让人们无法找到他们需要的帮助。虽然如何接受ttf-mscorefonts-installer的Microsoft EULA协议?与此相关且有潜在的帮助性,但人们不太可能从那个问题中得到解决这个问题的答案。现在这个问题已经足够清楚,可以保持开放,并且不是那个问题的重复。我已经投票重新打开它。 - Eliah Kagan
6个回答

ttf-mscorefonts-installer软件包可以方便地安装用于网络的Microsoft True Type Core字体。
运行sudo apt-get install ttf-mscorefonts-installer并接受最终用户许可协议(EULA),或者如果您已经安装了ttf-mscorefonts-installer但没有接受EULA,则卸载ttf-mscorefonts-installer并按照以下方式重新安装:
sudo dpkg -P ttf-mscorefonts-installer  
sudo apt install ttf-mscorefonts-installer  

使用TabEnter键来接受弹出的Microsoft TrueType核心字体窗口中的最终用户许可协议(EULA)。终端将在每次下载新字体完成后输出一条新消息。请稍等片刻,直到终端告诉您已完成下载并安装Microsoft TrueType核心字体。
package ttf-mscorefonts-installer 3.4+nmu1ubuntu2 fails to install/upgrade中所述,当前的ttf-mscorefonts-installer 3.4版本在错误的网络位置搜索字体文件。这导致核心字体从未安装。这个问题发生在2016年7月的Ubuntu 16.04上。截至2017年10月11日,Ubuntu 16.10和Ubuntu 17.04中最新的ttf-mscorefonts-installer版本仍然是3.4,而Ubuntu 17.10中最新的ttf-mscorefonts-installer版本是3.6。
Debian(上游)版本的ttf-mscorefonts-installer 3.6在正确的网络位置搜索字体文件,并成功安装核心字体。有关此修复的更多信息,请参阅Failure to download extra data files - ttf-mscorefonts-installer

4在Ubuntu 14.10中安装一些Microsoft TrueType核心字体时,出现了一个额外的问题。这个问题的答案可以在Mscorefonts problems找到,它提供了解决方案。 - karel
6匿名用户的评论:我刚刚遇到了同样的问题,但我发现可能是网络问题。像中国这样的地区几乎无法连接到Ubuntu镜像。因此,在下载这些文件时,脚本会超时。在我连接上VPN并运行脚本后,问题解决了。 - Fabby
1除非我重复原始问题,否则几乎没有人会理解回答的背景和目的。原始问题如下:在14.04上从软件中心安装“Installer for Microsoft TrueType core fonts”(ttf-mscorefonts-installer)时,它给出了一个肯定的回应,但之后我遇到了下载错误。似乎实际提供字体的文件从未被检索到。有没有办法解决这个问题? - karel
1@karel 说得好。如何接受ttf-mscorefonts-installer的Microsoft EULA协议? 确实是一个不同的问题。我不应该投票关闭它,现在我已经投票重新开放。根据这个问题的原因(例如,这只是一个14.04的错误吗?),这可能最终会被重新关闭为离题,或者可能关于接受EULA的问题最终会被扩展,而这将成为一个重复问题,但现在看来这个问题的关闭是错误的。 - Eliah Kagan
1我亲身经历过这个问题,我可以报告,在我的情况下,这不是一个错误,因为EULA协议窗口一直存在,只是被Ubuntu软件中心的打开窗口遮挡住了。在一片困惑之后,我最小化了软件中心窗口,然后就看到了EULA。我的回答灵感就来自于此。当时我正在为某人的XP电脑重新装配硬件后安装Xubuntu。所以如果在我的情况下有一个错误,我会将其归因于与旧硬件的兼容性问题。当然,也可能有其他可能的解释。 - karel
1@Fabby:我遇到了完全相同的问题,显然与网络有关。软件包安装得很好,我成功接受了最终用户许可协议,但当程序尝试下载字体文件时,下载就停止了。我使用的是Ubuntu 15.04,x32。这是尝试安装ttf-mscorefonts-installer时的输出: - ciprianl
1这个不起作用。它仍然抛出一个“无法降低权限...”的错误。 - Cerin
@Cerin 这个问题回答了你的评论:安装ttf-mscorefonts-installer时出现权限错误 - karel

这是一个临时解决方案,直到包被修复为止:
TMP=`mktemp -d`   
cd $TMP
grep Url: /usr/share/package-data-downloads/ttf-mscorefonts-installer | awk '{print $2}' | xargs -n 1 wget  
sudo /usr/lib/msttcorefonts/update-ms-fonts $TMP/*  
sudo dpkg-reconfigure ttf-mscorefonts-installer  
cd -  
rm -rf $TMP

请注意,这个过程会跳过哈希校验,但这只是字体文件而已,并不像有人会劫持download.sourceforge.net的DNS并用它来分发无效文件。这些文件并不会被执行:update-ms-fonts脚本使用cabextract从每个exe文件中提取TTF文件。
总之,希望这能帮到你。

我喜欢务实,但有人很可能会在字体中下毒。我只会从我的Windows 10安装中获取我的字体。 - MrMesees
1您可以手动检查这些总和,它们位于/usr/share/package-data-downloads/ttf-mscorefonts-installer下。当您使用sudo dpkg-reconfigure ttf-mscorefonts-installer命令时,可以将安装程序指向您已下载.exe文件的目录。 - robkorv
请在“cd -”命令之前添加以下行: sudo dpkg-reconfigure ttf-mscorefonts-installer 这样解决方案就绝对有效了。 此外,将其作为Bash脚本可能会使其成为完整的解决方案。 - PRIHLOP
谢谢,适用于18.10宇宙桌面版。 - netom
非常感谢!在20.04 Focal桌面版上也适用。 - Eduardo

我在安装arial32.exe软件包时遇到了哈希校验错误,导致安装失败。但是通过结合上面两位的方法,问题最终得以解决。
sudo dpkg -P ttf-mscorefonts-installer
sudo rm -rf /var/lib/update-notifier/package-data-downloads/partial/*
sudo apt-get --purge --reinstall install ttf-mscorefonts-installer

2andale32对我来说仍然没有解决。 - Zlatko
仍然出现错误"W: 无法降低权限以下载文件 '/var/lib/update-notifier/package-data-downloads/partial/andale32.exe',因为用户 '_apt' 无法访问。- pkgAcquire::Run (13: 权限被拒绝)"但是所有字体都成功安装了。例如,下面的日志显示了关于 Andale 字体的信息。我能够在 LibreOffice Writer 中按预期使用所有字体。非常感谢! 正在提取压缩文件:/var/lib/update-notifier/package-data-downloads/partial/andale32.exe... 全部完成,没有错误。 - Bharat Mallapur

16.04受到下载错误的影响。
更多细节请参阅错误报告。作为解决方法,请下载修订版Debian软件包并进行安装。
cd ~/Downloads
wget http://ftp.us.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb
sudo gdebi ~/Downloads/ttf-mscorefonts-installer_3.6_all.deb

2请下载并安装https://packages.debian.org/sid/all/ttf-mscorefonts-installer/download。 - Natim


这个方法非常有效: 首先,你需要删除与msttcorefonts相关的所有内容。然后执行以下操作:
wget http://ftp.de.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb
sudo dpkg -i ttf-mscorefonts-installer_3.6_all.deb
sudo fc-cache -f -v

它也适用于Linux Mint 18 :)


这对我在Ubuntu 16.04上也起作用了,谢谢! - JREAM
+1,在这里也可以使用。@Ronald,fc-cache是做什么的? - Zlatko
嗨 @Zlatko,fc-cache在系统上扫描字体目录,并为使用fontconfig处理字体的应用程序构建字体信息缓存文件-根据https://linux.die.net/man/1/fc-cache - falconR
在Ubuntu 17.10上,这个解决方案也适用。 - TitanFighter