继续中断的 tlmgr 更新

继续中断的 tlmgr 更新

我用了

tlmgr update --all

今天,运行 mktexlsr 时它冻结了,所以我中止了它。当我再次运行它时,它说没有可用的更新。但显然在更新文件后还有一些事情要做。那么除了 mktexlsr 之外,我还应该调用哪些命令来让 TeXLive 保持正常运转?

答案1

在运行结束时,tlmgr按以下顺序采取一系列操作:

  1. 跑步mktexlsr;
  2. 如果安装了 ConTeXt,则运行mtxrun --generate它等效于 ConTeXt 的程序;
  3. updmap-sys如果有必要,使用适当的参数运行(大致上,如果字体包已安装/删除);
  4. 重新生成语言文件(language.dat等)并fmtutil-sys在必要时使用适当的参数运行;

因此,如果mktexlsr失败并且您不得不中断tlmgr,则不会采取以下操作。现在,如果你不使用 ConTeXt更新的包不需要运行,updmap-sys也不fmtutil-sys需要运行mktexlsr(具有足够的权限)就足够了。

如果您想确定,您可以检查TEXMFSYSVAR/web2c/tlmgr.log(其中的正确值TEXMFSYSVAR由给出kpsewhich --var-value TEXMFSYSVAR,通常是/usr/loca/texlive/2011/texmf-var)最近采取的操作列表tlmgr,例如:

[Sun Jul 24 12:49:17 2011] update: xdvi.x86_64-linux (22625 -> 22971)
[Sun Jul 24 12:49:18 2011] update: xdvi (22089 -> 23138)
[Sun Jul 24 12:49:39 2011] update: xetex.x86_64-linux (22625 -> 23143)

然后,为了确保一切正常,你可以使用以下命令重新安装这些软件包

tlmgr install --reinstall xdvi.x86_64-linux xdvi xetex.x86_64-linux

(假设前面的例子是更新包的完整列表)。

答案2

看起来还行,因为只会 mktexlsr失败。所有更新都已成功安装。自己运行命令,或者texhash在 Linux 机器上通过链接运行

相关内容