Shell и команда su

1528
Mulligan

Может кто-нибудь объяснить, почему, когда я выпускаю:

су
эхо $ 0

это говорит:

удар

когда

су -
эхо $ 0

это говорит:

-su

? Прав ли я, что в 1-м случае (только su) текущая оболочка порождает новую неинтерактивную оболочку, а во втором случае ( su -) она просто остается с текущей оболочкой?

3

2 ответа на вопрос

2
Alex

При использовании вы просто suнаследуете среду пользователя, которая работает su. Напротив, когда вы используете su -(это ярлык для -loginопции su), он «полностью» переключает вас на учетную запись root и настраивает среду таким же образом, как если бы вы входили напрямую в root.

1
Darren

Алекс ответил правильно, но он не совсем объяснил, что ты видишь. Когда вы запускаете, su -он импортирует среду пользователя, на которого вы переключаетесь (в данном случае root). Последняя команда, которую вы запускали от имени root, должна была быть su.

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