所以我每两个月安装一次 jaxodraw (一探究竟!) 在某些机器上,这需要 LateX 样式文件 axodraw4j.sty。我尝试了我一直在做的事情:

# kpsewhich -var-value TEXMFLOCAL
/usr/share/texmf-local
# cp /home/cduston/Downloads/axodraw4j.sty /usr/share/texmf-local/tex/latex/
# texhash
texhash: Updating /usr/share/texmf-config/ls-R... 
texhash: Updating /usr/share/texmf-dist/ls-R... 
texhash: Updating /usr/share/texmf-local/ls-R... 
texhash: Updating /usr/share/texmf-var/ls-R... 
texhash: Done.

我认为这也很重要:

 more ls-R
% ls-R -- filename database for kpathsea; do not change this line.
./:
.:
ls-R
tex


./tex:
latex

./tex/latex:
axodraw4j.sty

但是,无论我做什么,我都无法让我的系统上的用户使用 axodraw4j.sty,除非我将它放在 HOME 而不是 TEXMFLOCAL 中:

$ kpsewhich -var-value TEXMFHOME /home/cduston/texmf

但是,我不想让它在那里,我不明白为什么我需要用这些无意义的东西来弄乱我的主目录。TEXMFLOCAL 完全是空的,为什么 texlive 需要这样的权限?我应该能够读取 /usr/share/texmf-local 吧?为什么我的 tex 安装不能曾经看到该目录中的样式文件了吗?

编辑:来自评论:

$ ls /usr/share/texmf-local/tex/latex
axodraw4j.sty
$ kpsewhich axodraw4j.sty
/usr/share/texmf-local/tex/latex/axodraw4j.sty: Permission denied
/usr/share/texmf-local/tex/latex/axodraw4j.sty: Permission denied

更多的:

$ ls -la
-rw-r----- 1 root root 70021 Jul 29 14:09 axodraw4j.sty
texmf-local/tex/latex$ kpsewhich axodraw4j.sty
./axodraw4j.sty: Permission denied
./axodraw4j.sty: Permission denied
/usr/share/texmf-local/tex/latex/axodraw4j.sty: Permission denied
/usr/share/texmf-local/tex/latex/axodraw4j.sty: Permission denied

答案1

如果将文件复制到 TEXMFLOCAL 以供所有用户使用,则该文件需要可供所有用户读取

root: -rw-r----- 1 root root 70021 Jul 29 14:09 axodraw4j.sty

仅 root 可读,任何用户帐户都无法读取。

相关内容