Sebagai contoh untuk pertanyaan saya, ~/.bashrc
file saya berisi baris ini:
export LD_LIBRARY_PATH=/opt/intel/mkl/lib/ia32:$LD_LIBRARY_PATH
export LD_PRELOAD=/opt/intel/mkl/lib/ia32/libmkl_core.so
sehingga Numpy (Python) dapat menemukan perpustakaan yang perlu dijalankan, karena dibangun dengan kompiler MKL dan Intel. Alur kerja ini bukan yang terbaik, tapi itu cerita lain.
Pertanyaan saya adalah bagaimana saya bisa meneruskan variabel arbitrer (seperti yang ada di ~/.bashrc
) ketika saya menjalankan program dengan 'sudo' (tetapi tidak root)?
Saat ini, jika saya menjalankan:
sudo python -c "import numpy"
Saya mendapatkan kesalahan:
ImportError: libimf.so: cannot open shared object file: No such file or directory*
Beberapa saran sebagai sudo -i
atau sudo -E
tidak mengubah apa pun di sini.
Sunting:
Saya tidak bisa menjawab pertanyaan saya (tidak cukup poin: D) tapi saya akan berkomentar di sini, dengan harapan ada pemula Linux lain yang bertanya-tanya tentang sudo
jebakan.
[Hanya sementara!] Ini bekerja untuk saya ( ~/.bashrc
):
alias sudo='sudo env PATH=$PATH VAR1=SOME_VALUE VAR2=SOME_VALUE...'