Автор Тема: Запазване на environment variable при sudo su -  (Прочетена 1079 пъти)

synner

  • Напреднали
  • *****
  • Публикации: 17
    • Профил
Здравейте, банда.

User 'jeko' се логва през SSH на даден сървър. В неговия environment има set-ната променлива KEYHOLDER=jeko.
jeko изпълнява 'sudo su -' и става root, но KEYHOLDER вече не е дефинирана/празна.
Как да запазя KEYHOLDER при изпълнение на 'sudo su -'?

В /etc/sudoers вече имам:
Цитат
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
Defaults        env_keep += "KEYHOLDER"

...

jeko ALL=NOPASSWD:ALL

Пробвах различни варианти намерени в Google/unix.stackexchange.com, но нищо не ми сработва...?
Help?!? :'(
Активен

Прост народ - слаба държава!

ddantgwyn

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 1133
    • Профил
Re: Запазване на environment variable при sudo su -
« Отговор #1 -: Sep 28, 2017, 15:01 »
Здравейте, банда.

User 'jeko' се логва през SSH на даден сървър. В неговия environment има set-ната променлива KEYHOLDER=jeko.
jeko изпълнява 'sudo su -' и става root, но KEYHOLDER вече не е дефинирана/празна.
Как да запазя KEYHOLDER при изпълнение на 'sudo su -'?

А какъв е резултата от употребата само на su -- без тире. Имам някакви спомени, че тогава запазваше променливите на средата, дефинирани за потребителя, докато тирето указваше да се използват тези за root. Но имай предвид, че може и да греша.
Активен

--
the lamer's team honourable member

synner

  • Напреднали
  • *****
  • Публикации: 17
    • Профил
Re: Запазване на environment variable при sudo su -
« Отговор #2 -: Sep 28, 2017, 15:12 »
ddantgwyn, ако изпълня само 'sudo su' тогава се запазва променливата KEYHOLDER.
Обаче при 'sudo su' се зарежда само .bashrc, а при 'sudo su -' се зарежда всичко /etc/profile, .profile and .bashrc, което е за предпочитане...
Source @ AskUbuntu

Има ли как да стане с тирето?

P.S. Дистрибуциина, на които го тествам това са Ubuntu 16.04.2 LTS и Debian 8.8 (Jessie).
Активен

Прост народ - слаба държава!

remotexx

  • Напреднали
  • *****
  • Публикации: 1083
    • Профил
Re: Запазване на environment variable при sudo su -
« Отговор #3 -: Sep 28, 2017, 16:10 »
Колега без тирето не ти зарежда профила на стария потребител защото той вече е зареден, а с тирето зарежда профила на новия потребител - така е по дизайн.
Като искаш това нещо да го има и под руут има два начина
1. Сетваш го за постоянно и под руут, keyholder=jeko
2. По надолу в скритпа или на ръка ако го пускаш ръчно си я експортираш временно т.е. докато то трае сесията с тоя потребител или не я ънсетваш отново ръчно.
Активен

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
Graphical Environment
Настройка на програми
zeleniq_40vek 5 1372 Последна публикация Jul 10, 2004, 19:13
от zazzko
Firefox 1.5.0.1 + java runtime environment
Настройка на програми
steady 2 2243 Последна публикация Mar 29, 2006, 23:05
от steady
Unix desktop environment
Коментар
phobot 4 1803 Последна публикация Oct 03, 2007, 12:02
от Hapkoc
Java Runtime environment
Настройка на програми
AlexanderTop 2 1030 Последна публикация Oct 17, 2009, 00:03
от AlexanderTop
envirounment variable (pkg-config)
Настройка на програми
satir 4 6032 Последна публикация Nov 04, 2012, 17:35
от satir