исчезает 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

% su --help
Использование: su [параметры] [имя пользователя]

Параметры:
  -, -l, --login                запускать оболочку как регистрационную
  -m, -p,
  --preserve-environment        не сбрасывать переменные окружения и
                                сохранить запустившую оболочку

Покурить это дело?

Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.

ну я не такой деревянный, как

ну я не такой деревянный, как может показаться. Если бы всё было так просто... --preserrve-environment не работает. В случае запуска бинарника с SUID-битом всё иначе - LD_LIBRARY_PATH блокируется в целях безопасности, а поиск нужных ELF-файлов осуществляется по стандартным путям. В итоге естественно этот вариант не работает.
Ещё чё покурить? :)

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".