Perbaikan cepat: karena Anda sudah memiliki $PATH
set yang benar di lingkungan Anda (melalui /etc/profile
modifikasi) Anda dapat menggunakan:
sudo env PATH="$PATH" tlmgr
Pada dasarnya, sudo menyetel ulang nilai
$PATH
(seluruh lingkungan, tentu saja) ke yang "dikenal baik", dan karenanya mengabaikan segala perubahan yang Anda lakukan pada lingkungan lokal Anda. The
env Perintah di atas menetapkan PATH
variabel dalam lingkungan yang tlmgr
dijalankan, sehingga berjalan dengan nilai $PATH
yang Anda tentukan pada baris perintah.
Untuk menghindari mengetik semua itu untuk setiap perintah TeXlive, Anda dapat menentukan
alias di shell Anda: tambahkan baris berikut ke .bashrc
file di rumah Anda:
alias psudo='sudo env PATH="$PATH"'
dan kemudian Anda cukup mengeluarkan ini di prompt perintah:
psudo tlmgr
Selain itu, sudo tidak menjalankan shell login untuk menjalankan perintah, itulah sebabnya trik "profil.d" Anda tidak berhasil untuk root. Anda bisa memaksa
sudo untuk mengeksekusi perintah di shell, yang merupakan cara alternatif untuk mencapai efek yang sama:
sudo sh -l -c tlmgr
Sekali lagi Anda dapat mendefinisikan alias perintah shell untuk mempersingkat ini:
alias shsudo='sudo sh -l -c'
yang dapat digunakan sebagai:
shsudo tlmgr