'\" t
.\" Title: su
.\" Author: Julianne Frances Haugh
.\" Generator: DocBook XSL Stylesheets v1.76.1
.\" Date: 05/25/2012
.\" Manual: Пользовательские команды
.\" Source: shadow-utils 4.1.5.1
.\" Language: Russian
.\"
.TH "su" "1" "05/25/2012" "shadow\-utils 4\&.1\&.5\&.1" "Пользовательские команды"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "ИМЯ"
su \- изменяет ID пользователя или делает его суперпользователем
.SH "СИНОПСИС"
.HP \w'\fBsu\fR\ 'u
\fBsu\fR [\fIпараметры\fR] [\fIимя_пользователя\fR]
.SH "ОПИСАНИЕ"
.PP
Программа
\fBsu\fR
используется для того, чтобы пользователь мог стать другим пользователем в текущем сеансе\&. Если
\fBsu\fR
вызывается без
\fBимени_пользователя\fR, то это по умолчанию делает пользователя суперпользователем\&. Необязательный параметр
\fB\-\fR
можно использовать для воссоздания окружения, такого же как если бы настоящий пользователь выполнял вход в систему\&.
.PP
После имени пользователя можно указать дополнительные аргументы, которые будут переданы регистрационной оболочке пользователя\&. В частности, аргумент
\fB\-c\fR
заставит большинство оболочек считать следующий аргумент как команду\&. Команда будет выполнена оболочкой, указанной в файле
/etc/passwd, которая является регистрационной для указываемого пользователя\&.
.PP
Вы можете использовать параметр
\fB\-\-\fR
чтобы отделить параметры
\fBsu\fR
от параметров, которые передаются оболочке\&.
.PP
Пользователю предложат ввести пароль, если он задан\&. При неверном пароле возникает сообщение об ошибке\&. Все попытки, удачные и неудачные, протоколируются системой с целью обнаружения злоупотреблений\&.
.PP
Текущее окружение передаётся новой оболочке\&. Значение
\fB$PATH\fR
сбрасывается в значение
/bin:/usr/bin
для обычных пользователей или в
/sbin:/bin:/usr/sbin:/usr/bin
для суперпользователя\&. Эти значения можно изменить в переменных
\fBENV_PATH\fR
и
\fBENV_SUPATH\fR
в файле
/etc/login\&.defs\&.
.PP
Субсистемный вход в систему можно распознать по наличию символа \(Fo*\(Fc в начале регистрационной оболочки\&. Заданный домашний каталог будет использован как корень новой файловой системы, в которой регистрируется пользователь\&.
.SH "ПАРАМЕТРЫ"
.PP
Параметры команды
\fBsu\fR:
.PP
\fB\-c\fR, \fB\-\-command\fR \fIКОМАНДА\fR
.RS 4
Указать команду, которая будет запущена оболочкой в виде параметра для
\fB\-c\fR\&.
.sp
Запускаемая программа не будет иметь управляющего терминала\&. Этот параметр не может быть использован для запуска интерактивных программ, которым требуется управляющий TTY\&.
.RE
.PP
\fB\-\fR, \fB\-l\fR, \fB\-\-login\fR
.RS 4
Предоставляет окружение, как если бы пользователь непосредственно регистрировался в системе\&.
.sp
Если используется
\fB\-\fR, то он должен быть задан последним параметром
\fBsu\fR\&. Другие формы (\fB\-l\fR
и
\fB\-\-login\fR) не имеют этого ограничения\&.
.RE
.PP
\fB\-s\fR, \fB\-\-shell\fR \fIОБОЛОЧКА\fR
.RS 4
Оболочка, которая будет запущена\&.
.sp
Запущенная оболочка выбирается из (в порядке убывания приоритета):
.PP
.RS 4
Оболочка указанная в параметре \-\-shell\&.
.RE
.PP
.RS 4
Если используется
\fB\-\-preserve\-environment\fR, то оболочка задаётся переменной окружения
\fB$SHELL\fR\&.
.RE
.PP
.RS 4
Оболочка, указанная в записи файла
/etc/passwd
для заданного пользователя\&.
.RE
.PP
.RS 4
/bin/sh, если ни одной оболочке не было найдено с помощью методов, указанных выше\&.
.RE
.sp
Если заданный пользователь имеет ограниченную оболочку (то есть оболочка в поле пользовательской записи в файле
/etc/passwd
отсутствует в файле
/etc/shells), то параметр
\fB\-\-shell\fR
или переменная окружения
\fB$SHELL\fR
не будут учтены, если
\fBsu\fR
не была запущена суперпользователем\&.
.RE
.PP
\fB\-m\fR, \fB\-p\fR, \fB\-\-preserve\-environment\fR
.RS 4
Сохранить текущее окружение за исключением:
.PP
\fB$PATH\fR
.RS 4
сбрасывается в значение
\fBENV_PATH\fR
или
\fBENV_SUPATH\fR
(смотрите далее) из
/etc/login\&.defs;
.RE
.PP
\fB$IFS\fR
.RS 4
сбрасывается в значение
\(Fo\(Fc, если она установлена\&.
.RE
.sp
Если заданный пользователь имеет ограниченную оболочку, то этот параметр не сработает (если
\fBsu\fR
не запускается суперпользователем)\&.
.sp
Заметим, что поведение окружения по умолчанию таково:
.PP
.RS 4
Переменные окружение
\fB$HOME\fR,
\fB$SHELL\fR,
\fB$USER\fR,
\fB$LOGNAME\fR,
\fB$PATH\fR
и
\fB$IFS\fR
сбрасываются\&.
.RE
.PP
.RS 4
Если параметр
\fB\-\-login\fR
не указан, то окружение копируется, за исключением переменных, перечисленных выше\&.
.RE
.PP
.RS 4
Если параметр
\fB\-\-login\fR
указан, то переменные окружения
\fB$TERM\fR,
\fB$COLORTERM\fR,
\fB$DISPLAY\fR
и
\fB$XAUTHORITY\fR
копируются (если они установлены)\&.
.RE
.PP
.RS 4
Если параметр
\fB\-\-login\fR
указан, то переменные окружения
\fB$TZ\fR,
\fB$HZ\fR
и
\fB$MAIL\fR
устанавливаются согласно переменным файла
/etc/login\&.defs:
\fBENV_TZ\fR,
\fBENV_HZ\fR,
\fBMAIL_DIR\fR
и
\fBMAIL_FILE\fR
(смотрите далее)\&.
.RE
.PP
.RS 4
Если параметр
\fB\-\-login\fR
указан, то дополнительные переменные окружения могут быть установлены из файла
\fBENVIRON_FILE\fR
(смотрите далее)\&.
.RE
.RE
.SH "ПРЕДОСТЕРЕЖЕНИЯ"
.PP
Данная версия программы
\fBsu\fR
может быть собрана с разными параметрами и только некоторые из них смогут быть использованы на любой машине\&.
.SH "НАСТРОЙКА"
.PP
На работу этого инструмента влияют следующие переменные настройки из
/etc/login\&.defs:
.PP
\fBCONSOLE\fR (строка)
.RS 4
Если определена, то значение равно или полному пути к файлу с именами устройств (одно на строку), или списку имён устройств, перечисленных через \(Fo:\(Fc\&. Вход суперпользователя будет разрешён только с этих устройств\&.
.sp
Если не определена, то суперпользователь может входить в систему с любого устройства\&.
.sp
Устройства должны указываться без начального префикса /dev/\&.
.RE
.PP
\fBCONSOLE_GROUPS\fR (строка)
.RS 4
Список групп для добавления к набору пользовательских дополнительных групп при входе с консоли (определяемой переменной CONSOLE)\&. По умолчанию не указана\&.
Используйте осторожно \(em может дать пользователям постоянный доступ к этим группам, даже если они не входили с консоли\&.
.RE
.PP
\fBDEFAULT_HOME\fR (логический)
.RS 4
Определяет, можно ли войти в систему, если нельзя выполнить cd в домашний каталог\&. По умолчанию \(Fono\(Fc\&.
.sp
Если равно
\fIyes\fR, то пользователь будет попадать в корневой каталог (/), если невозможно выполнить cd в его домашний каталог\&.
.RE
.PP
\fBENV_HZ\fR (строка)
.RS 4
Если установлена, то будет использоваться для определения переменной окружения HZ при входе пользователя в систему\&. Значение должно начинаться с
\fIHZ=\fR\&. Обычное значение для Linux \(em
\fIHZ=100\fR\&.
.RE
.PP
\fBENVIRON_FILE\fR (строка)
.RS 4
Если этот файл существует и доступ для чтения, то из него читает регистрационное окружение\&. Каждая строка должна иметь формат: имя=значение\&.
.sp
Строки, начинающиеся с #, считаются комментарием и игнорируются\&.
.RE
.PP
\fBENV_PATH\fR (строка)
.RS 4
If set, it will be used to define the PATH environment variable when a regular user login\&. The value is a colon separated list of paths (for example
\fI/bin:/usr/bin\fR) and can be preceded by
\fIPATH=\fR\&. The default value is
\fIPATH=/bin:/usr/bin\fR\&.
.RE
.PP
\fBENV_SUPATH\fR (строка)
.RS 4
If set, it will be used to define the PATH environment variable when the superuser login\&. The value is a colon separated list of paths (for example
\fI/sbin:/bin:/usr/sbin:/usr/bin\fR) and can be preceded by
\fIPATH=\fR\&. The default value is
\fIPATH=/sbin:/bin:/usr/sbin:/usr/bin\fR\&.
.RE
.PP
\fBENV_TZ\fR (строка)
.RS 4
Если установлена, то будет использоваться для определения переменной окружения TZ при входе пользователя\&. Значение может быть равно имени часового пояса, начинающегося
\fITZ=\fR
(например,
\fITZ=CST6CDT\fR), или полному пути к файлу с параметрами часового пояса (например,
/etc/tzname)\&.
.sp
Если указан полный путь, но файл не существует или недоступен для чтения, то используется значение по умолчанию:
\fITZ=CST6CDT\fR\&.
.RE
.PP
\fBLOGIN_STRING\fR (строка)
.RS 4
Строка\-приглашение к вводу пароля\&. Значение по умолчанию: \(FoPassword:\(Fc или перевод этой строки на разные языки\&. Если вы измените эту переменную, то перевод будет отсутствовать\&.
.sp
Если в строке содержится подстрока
\fI%s\fR, то она будет заменена на имя пользователя\&.
.RE
.PP
\fBMAIL_CHECK_ENAB\fR (логический)
.RS 4
Включает проверку и показ состояния почтового ящика при входе\&.
.sp
Вы должны выключить это, если почтовый ящик проверяется из файлов автозапуска оболочки (\(Fomailx \-e\(Fc или похожей командой)\&.
.RE
.PP
\fBMAIL_DIR\fR (строка)
.RS 4
Почтовый каталог\&. Данный параметр нужен для управления почтовым ящиком при изменении или удалении учётной записи пользователя\&. Если параметр не задан, то используется значение указанное при сборке\&.
.RE
.PP
\fBMAIL_FILE\fR (строка)
.RS 4
Определяет расположение почтовых файлов пользователя относительно домашнего каталога\&.
.RE
.PP
Переменные
\fBMAIL_DIR\fR
и
\fBMAIL_FILE\fR
используются командами
\fBuseradd\fR,
\fBusermod\fR
и
\fBuserdel\fR
для создания, перемещения или удаления почты пользователя\&.
.PP
Если значение
\fBMAIL_CHECK_ENAB\fR
равно
\fIyes\fR, то они также используются для определения переменной окружения
\fBMAIL\fR\&.
.PP
\fBQUOTAS_ENAB\fR (логический)
.RS 4
Включает установку ограничений ресурсов из
/etc/limits
и ulimit, umask и niceness из поля gecos файла passwd\&.
.RE
.PP
\fBSULOG_FILE\fR (строка)
.RS 4
Если определена, то любая активность su будет протоколироваться в этот файл\&.
.RE
.PP
\fBSU_NAME\fR (строка)
.RS 4
Если определена, то выводится имя команды когда работает \(Fosu \-\(Fc\&. Например, если значение равно \(Fosu\(Fc, то \(Fops\(Fc покажет команду как \(Fo\-su\(Fc\&. Если не определена, то \(Fops\(Fc покажет имя запускаемой оболочки например как \(Fo\-sh\(Fc\&.
.RE
.PP
\fBSU_WHEEL_ONLY\fR (логический)
.RS 4
Если равна
\fIyes\fR, то пользователь должен быть членом первой группы с gid 0 в файле
/etc/group
(в большинстве систем Linux называется
\fIroot\fR), чтобы иметь возможность запускать
\fBsu\fR
для получения uid 0\&. Если группа не существует, или пуста, то никто не сможет получить uid 0 с помощью
\fBsu\fR\&.
.RE
.PP
\fBSYSLOG_SU_ENAB\fR (логический)
.RS 4
Включить протоколирование \(Fosyslog\(Fc действий
\fBsu\fR
\(em дополнительно к протоколированию в файле sulog\&.
.RE
.PP
\fBUSERGROUPS_ENAB\fR (логический)
.RS 4
Включает установку группы битов umask равной битам владельца (пример: 022 \-> 002, 077 \-> 007) для не суперпользователей, если uid равен gid и имя пользователя совпадает с именем первичной группы\&.
.sp
Если значение равно
\fIyes\fR, то
\fBuserdel\fR
удаляет пользовательскую группу, если в ней нет больше членов, а
\fBuseradd\fR
по умолчанию создаёт группу с именем пользователя\&.
.RE
.SH "ФАЙЛЫ"
.PP
/etc/passwd
.RS 4
содержит информацию о пользователях
.RE
.PP
/etc/shadow
.RS 4
содержит защищаемую информацию о пользователях
.RE
.PP
/etc/login\&.defs
.RS 4
содержит конфигурацию подсистемы теневых паролей
.RE
.SH "ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ"
.PP
При успешном выполнении
\fBsu\fR
возвращает код выхода команды, которая была выполнена\&.
.PP
Если выполнение команды завершилось по сигналу, то
\fBsu\fR
возвращает номер этого сигнала плюс 128\&.
.PP
Если su завершила команду (так как был запрос сделать это и команда не завершилась в положенное время), то
\fBsu\fR
завершается с кодом 255\&.
.PP
Некоторые коды выхода
\fBsu\fR
не зависят от запускаемой команды:
.PP
\fI0\fR
.RS 4
Успешно (только для
\fB\-\-help\fR)
.RE
.PP
\fI1\fR
.RS 4
Сбой аутентификации или системы
.RE
.PP
\fI126\fR
.RS 4
Запрошенная команда не найдена
.RE
.PP
\fI127\fR
.RS 4
Запрошенная команда не может быть выполнена
.RE
.SH "СМОТРИТЕ ТАКЖЕ"
.PP
\fBlogin\fR(1),
\fBlogin.defs\fR(5),
\fBsg\fR(1),
\fBsh\fR(1)\&.