SU(1) SU(1)
НАЗВАНИЕ
su - стать суперпользователем или другим пользователем
СИНТАКСИС
su [-] [пользователь [аргумент ...]]
ОПИСАНИЕ
Команда su позволяет стать другим пользователем без вы-
хода из системы. По умолчанию новый пользователь имеет
имя root (суперпользователь).
При использовании команды su необходимо ввести пароль
(кроме случая, когда пользователь уже является супер-
пользователем). Если пароль является правильным, то ко-
манда su запускает новую программу-оболочку с реальным
и действующим идентификаторами указанного пользователя.
Новая программа-оболочка задается соответствующим полем
строки файла паролей, относящейся к пользователю [см.
passwd(4)], или, если поле пусто, полагается равной
/bin/sh [см. sh(1)]. Для восстановления обычных прав
пользователя надо набрать для новой оболочки символ
конца файла (CTRL+D).
Все аргументы передаются программе-оболочке. Когда обо-
лочкой является shell [см. sh(1)], аргумент вида -c це-
почка_символов заставляет новый shell выполнить указан-
ную цепочку, а аргумент -r предоставляет пользователю
ограниченный shell.
Следующие утверждения справедливы, только если указан-
ная в файле паролей программа-оболочка аналогична
sh(1). Если первым аргументом при вызове su является -,
окружение становится таким, как если бы пользователь
действительно вошел в систему заново. Это достигается
запуском программы-оболочки с нулевым аргументом, начи-
нающимся с символа -, за счет чего сначала выполняется
системный профайл (/etc/profile), а затем профайл ука-
занного пользователя (.profile из основного каталога
пользователя). Если аргумент "-" не задан, окружение
остается прежним; только, если новым пользователем яв-
ляется root, переменная PATH получает значение /bin:/
etc:/usr/bin, а переменная PS1 - значение "# ". Отме-
тим, что в случае, когда программой-оболочкой является
/bin/sh, в пользовательском профайле можно сравнить ну-
левой аргумент с -sh и -su, чтобы определить, кто выз-
вал shell: программа login(1) или su(1). При другой
программе-оболочке нулевым аргументом пользовательского
профайла в обоих случаях будет -оболочка.
Все попытки перехода в нового пользователя посредством
команды su фиксируются в файле /usr/adm/sulog.
ПРИМЕРЫ
1. Чтобы стать пользователем guest, сохранив ранее
сформированное окружение, следует выполнить команду
su guest
2. Чтобы стать пользователем guest с присущим ему окру-
жением, воспользуйтесь командой
su - guest
3. Чтобы выполнить команду с текущим окружением и пра-
вами пользователя guest, введите
su - guest -c "команда аргументы"
ФАЙЛЫ
/etc/passwd Системный файл паролей.
/etc/profile Системный профайл.
$HOME/.profile Пользовательский профайл.
/usr/adm/sulog Журнал переходов.
СМ. ТАКЖЕ
env(1), login(1), sh(1).
passwd(4), profile(4), environ(5) в Справочнике прог-
раммиста.
|