经过一番周折的搜索,我发现手动安装新字体的默认路径是/usr/local/texlive/texmf-local
(TEXMFLOCAL
)。
但是当我把文件放在该路径的树结构下时,就到了运行的时间sudo updmap-sys --enable Map=mtpro2.map
或sudo updmap-sys
(基于这)它告诉我没有在该目录中搜索,而是仅在以下三个目录中搜索:
updmap will read the following updmap.cfg files (in precedence order):
/etc/texmf/web2c/updmap.cfg
/usr/share/texmf/web2c/updmap.cfg
/usr/share/texlive/texmf-dist/web2c/updmap.cfg
简而言之,由于此配置,我无法在该路径中安装字体updmap
。
有没有办法可以添加/usr/local/texlive/texmf-local
要updmap
搜索的路径?
答案1
从您的评论来看,您的系统上似乎有两个不同的 TeX live 安装,一个是 中的系统安装/usr/bin/updmap-sys
,可能是由您的包管理器安装的,另一个是 中的自定义安装/usr/local/texlive/2021/
,可能是手动安装的。
系统路径中的那个文件首先被搜索,但它已经过期,并且只能运行一半。您需要确保它/usr/local/texlive/2021/bin/x86_64-linux
出现在您的PATH
之前中/usr/bin
。一种方式是在这儿。
你可能还想运行
sudo -E $(kpsewhich texhash)
sudo -E $(kpsewhich updmap-sys) -enable Map=mtpro2.map
可能sudo -E $(kpsewhich ...)
需要命令以正确的搜索路径和环境运行。texhash
可能需要运行updmap-sys
命令才能在文件索引中找到映射文件。我通常还会设置
alias update-tex='sudo -E $(which tlmgr) update --self --all'
这样我就可以使用命令更新我的安装update-tex
。
tex
您还会发现我以系统用户身份(而不是)安装和更新 TeX 发行版时使用的命令root
,这意味着我运行的任何安装脚本至少不会对我的机器进行 rootkit。这涉及向命令传递sudo
附加标志-u tex
,通常通过alias
。
但从实际情况来看,以用户身份运行的安装脚本tex
可以修改我经常以用户帐户身份运行的可执行文件,然后可以读取和更改我的所有用户文件。您可能会合理地得出结论,获得 root 权限并不是我们应该担心的事情。