TeX'in ayarlanması Kök için canlı yol

20

TeX Live 2011 vanilla 'yı yükledim ve root için TeX Live yolunu ayarlamamda sorun yaşıyorum (Ubuntu 11.10'da) .

Sorun şu ki, sudo tlmgr çalıştırdığımda şunu elde ederim:

sudo: tlmgr: command not found

Kök olmayan için yolu düzeltmek için

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

- /etc/profile .

Aynı satırı /root/.bashrc 'ye eklemeyi denedim ve ayrıca İşte ama yardımcı olmuyor.

    
sordu N.N. 14.10.2011 08:26

5 cevap

22

Hızlı düzeltme: zaten sizin için doğru $PATH setine sahip olduğunuzdan kullanabilirsiniz ( /etc/profile modifikasyonları aracılığıyla):

sudo env PATH="$PATH" tlmgr

Temel olarak, sudo değerini sıfırlar. $PATH (tüm çevre, aslında) "bilinen iyi" olana ve Böylece, yerel ortamınızda yaptığınız değişiklikleri göz ardı ediyor. Yukarıdaki env komutu PATH değişkenini ayarlar yürütürken tlmgr ortamında çalışır. Komut satırında belirttiğiniz $PATH değeri.

Her TeXlive komutu için her şeyi yazmamak için tanımlayabilirsiniz. Kabuğunuzda takma ad : aşağıdaki satırı .bashrc dosyasına ekleyin eviniz:

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

ve sonra bunu basitçe bir komut isteminde düzenleyebilirsiniz:

psudo tlmgr

Ayrıca, sudo bir komutu çalıştırmak için giriş kabuğunu, bu yüzden "profile.d" püf noktaları kök için işe yaramadı. Zorlayabilirsin bir komut yürütmek için sudo aynı etkiye ulaşmak için alternatif bir yol olan kabuk:

sudo sh -l -c tlmgr

Yine, bunu kısaltmak için kabuk komut takma adını tanımlayabilirsiniz:

alias shsudo='sudo sh -l -c'

şu şekilde kullanılabilir:

shsudo tlmgr
    
verilen cevap Riccardo Murri 15.10.2011 10:17
7

Symlinks'i eklerseniz, bir betik oluşturmanız gerekmeyecektir. Bunu iki şekilde yapabilirsiniz:

GUI’yi kullanma:

  1. % Co_de%.
  2. 'Eylemler' - & gt; Sistem direklerinde symlinks ''.
  3. 'Sembolik bağlantıları güncelle'yi tıklayın.

Komut satırını kullanma (GUI'yi kullandığımdan beri test edilmedi):

  1. % Co_de%. (Daha fazla bilgiyi verilen cevap Chris 27.07.2012 22:40
3

Ne için çalıştım?: tlmgr 'yi gui modunda başlattım

sudo env PATH="$PATH" tlmgr --gui

ve sonra üçüncü menüde son öğeyi seçtim ama bir tanesi (Almanca menümde, bu menü "Aktionen" (eylemler?) ve "Verwaltung der symbolischen Linkler" (sembolik linklerin yönetimi?). diyalog penceresi "Symbolische Links erneuern" (sembolik linkler yenilenir?) düğmesine bastım. Şimdi

sudo tlmgr --OPTIONS

sorunsuz çalışır. Eminim bunu yapmak için bir komut satırı da vardır;)

    
verilen cevap Thomas Fehige 16.05.2012 13:39
1

Kullanıcının $PATH 'sini sudo ' ye geçirmek için /etc/sudoers komutunu kullanarak visudo dosyasını değiştirdim ve şu satırı ekleyin:

Defaults        exempt_group=<group that I belong to>

Şimdi başlatabilirim (ör.)

sudo tlmgr update all

veya

sudo texhash

ve her şey mükemmel çalışıyor.

Bu yaklaşımla ilgili tüm yorumları çok beğenirim.

    
verilen cevap Andrej 21.11.2011 00:36
1

tlmgr dizinini yola eklemek zorunda değilsiniz. Basit bir hızlı çözüm which kullanıyor, örn .:

sudo $(which tlmgr) update --list
    
verilen cevap user652427 08.02.2017 23:04

Etiketlerdeki diğer soruları oku