为root设置TeX Live路径

神经网络

我已经安装了TeX Live 2011 Vanilla,但在设置root的TeX Live路径时遇到麻烦(在Ubuntu 11.10中)。

问题是当我跑步时sudo tlmgr我得到:

sudo: tlmgr: command not found

要修复非root用户的路径,只需添加

PATH=/usr/local/texlive/2011/bin/x86_64-linux:$PATH

/etc/profile

我尝试将同一行添加到其中,/root/.bashrc并且还尝试将其添加为/etc/profile.d/zzz-texlive.sh类似于Herbert建议的https://tex.stackexchange.com/questions/26624/tlmgr-inaccessible/26626#26626,但这无济于事。

里卡多·穆里(Riccardo Murri)

快速修复:由于您的环境中已有正确的$PATH设置(通过/etc/profile修改),因此可以使用:

sudo env PATH="$PATH" tlmgr

基本上,sudo$PATH(整个环境的)值重置为“已知的良好”值,因此忽略了对本地环境所做的任何更改。上面env命令PATHtlmgr其执行的环境中设置变量,因此它将以$PATH您在命令行上指定的值运行

为了避免为每个TeXlive命令键入所有内容,您可以在shell中定义一个别名:将以下行添加到主.bashrc目录中文件中:

alias psudo='sudo env PATH="$PATH"'

然后您可以在命令提示符下简单地发出此命令:

psudo tlmgr

另外,sudo不会运行登录Shell来执行命令,这就是为什么您的“ profile.d”技巧不适用于root用户的原因。您可以强制sudo在shell中执行命令,这是达到相同效果的另一种方法:

sudo sh -l -c tlmgr

同样,您可以定义一个shell命令别名来缩短此时间:

alias shsudo='sudo sh -l -c'

可以用作:

shsudo tlmgr

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章