Linux (Redhat) 'sudo su-l <<user_acct>>' не получает профиль

Я использовал бы, находят с '-print0' и xargs... ACL является загадочным, лучше для не использования их.

2
13.04.2017, 15:36
2 ответа

Когда это - оболочка входа в систему, удар сначала ищет ~/.bash_profile. Если это не находит его, это ищет ~/.bash_login. Если это не находит его, это ищет ~/.profile. В любом случае, даже если оболочка входа в систему является интерактивной, удар не читает ~/.bashrc.

Я рекомендую придерживаться следующего содержания в ~/.bash_profile, и не иметь a ~/.bash_login:

if [ -e ~/.profile ]; then . ~/.profile; fi
case $- in *i*) if [ -e ~/.bashrc ]; then . ~/.bashrc; fi;; esac

Тем путем Ваш .profile загружается, является ли Ваша оболочка входа в систему ударом или некоторым другим sh вариантом и Вашим .bashrc загружается ударом, является ли оболочка оболочкой входа в систему или нет.

2
27.01.2020, 22:01
  • 1
    я могу определенно видеть преимущество для устанавливания агностического ОС профиля. Я собираюсь отметить Ваш ответ, как принято, так как там изучают точки, что я думаю, мог принести пользу другим.Удачи! –  user1766760 02.04.2013, 21:17

Не делать sudo su, это не нужно. sudo -i -u loginname то, что Вы хотите.

2
27.01.2020, 22:01
  • 1
    Это выглядит действительно многообещающим, но к сожалению мне не разрешают выполнить эту команду в моей команде. Или скорее наш администратор не хотел открывать способность работать bash под <<user_acct>>... Едва ли наблюдение, почему мы не должны открывать разрешение, если мы уже имеем sudo su но из моего –  user1766760 29.03.2013, 21:01
  • 2
    Да, Вы выполняете Bash как"<<user_acct>>"; вот почему это называют .bash_profile. –  depquid 31.03.2013, 05:30

Теги

Похожие вопросы