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) в Справочнике прог- раммиста.