Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > *NIX системы: Общие вопросы > Вопрос по sudo


Автор: expk 17.4.2007, 11:50
Всем привет.
Есть GUI модульная прога. Надо её запустить от другого пользователя user1.

В файле /etc/sudoers прописываю 

user1 ALL=(user2) NOPASSWD: /bin/proga

Главное окно проги запустилась, но при запуске из проги её модуля вылетает ошибка, что модуль не найден.

Как передать все переменные user2 пользователю user1?


Автор: giner 17.4.2007, 12:38
Выдержка из man sudo

-i  The -i (simulate initial login) option runs the shell specified in the passwd(5) entry of the
           user that the command is being run as.  The command name argument given to the shell begins with
           a - to tell the shell to run as a login shell.  sudo attempts to change to that user’s home
           directory before running the shell.  It also initializes the environment, leaving TERM
           unchanged, setting HOME, SHELL, USER, LOGNAME, and PATH, and unsetting all other environment
           variables.  Note that because the shell to use is determined before the sudoers file is parsed,
           a runas_default setting in sudoers will specify the user to run the shell as but will not affect
           which shell is actually run.

Друзья, читаем документацию ^_^

Автор: bilbobagginz 17.4.2007, 15:02
giner, как раз тут если я праавильно понял вопрос -i только навредит.
тут чел хочет сохранить инвайронмент исходного пользователя, не переписывая:
HOME, SHELL, USER, LOGNAME,PATH.

а вам, гр. expk:
Цитата

user1 ALL=(user2) NOPASSWD: /bin/proga

позволяет запустить пользователю user1 прогу /bin/proga под UID пользователя user2
с любого хоста ( хоть через ssh ).

Это то, что вы хотели ?




Автор: giner 17.4.2007, 15:33
Без ключа -i окружение запускающего пользователя сохраняется, но при этом каких-то переменных от второго пользователя не хватает (если я правильно понимаю оратора). Автор, давай больше данных smile

Автор: expk 18.4.2007, 07:46
Да. Не все переменные передаются от первого пользователя ко второму.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)