2015-04-10 2 views
0

У меня debian. Когда мой пользователь пытается изменить в корень через Суд, баш не запускается автоматически (((bash не запускается автоматически с sudo

[email protected]:/var/web/Blog$ sudo -s 
[sudo] password for blog: 
# 

Что я должен делать? Я не могу использовать вкладку для выполнения команд автоматически или использовать кнопку, чтобы просмотреть историю.

+1

Как вы узнали, что bash не запущен? Я вижу приглашение '#' там, и я предполагаю, что это напечатано какой-то оболочкой. Откуда вы знаете, что это не баш? Что происходит, когда вы 'эхо $ SHELL' и' echo $ 0'? – 4ae1e1

+0

# echo $ SHELL /bin/sh Но я хочу bash. – ovod

+0

Хорошо, так что же из результата 'echo $ SHELL' до вас' sudo -s'? – 4ae1e1

ответ

1

Согласно man page of sudo(8):

-s [command]

опция -s (оболочка) запускает спецификации оболочки ified переменной среды SHELL, если она установлена, или оболочкой, указанной в базе данных паролей. Если задана команда, она передается оболочке для выполнения через опцию -c оболочки. Если команда не указана, выполняется интерактивная оболочка.

Поэтому, если вы хотите, чтобы начать в Баш, вы должны

export SHELL=/bin/bash 

в вашей оболочке, прежде чем делать sudo -s.

+0

Как это сделать автоматически? Так я не делаю это каждый раз? – ovod

+0

@ovod Вы должны сделать это в каждой оболочке один раз. Вы можете добавить это к своему rc. Но у меня есть вопрос: какова оболочка вашего пользователя по умолчанию? '/ bin/sh' или'/bin/bash'? Во-первых, я удивлен вашим «$ SHELL». – 4ae1e1

+0

В моем .profile exec/bin/bash, но echo $ SHELL дает/bin/sh ((( – ovod

Смежные вопросы