Просмотр полной версии : есть разница между su и "su -" ?
вот заинтересовал сабж.
и то и другое позоволяет логиниться под рутом. но вроде есть какие-то отличия. может кто пояснить?
groundhog
28.05.2008, 16:47
Во втором случае ты к своим правам получешь так же среду окружения юзера (переменные окружения, etc.), права которого поднимаешь с помощью команды su.
Exlibris
28.05.2008, 17:12
groundhog разве, а помоему это просто вход под root без параметра так что отличий нет.
--
Я не знаю, я прсото предположил
groundhog
28.05.2008, 17:34
Хз... Я думал что "-" это синоним "-l"...
Exlibris
28.05.2008, 17:45
Хз... Я думал что "-" это синоним "-l"...
Хех, даже самому интересно, но если без параметра запустить то точно различий нет, а так вообще обычно задается параметр для чего(какого приложения нужно запустится под рутом) например su -postgres (можно даже без тире)
Что su, что su - , что sudo результат один и тот же выполнение команды от рута.
GreenBear
28.05.2008, 18:25
Usage: su [options] [LOGIN]
Options:
-c, --command COMMAND pass COMMAND to the invoked shell
-h, --help display this help message and exit
-, -l, --login make the shell a login shell
-m, -p,
--preserve-environment do not reset environment variables, and keep
the same shell
-s, --shell SHELL use SHELL instead of the default in passwd
bash-3.2$ su
Пароль:
[root@localhost test]# pwd
/home/test
[root@localhost test]# exit
exit
bash-3.2$ su -
Пароль:
[root@localhost ~]# pwd
/root
взял и попробовал. так же и env.
я понимаю так:
su - это вибрать юзера. тоисть su root | su mysql | su user_57 если параметр не указан по умолчанию берет root . я думаю потому что это первый (главний) юзвер.
sudo - это выполнить от имени. sudo mysql | sudo user_57 выполнить команду от имени юзера.
Exlibris
29.05.2008, 01:01
emik про судо вообще разговора не было...
--
Для тех кто не понял расшифрую тест Шаркана
обычный "su" переводит пользователя из обычного в root`a и остается в том же катологе в котором и был
--
команда "su -" так же переводит пользователя в рута, и вместе с этим переходит в каталог суперпользователя (/root)
groundhog
29.05.2008, 10:29
Exlibris, ты так говоришь, как будто su синоним команд su && cd "/root"... Мишка уже написал всем кто в танке - вызов "su -", даёт тебе шелл целевого пользователя + полностью копирует среду окружения.
всем спасибо.
теперь разница очевидна.
хотя $path не менялся ни в каком случае.
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot