Команда Su

Thank you for reading this post, don't forget to subscribe!

su (Корот­кая заме­на или пере­клю­че­ния поль­зо­ва­те­ля) ути­ли­та поз­во­ля­ет запус­кать коман­ды с при­ви­ле­ги­я­ми дру­го­го поль­зо­ва­те­ля, по умол­ча­нию при­ви­ле­ги­ро­ван­но­го пользователя.

Исполь­зо­ва­ние su- это самый про­стой спо­соб перей­ти к учет­ной запи­си адми­ни­стра­то­ра в теку­щем сеан­се вхо­да в систе­му. Это осо­бен­но удоб­но, когда поль­зо­ва­те­лю root не раз­ре­ше­но вхо­дить в систе­му через ssh или с помо­щью дис­пет­че­ра отоб­ра­же­ния GUI.

В этой ста­тье мы объ­яс­ним, как исполь­зо­вать коман­ду su.

 

Общий син­так­сис suко­ман­ды выгля­дит сле­ду­ю­щим образом:

Когда вызы­ва­ет­ся без какой-либо опции, пове­де­ние по умол­ча­нию suд­ля запус­ка интер­ак­тив­ной обо­лоч­ки от име­ни поль­зо­ва­те­ля root:

Вам будет пред­ло­же­но вве­сти пароль поль­зо­ва­те­ля root, и в слу­чае аутен­ти­фи­ка­ции поль­зо­ва­тель, выпол­ня­ю­щий коман­ду, вре­мен­но ста­нет поль­зо­ва­те­лем root.

Пере­мен­ные сре­ды сеан­са shell ( SHELL) и home ( HOME) зада­ют­ся из запи­си заме­ща­ю­ще­го поль­зо­ва­те­ля /etc/passwd, и теку­щий ката­лог не изменяется.

Что­бы под­твер­дить, что поль­зо­ва­тель изме­нил­ся, исполь­зуй­те коман­ду whoami:

Коман­да выве­дет имя поль­зо­ва­те­ля, выпол­ня­ю­ще­го теку­щий сеанс оболочки:

Наи­бо­лее часто исполь­зу­е­мый вари­ант при вызо­ве suесть -, -l, –login. Это дела­ет обо­лоч­ку обо­лоч­кой вхо­да в систе­му со сре­дой, очень похо­жей на реаль­ную реги­стра­цию, и изме­ня­ет теку­щий каталог :

Если вы хоти­те запу­стить еще одну обо­лоч­ку вме­сто одной , опре­де­лен­ной в фай­ле passwd, исполь­зуй­те -s, вари­ант –shell. Напри­мер, что­бы пере­клю­чить­ся на root и запу­стить обо­лоч­ку zsh, вы долж­ны набрать:

Для того, что­бы сохра­нить всю окру­жа­ю­щую сре­ду ( HOME, SHELL, USER, и LOGNAME) вызы­ва­ю­ще­го поль­зо­ва­те­ля исполь­зо­вать -p, вари­ант –preserve-environment.

При исполь­зо­ва­нии пара­мет­ра -, -p игнорируется.

Если вы не хоти­те, что­бы запу­стить интер­ак­тив­ную обо­лоч­ку и толь­ко запу­стить коман­ду в каче­стве заме­ни­те­ля поль­зо­ва­те­ля, исполь­зуй­те -c, вари­ант command. Напри­мер, что­бы вызвать коман­ду ps от име­ни поль­зо­ва­те­ля root, введите:

Что­бы пере­клю­чить­ся на дру­гую учет­ную запись поль­зо­ва­те­ля, пере­дай­те имя поль­зо­ва­те­ля в каче­стве аргу­мен­та su. Напри­мер, что­бы пере­клю­чить­ся на поль­зо­ва­те­ля andreyex, вы долж­ны набрать:

В неко­то­рых дис­три­бу­ти­вах Linux, таких как Ubuntu, учет­ная запись поль­зо­ва­те­ля root по умол­ча­нию отклю­че­на из сооб­ра­же­ний без­опас­но­сти. Это озна­ча­ет, что для поль­зо­ва­те­ля root не задан пароль, и вы не може­те исполь­зо­вать его su для пере­клю­че­ния на root.

Один из вари­ан­тов для пере­хо­да в root будет заклю­чать­ся в добав­ле­нии коман­ды su к коман­де sudo и вво­де теку­ще­го паро­ля пользователя:

Коман­да sudo поз­во­ля­ет запус­кать про­грам­мы от име­ни дру­го­го поль­зо­ва­те­ля, по умол­ча­нию поль­зо­ва­тель root.

Если поль­зо­ва­те­лю предо­став­ле­на коман­да sudo, коман­да su будет вызы­вать­ся от име­ни поль­зо­ва­те­ля root. Запуск sudo su – и исполь­зо­ва­ние паро­ля поль­зо­ва­те­ля ана­ло­гич­ны запус­ку su – с исполь­зо­ва­ни­ем паро­ля root.

При исполь­зо­ва­нии sudo с пара­мет­ром -i, запус­кай­те интер­ак­тив­ную обо­лоч­ку вхо­да в систе­му со сре­дой поль­зо­ва­те­ля root:

sudo -i в основ­ном то же самое, что и запуск su -.

Пре­иму­ще­ство исполь­зо­ва­ния sudo про­тив su заклю­ча­ет­ся в том, что пароль root не дол­жен исполь­зо­вать­ся несколь­ки­ми учет­ны­ми запи­ся­ми администраторов.

Так­же с sudo вы може­те раз­ре­шить поль­зо­ва­те­лям запус­кать толь­ко опре­де­лен­ные про­грам­мы с при­ви­ле­ги­я­ми root.

 

su ути­ли­та команд­ной стро­ки, кото­рая поз­во­ля­ет вам вре­мен­но стать дру­гим поль­зо­ва­те­лем и выпол­нять коман­ды с заме­ща­ю­щим пользователем.