исчезает LD_LIBRARY_PATH
Всем привет. Суть проблемы: запускаю xinit от пользователя. До запуска все переменные окружения установлены в соответствии с /etc/profile. После загрузки оконного менеджера (icewm) переменная LD_LIBRARY_PATH обнуляется. После гугления обнаружил, что данная проблема, вероятнее всего возникает, из-за того, что на установленном busybox стоит бит suid (мне это необходимо), а xinit запускается как su -s /bin/sh user -c xinit. В итоге в "целях защиты динамический загрузчик сбрасывает эту переменную". Если запустить xinit от root - всё нормально, переменная обнаруживется с необходимым мне значением. В источниках, где нашёл указание бит suid в качестве причины, ничего не сказано о том, как проблему-таки решить. Буду признателен, если кто-нибудь подскажет решение или какой-нить метод обойти эту проблему.
Спасибо!
- Для комментирования войдите или зарегистрируйтесь
% su --help Использование: su
Покурить это дело?
Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.
ну я не такой деревянный, как
ну я не такой деревянный, как может показаться. Если бы всё было так просто... --preserrve-environment не работает. В случае запуска бинарника с SUID-битом всё иначе - LD_LIBRARY_PATH блокируется в целях безопасности, а поиск нужных ELF-файлов осуществляется по стандартным путям. В итоге естественно этот вариант не работает.
Ещё чё покурить? :)