НАЗВА
su — запуск команди від імені іншого користувача та групиКОРОТКИЙ ОПИС
su [параметри] [-] [ користувач [ аргумент...]]ОПИС
За допомогою su можна віддавати команди від імені іншого користувача та групиПАРАМЕТРИ
-c, --command=командаПередати
команду
командній
оболонці
за
допомогою
параметра
-c.
Передати
оболонці -f,
може бути
як
корисним,
так і
недоречним,
залежно
від
оболонки.
Вказати
основну
групу. Цей
параметр
доступний
лише для
користувача
root.
Визначити
додаткову
групу. Цей
параметр
доступний
лише
користувачу
root. Першу
вказану
додаткову
групу
також буде
використано
як основну
групу, якщо
не вказано
параметр
--group.
Запустити
командну
оболонку
як
оболонку
входу до
системи із
середовищем,
подібним
для
звичайної
оболонки
для входу:
•очищає
усі змінні
середовища,
окрім TERM і
змінних,
які
вказано
--whitelist-environment
•ініціалізує
змінні
середовища
HOME, SHELL, USER, LOGNAME і
PATH
•змінює
домашній
каталог
користувача
призначення
•встановлює
для argv[0]
командної
оболонки
значення ' -'
з метою
зробити
оболонку
оболонкою
входу до
системи
Зберегти
усе
середовище,
тобто не
встановлювати
значення HOME,
SHELL, USER та LOGNAME.
Цей
параметр
буде
проігноровано,
якщо
вказано
параметр
--login.
Створити
псевдотермінал
для сеансу.
Незалежний
термінал
надає
кращий
захист,
оскільки
користувач
не
використовує
спільний
термінал
із
початковим
сеансом.
Цим можна
скористатися
для
запобігання
втручанню
у
керування
введенням-виведення
термінала
TIOCSTI та іншим
атакам на
дескриптори
файлів
термінала.
Також
можна
перемкнути
увесь
сеанс у
фоновий
режим
(наприклад,
su --pty -
користувач
-c
програма
&). Якщо
увімкнено
псевдотермінал,
su працює як
проксі-сервер
між
сеансами
(синхронізує
stdin і stdout).
Цю
можливість,
в
основному,
призначено
для
інтерактивних
сеансів.
Якщо
стандартним
джерелом
вхідних
даних є не
термінал, а,
наприклад,
канал
даних
(приклад: echo
"date" | su --pty),
прапорець
ECHO для
псевдотермінала
буде
вимкнено
для того,
щоб
уникнути
безладного
виведення
даних.
Запустити
вказану
командну
оболонку
замість
типової.
Запущену
оболонку
буде
вибрано за
такими
правилами,
за
порядком:
•командна
оболонка,
яку
вказано за
допомогою
--shell
•командна
оболонка,
яку
вказано у
змінній
середовища
SHELL, якщо
використано
параметр
--preserve-environment
•командна
оболонка
зі списку у
запису passwd
користувача
призначення
•/bin/sh
Те
саме, що і -c,
але без
створення
сеансу. (Не
радимо.)
Не
відновлювати
початкові
значення
змінних
середовища,
який
вказано у
списку
відокремлених
комами
значень
список
при
очищенні
середовища
для --login.
«Білий»
список
буде
проігноровано
для
змінних
середовища
HOME, SHELL, USER, LOGNAME і
PATH.
Вивести
текст
довідки і
завершити
роботу.
Вивести
дані щодо
версії і
завершити
роботу.
СИГНАЛИ
При отриманні будь-якого сигналу, SIGINT, SIGQUIT або SIGTERM, su припиняє роботу усіх дочірніх процесів, а потім перериває свою роботу із отриманим сигналом. Дочірній процес буде перервано сигналом SIGTERM; після невдалої спроби і 2 секунд затримки дочірній процес буде завершено сигналом SIGKILL.ФАЙЛ НАЛАШТУВАНЬ
su читає файли налаштувань /etc/default/su і /etc/login.defs. su стосуються такі записи налаштувань:Затримка
у секундах
у випадку
невдалої
спроби
пройти
розпізнавання.
Число має
бути
невід'ємним
цілим
числом.
Визначає
змінну
середовища
PATH для
звичайного
користувача.
Типовим
значенням
є /usr/local/bin:/bin:/usr/bin.
Визначає
змінну
середовища
PATH для root. ENV_SUPATH
має
пріоритет.
Типовим
значенням
є
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin.
Якщо
встановлено
значення yes
і не
вказано
параметрів
--login і --preserve-environment, su
ініціалізує
PATH.
Значення
змінної
середовища
PATH може бути
різним у
системах,
де /bin і /sbin
об'єднано у
/usr. На цю
змінну
впливає
також
параметр
командного
рядка --login і
параметри
системи PAM
(наприклад,
pam_env(8)).
СТАН ВИХОДУ
su, зазвичай, повертає стан виходу виконаної команди. Якщо команду буде перервано сигналом, su поверне номер сигналу плюс 128.Загальна
помилка
перед
виконанням
потрібної
команди
Потрібну
команду не
вдалося
виконати
Потрібну
команду не
знайдено
ФАЙЛИ
/etc/pam.d/suтиповий
файл
налаштувань
PAM
файл
налаштувань
PAM, якщо
вказано --login
специфічний
для
команди
файл
налаштувань
logindef
загальний
файл
налаштувань
logindef
ПРИМІТКИ
З міркувань безпеки su записує дані щодо невдалих спроб увійти до облікового запису до файла btmp, але взагалі не записує дані до файла lastlog. Цим рішенням можна скористатися для керування поведінкою su шляхом налаштовування PAM. Якщо ви хочете скористатися модулем pam_lastlog(8) для виведення повідомлення-попередження щодо невдалих спроб увійти, слід налаштувати pam_lastlog(8) на оновлення також і файла lastlog. Приклад:ЖУРНАЛ
Ця команда su походить з su у coreutils, яку було засновано на реалізації David MacKenzie. Версію у util-linux було переформатовано Karel Zak.ДИВ. ТАКОЖ
setpriv(1), login.defs(5), shells(5), pam(8), runuser(1)ЗВІТИ ПРО ВАДИ
Для звітування про вади використовуйте систему стеження помилками на <https://github.com/util-linux/util-linux/issues>.ДОСТУПНІСТЬ
su є частиною пакунка util-linux, який можна отримати з Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.ПЕРЕКЛАД
Український переклад цієї сторінки посібника виконано Yuri Chornoivan <[email protected]> Цей переклад є безкоштовною документацією; будь ласка, ознайомтеся з умовами GNU General Public License Version 3 НЕ НАДАЄТЬСЯ ЖОДНИХ ГАРАНТІЙ. Якщо ви знайшли помилки у перекладі цієї сторінки підручника, будь ласка, надішліть електронний лист до списку листування перекладачів: [email protected]11 травня 2022 року | util-linux 2.38.1 |