从关机脚本调用的 pdflatex/lualatex 无法找到已安装的包

从关机脚本调用的 pdflatex/lualatex 无法找到已安装的包

在工作中,我在 Ubuntu 14.04.1 机器上设置了一个小备份脚本。该脚本将我的机器备份到外部硬盘驱动器。完成后,它会将一个 LaTeX 项目复制到我的 Dropbox 并对其进行编译。这个项目是我工作的某种日志。

我知道这是一个非常规的用例,我可以直接复制源代码或将其推送到 git repo,但首先 git 有点小题大做,其次已经有两个例子,我很高兴在我的手机上以 pdf 格式保存它,因为我必须启动 tty shell,因为 gnome 无法启动。

现在的问题是,不知为何 pdflatex 和 lualatex 都告诉我找不到文件.sty。备份脚本如下:

#!/bin/bash

# .... some system backup code ....

## sync linux setup document to Dropbox
# remove .pdf in order to guarantee that project is compiled
rm /home/user/Documents/LaTeX/logBook/logBook.pdf
# compile project in origin 
make -C /home/user/Documents/LaTeX/logBook/ >> /home/user/Documents/LaTeX/logBook/makeLog
# copy files to destination
cp -rp /home/user/Documents/LaTeX/logBook/ /home/wright/Dropbox

我的Makefile包含以下几行:

SHELL=bash
TARGET=linuxSetup.pdf
FLAGS= --shell-escape
SRC= ./*.tex ./header/*.tex  ./chapters/*.tex ./references/*.bib ./titlepage/*.tex 
TIKZ= ./tikz/*.tex
LL= pdflatex


all: $(TARGET)

$(TARGET): $(TARGET:%.pdf=%.tex) $(SRC) $(TIKZ)
    @$(LL) $(FLAGS) $<
#   makeglossaries $(TARGET:%.pdf=%"")
#   makeindex -s headingsStyle.ist $(TARGET:%.pdf=%.idx)
#   bibtex $(TARGET:%.pdf=%"")
    @$(LL) $(FLAGS) $<
    @$(LL) $(FLAGS) $<

备份脚本放置在 中/etc/init.d/backup并包含指向 的符号链接/etc/rc0.d/S01Backup

脚本很简单,但它们仍然找不到文件.sty。我尝试排除.sty文件以查明问题是否由特定文件引起,但无论我排除多少文件,编译器总是找不到更多文件。我切换了编译器,但这似乎也不是问题所在。此外,我还通过sudo或以 root 用户身份执行了完整的备份脚本,这两种方式都运行良好,没有任何错误。

我错过了什么?

答案1

事实证明,我之前通过 apt 存储库安装的 texlive 仍有残留。/usr/share/texlive/(来自存储库)和/usr/local/texlive/2015/texmf-dist/tex/latex(用户安装)中有 texlive 目录。 关闭脚本显然调用了错误的编译器,即/usr/share。 当我通过 卸载存储库时apt-get purge,而不是 ,apt-get remove这个文件夹被删除了,并且 中的安装一切正常/usr/local

相关内容