'\" t .\" Title: runuser .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.20 .\" Date: 2024-05-14 .\" Manual: Команди користувача .\" Source: util-linux 2.40.1 .\" Language: English .\" .TH "RUNUSER" "1" "2024-05-14" "util\-linux 2.40.1" "Команди користувача" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "НАЗВА" runuser \- запуск команди від імені іншого користувача та групи .SH "КОРОТКИЙ ОПИС" .sp \fBrunuser\fP [options] \fB\-u\fP \fIuser\fP [[\-\-] \fIcommand\fP [\fIargument\fP...]] .sp \fBrunuser\fP [options] [\fB\-\fP] [\fIuser\fP [\fIargument\fP...]] .SH "ОПИС" .sp \fBrunuser\fP can be used to run commands with a substitute user and group ID. If the option \fB\-u\fP is not given, \fBrunuser\fP falls back to \fBsu\fP\-compatible semantics and a shell is executed. The difference between the commands \fBrunuser\fP and \fBsu\fP is that \fBrunuser\fP does not ask for a password (because it may be executed by the root user only) and it uses a different PAM configuration. The command \fBrunuser\fP does not have to be installed with set\-user\-ID permissions. .sp Якщо сеанс PAM не є обов\(cqязковим, рекомендованим рішенням є використання команди \fBsetpriv\fP(1). .sp Якщо викликано без аргументів, типово, \fBrunuser\fP буде запущено інтерактивну командну оболонку від імені \fIroot\fP. .sp З метою забезпечення зворотної сумісності \fBrunuser\fP, типово, не змінює поточного каталогу і встановлює лише змінні середовища \fBHOME\fP і \fBSHELL\fP (і \fBUSER\fP та \fBLOGNAME\fP, якщо користувачем \fIкористувач\fP не є root). У цій версії \fBrunuser\fP для керування сеансом використано PAM. .sp Зауважте, що \fBrunuser\fP в усіх випадках використовує PAM (pam_getenvlist()) для виконання остаточної модифікації середовища. Параметри командного рядка, зокрема \fB\-\-login\fP і \fB\-\-preserve\-environment\fP застосовуються до середовища, перш ніж його буде змінено PAM. .sp Починаючи з версії 2.38, \fBrunuser\fP скидає обмеження на ресурси процесу RLIMIT_NICE, RLIMIT_RTPRIO, RLIMIT_FSIZE, RLIMIT_AS і RLIMIT_NOFILE. .SH "ПАРАМЕТРИ" .sp \fB\-c\fP, \fB\-\-command\fP=\fIкоманда\fP .RS 4 Передати \fIкоманду\fP командній оболонці за допомогою параметра \fB\-c\fP. .RE .sp \fB\-f\fP, \fB\-\-fast\fP .RS 4 Передати оболонці \fB\-f\fP, може бути як корисним, так і недоречним, залежно від оболонки. .RE .sp \fB\-g\fP, \fB\-\-group\fP=\fIгрупа\fP .RS 4 Основна група, яку слід використати. Цей параметр можна використовувати лише від імені користувача root. .RE .sp \fB\-G\fP, \fB\-\-supp\-group\fP=\fIгрупа\fP .RS 4 Визначити додаткову групу. Цей параметр доступний лише користувачу root. Першу вказану додаткову групу також буде використано як основну групу, якщо не вказано параметр \fB\-\-group\fP. .RE .sp \fB\-\fP, \fB\-l\fP, \fB\-\-login\fP .RS 4 Запустити командну оболонку як оболонку входу до системи із середовищем, подібним для звичайної оболонки для входу: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} очищає усі змінні середовища, окрім \fBTERM\fP і змінних, які вказано \fB\-\-whitelist\-environment\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} ініціалізує змінні середовища \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP, \fBLOGNAME\fP і \fBPATH\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} змінює домашній каталог користувача призначення .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} встановлює для argv[0] командної оболонки значення «\fB\-\fP» з метою зробити оболонку оболонкою входу до системи .RE .RE .sp \fB\-m\fP, \fB\-p\fP, \fB\-\-preserve\-environment\fP .RS 4 Зберегти усе середовище, тобто не встановлювати значення \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP та \fBLOGNAME\fP. Цей параметр буде проігноровано, якщо вказано параметр \fB\-\-login\fP. .RE .sp \fB\-P\fP, \fB\-\-pty\fP .RS 4 Створити псевдотермінал для сеансу Незалежний термінал надає кращий захист, оскільки користувач не використовує спільний термінал із початковим сеансом. Цим можна скористатися для запобігання втручанню у керування введенням\-виведення термінала \fBTIOCSTI\fP та іншим атакам на дескриптори файлів термінала. Також можна перемкнути увесь сеанс у фоновий режим (наприклад, \fBrunuser \-\-pty\fP \fB\-u\fP \fIкористувач\fP \fB\-\-\fP \fIкоманда\fP \fB&\fP). Якщо увімкнено псевдотермінал, \fBrunuser\fP працює як проксі\-сервер між сеансами (синхронізує stdin і stdout). .sp Цю можливість, в основному, призначено для інтерактивних сеансів. Якщо стандартним джерелом вхідних даних є не термінал, а, наприклад, канал даних (приклад: \fBecho "date" | runuser \-\-pty \-u\fP \fIкористувач\fP), прапорець \fBECHO\fP для псевдотермінала буде вимкнено для того, щоб уникнути безладного виведення даних. .RE .sp \fB\-s\fP, \fB\-\-shell\fP=\fIоболонка\fP .RS 4 Запустити вказану командну \fIоболонку\fP замість типової. Запущену оболонку буде вибрано за такими правилами, за порядком: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} командна оболонка, яку вказано за допомогою \fB\-\-shell\fP. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} командна оболонка, яку вказано у змінній середовища \fBSHELL\fP, якщо використано параметр \fB\-\-preserve\-environment\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} командна оболонка зі списку у запису passwd користувача призначення .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} /bin/sh .sp Якщо у користувача призначення командну оболонку обмежено (тобто її немає у списку \fI/etc/shells\fP), параметр \fB\-\-shell\fP і змінні середовища \fBSHELL\fP буде проігноровано, якщо користувачем, який викликав програму, не є root. .RE .RE .sp \fB\-\-session\-command=\fP\fIкоманда\fP .RS 4 Те саме, що і \fB\-c\fP, але без створення сеансу. (Не радимо.) .RE .sp \fB\-T\fP, \fB\-\-no\-pty\fP* .RS 4 Do not create a pseudo\-terminal, opposite of \fB\-\-pty\fP and \fB\-P\fP. Note that running without a pseudo\-terminal opens the security risk of privilege escalation through TIOCSTI/TIOCLINUX ioctl command injection. .RE .sp \fB\-w\fP, \fB\-\-whitelist\-environment\fP=_список> .RS 4 Не відновлювати початкові значення змінних середовища, який вказано у списку відокремлених комами значень \fIсписок\fP при очищенні середовища для \fB\-\-login\fP. «Білий» список буде проігноровано для змінних середовища \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP, \fBLOGNAME\fP і \fBPATH\fP. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 Вивести текст довідки і завершити роботу. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 Вивести дані щодо версії і завершити роботу. .RE .SH "ФАЙЛ НАЛАШТУВАНЬ" .sp \fBrunuser\fP reads the \fI/etc/default/runuser\fP and \fI/etc/login.defs\fP configuration files. The following configuration items are relevant for \fBrunuser\fP: .sp \fBENV_PATH\fP (рядок) .RS 4 Визначає змінну середовища \fBPATH\fP для звичайного користувача Типовим значенням є \fI/usr/local/bin:/bin:/usr/bin\fP. .RE .sp \fBENV_ROOTPATH\fP (рядок), \fBENV_SUPATH\fP (рядок) .RS 4 Визначає змінну середовища \fBPATH\fP для root. \fBENV_SUPATH\fP має пріоритет. Типовим значенням є \fI/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin\fP. .RE .sp \fBALWAYS_SET_PATH\fP (булеве значення) .RS 4 Якщо встановлено значення \fIyes\fP і не вказано параметрів \fB\-\-login\fP і \fB\-\-preserve\-environment\fP, \fBrunuser\fP ініціалізує \fBPATH\fP. .RE .sp Значення змінної середовища \fBPATH\fP може бути різним у системах, де \fI/bin\fP і \fI/sbin\fP об\(cqєднано у \fI/usr\fP. На цю змінну впливає також параметр командного рядка \fB\-\-login\fP і параметри системи PAM (наприклад, \fBpam_env\fP(8)). .SH "СТАН ВИХОДУ" .sp \fBrunuser\fP normally returns the exit status of the command it executed. If the command was killed by a signal, \fBrunuser\fP returns the number of the signal plus 128. .sp Стан виходу, який створено самим \fBrunuser\fP: .sp 1 .RS 4 Загальна помилка перед виконанням потрібної команди .RE .sp 126 .RS 4 Потрібну команду не вдалося виконати .RE .sp 127 .RS 4 Потрібну команду не знайдено .RE .SH "ФАЙЛИ" .sp \fI/etc/pam.d/runuser\fP .RS 4 типовий файл налаштувань PAM .RE .sp \fI/etc/pam.d/runuser\-l\fP .RS 4 Файл налаштувань PAM, якщо вказано \fB\-\-login\fP .RE .sp \fI/etc/default/runuser\fP .RS 4 специфічний для команди runuser файл налаштувань logindef .RE .sp \fI/etc/login.defs\fP .RS 4 загальний файл налаштувань logindef .RE .SH "ЖУРНАЛ" .sp Ця команда \fBrunuser\fP походить з \fBsu\fP у coreutils, яку було засновано на реалізації David MacKenzie, і команди Fedora \fBrunuser\fP, автором якої є Dan Walsh. .SH "ТАКОЖ ПЕРЕГЛЯНЬТЕ" .sp \fBsetpriv\fP(1), \fBsu\fP(1), \fBlogin.defs\fP(5), \fBshells\fP(5), \fBpam\fP(8) .SH "ЯК НАДІСЛАТИ ЗВІТ ПРО ВАДИ" .sp Для звітування щодо вад скористайтеся системою стеження за вадами \- \c .URL "https://github.com/util\-linux/util\-linux/issues" "" "." .SH "ДОСТУП ДО ПРОГРАМИ" .sp Програма \fBrunuser\fP є частиною пакунка util\-linux, який можна отримати з \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "архіву ядра Linux" "."