tgoop.com/linuxdevs/277
Create:
Last Update:
Last Update:
su
в Linux
Данная команда заменяет пользователя оболочки shell на указанного. Фактически происходит запуск нового экземпляра оболочки с указанными параметрами.
Благодаря этому возможно, не выходя из системы, совершенно безболезненно повышать возможности управления операционной системой или наоборот ограничивать их.
Общий синтаксис команды su следующий:
$ su [options] [-] [user]
options
— некоторые дополнительные возможности команды. Мы их рассмотрим ниже:[-]
— смена контекста выполнения оболочки на контекст указанного пользователя. Переменные $PATH, $HOME, $SHELL, $USER, $LOGNAME содержат значения, характерные для указанного пользователя. Домашняя папка пользователя меняется на другую.user
— имя пользователя, под которым продолжит работать командная оболочка.Основные опции команды
su
:-c, --command=command
— запускает приложение под указанным аккаунтом;-s, --shell=shell
— происходит запуск для заданного пользователя указанной оболочки;-, -l, --login
— смена контекста выполнения на контекст заданного пользователя, аналогична смене пользователя системы для shell;-g, --group=group
— вызов пользователя, состоящего в заданной группе. Используется только для пользователя root;-h, --help
— вызов справки для команды.Примеры использования
$ su
— При вызове без каких-либо параметров по умолчанию su запускает интерактивную оболочку от имени пользователя root.$ su -
Наиболее часто используемый параметр при вызове su — это - ( -l , --login ). Это делает оболочку оболочкой входа в систему со средой, очень похожей на реальный вход в систему, и меняет текущий каталог.$ su skynet
— Смена пользователя на пользователя skynet:$ su - skynet
— Смена пользователя на пользователя skynet со сменой окружения.Если вы хотите запустить другую оболочку вместо той, которая определена в файле passwd , используйте параметр -s , --shell . Например, чтобы переключиться на root и запустить оболочку zsh , вы должны ввести:
$ su -s /usr/bin/zsh
Чтобы сохранить всю среду ( HOME , SHELL , USER и LOGNAME ) вызывающего пользователя, вызовите команду с параметром -p , --preserve-environment: $ su -p
#linux #commands #doc #cheatsheet