Як приклад мого запитання, мій ~/.bashrcфайл містить такі рядки:
export LD_LIBRARY_PATH=/opt/intel/mkl/lib/ia32:$LD_LIBRARY_PATH
export LD_PRELOAD=/opt/intel/mkl/lib/ia32/libmkl_core.so
щоб Numpy (Python) міг знайти бібліотеки, які йому потрібні для запуску, як це будується за допомогою компіляторів MKL та Intel. Цей робочий процес не найкращий, але це вже інша історія.
Моє запитання полягає в тому, як я можу передавати довільні змінні (на зразок тих, що є ~/.bashrc), коли я запускаю програму з 'sudo' (але не root)?
Наразі, якщо я запускаю:
sudo python -c "import numpy"
Я отримую помилку:
ImportError: libimf.so: cannot open shared object file: No such file or directory*
Деякі пропозиції , як sudo -iі sudo -Eнічого не змінює тут.
Редагувати:
Я не можу відповісти на моє запитання (недостатньо балів: D), але я прокоментую тут, сподіваючись, що є інші новачки в Linux, які задаються питанням про sudoпастки.
[Тільки тимчасово!] Це працює для мене ( ~/.bashrc):
alias sudo='sudo env PATH=$PATH VAR1=SOME_VALUE VAR2=SOME_VALUE...'