He instalado TeX Live 2011 vanilla y tengo problemas para configurar la ruta de TeX Live para root (en Ubuntu 11.10).
El problema es que cuando corro sudo tlmgrme sale:
sudo: tlmgr: command not found
Para arreglar la ruta para no root, fue suficiente agregar
PATH=/usr/local/texlive/2011/bin/x86_64-linux:$PATH
a /etc/profile.
Intenté agregar esta misma línea /root/.bashrcy también traté de agregarla a Me /etc/profile.d/zzz-texlive.shgusta como sugiere Herbert en /tex/26624/tlmgr-inaccessible/26626#26626   pero no ayuda.

Respuestas:
Solución rápida: dado que ya tiene el
$PATHconjunto correcto en su entorno (a través de las/etc/profilemodificaciones) puede usar:Básicamente, sudo restablece el valor de
$PATH(todo el entorno, de hecho) a un "bien conocido", y por lo tanto ignora cualquier cambio que haya realizado en su entorno local. El comando env anterior establece laPATHvariable en el entorno detlmgrejecución, por lo que se ejecuta con el valor$PATHque especifique en la línea de comando.Para evitar escribir todo eso para cada comando TeXlive, puede definir un alias en su shell: agregue la siguiente línea al
.bashrcarchivo en su hogar:y luego simplemente puede emitir esto en un símbolo del sistema:
Además, sudo no ejecuta un shell de inicio de sesión para ejecutar el comando, razón por la cual sus trucos "profile.d" no funcionaron para root. Puede forzar a sudo a ejecutar un comando en un shell, que es una forma alternativa de lograr el mismo efecto:
De nuevo, puede definir un alias de comando de shell para acortar esto:
que se puede usar como:
fuente
$PATHmi entorno? Además, ¿tengo que hacerenvpara cada comando en la ruta de TeX Live que deseo habilitarsudo? Hay muchos binarios en / usr / local / texlive / 2011 / bin / x86_64-linux que es posible que desee ejecutar como root.Si agrega los enlaces simbólicos, no necesitará crear un script. Puedes hacer esto de dos maneras:
Usando la GUI:
sudo env PATH="$PATH" tlmgr --gui.Usando la línea de comando (no probado, ya que usé la GUI):
sudo env PATH="$PATH" tlmgr path add. (encuentre más información en la documentación de tlmgr )fuente
Lo que funcionó para mí: comencé
tlmgren modo gui cony luego, en el tercer menú, elegí el último elemento, pero uno (en mi menú alemán, que es el menú "Aktionen" (acciones?) y el elemento "Verwaltung der symbolischen Links" (¿administración de enlaces simbólicos?). hizo clic en el botón "Symbolische Links erneuern" (¿renovar enlaces simbólicos?). Ahora
Funciona sin problemas. Estoy seguro de que también hay una forma de línea de comando para hacerlo;)
fuente
Para pasar el usuario
$PATHal archivosudomodificado/etc/sudoers, use elvisudocomando y agregue la siguiente línea:Ahora puedo ejecutar (por ejemplo)
o
Y todo funciona perfecto.
Agradecería mucho cualquier comentario sobre este enfoque.
fuente
Realmente no tiene que agregar el directorio de
tlmgra la ruta. Se está utilizando una solución rápida simplewhich, por ejemplo:fuente
No es una buena práctica instalar y administrar TeX Live usando privilegios de "root". En su lugar, cree el
/usr/local/texlivedirectorio, por ejemplo, usando sudo, y luego cambie la propiedad al usuario que administrará TeX Live. Después de eso, TeX Live se puede instalar y actualizar sin usar privilegios "root".fuente