Scroll to navigation

RUNUSER(1) Корисничке наредбе RUNUSER(1)

НАЗИВ

runuser - покреће наредбу са заменским корисником и ИД-ом групе

УВОД

runuser [options] -u user [[--] command [argument...]]

runuser [options] [-] [user [argument...]]

ОПИС

runuser can be used to run commands with a substitute user and group ID. If the option -u is not given, runuser falls back to su-compatible semantics and a shell is executed. The difference between the commands runuser and su is that runuser 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 runuser does not have to be installed with set-user-ID permissions.

Ако ПАМ сесија није захтевана, тада је препоручљиво решење коришћење наредбе setpriv(1).

Када је позвана без аргумената, runuser подразумева покретање међудејствене шкољке као администратор.

За повратну сагласност, runuser подразумева да не мења текући директоријум и да постави само променљиве окружења HOME и SHELL (плус USER и LOGNAME ако циљни корисник није администратор). Ово издање runuser користи PAM за управљање сесијом.

Знајте да runuser у свим случајевима користи PAM (pam_getenvlist()) да одради крајњу измену окружења. Опције линије наредби --login и --preserve-environment утичу на окружење пре него ли се измени са PAM-ом.

Од издања 2.38 runuser поново поставља ограничења изворишта процеса RLIMIT_NICE, RLIMIT_RTPRIO, RLIMIT_FSIZE, RLIMIT_AS и RLIMIT_NOFILE.

ОПЦИЈЕ

-c, --command=наредба

Прослеђује наредбу шкољци опцијом -c.

-f, --fast

Прослеђује -f шкољци, што може или не мора бити корисно, у зависности од шкољке.

-g, --group=група

Примарна група за коришћење. Ова опција је допуштена само за администраторе.

-G, --supp-group=група

Наводи додатну групу. Ова опција је доступна само администратору. Прва наведена додатна група се такође користи као примарна група ако опција --group није наведена.

-, -l, --login

Покреће шкољку као пријавну шкољку са окружењем сличном стварном пријављивању:

•чисти све променљиве окружења изузев за TERM и променљиве које наводи опција --whitelist-environment

•покреће променљиве окружења ЛИЧНА, ШКОЉКА, КОРИСНИК, ПРИЈАВНО-ИМЕ, и ПУТАЊА

•прелази у циљни кориснички лични директоријум

•поставља „argv[0]“ шкољке на - да би шкољку учинио пријавном шкољком

-m, -p, --preserve-environment

Очувава читаво окружење, тј. не поставља ЛИЧНА, ШКОЉКА, КОРИСНИК или ПРИЈАВНО-ИМЕ. Опција се занемарује ако је опција --login наведена.

-P, --pty

Ствара псеудо-терминал за сесију. Независни терминал пружа бољу безбедност јер корисник не дели терминал са оригиналном сесијом. Ово се може користити да се избегну убризгавање „TIOCSTI ioctl“ терминала и други безбедносни напади на описнике датотека терминала. Цела сесија се такође може преместити у позадину (нпр. runuser --pty -u корисничко име -- наредба &). Ако је псеудотерминал укључен, тада runuser ради као посредник између сесија (усклађује стандардни улаз и стандардни излаз).

Ова функција је углавном осмишљена за међудејствене сесије. Ако стандардни улаз није терминал, већ на пример спојка (нпр., echo "датум" | runuser --pty -u корисник), тада је заставица ECHO за псеудотерминал искључена да би се избегао неуредан излаз.

-s, --shell=шкољка

Покреће наведену шкољку уместо основне. Шкољка за покретање се бира у складу са следећим правилима, овим редом:

•шкољка наведена опцијом --shell

•шкољка наведена у променљивој окружења ШКОЉКА ако се користи опција --preserve-environment

•шкољка која се налази на списку уноса лозинке крајњег корисника

•/bin/sh

Ако циљни корисник има ограничену шкољку (тј. није на списку у /etc/shells), тада се опција --shell и променљиве окружења ШКОЉКА занемарују осим ако корисник позивар није администратор.

--session-command=наредба

Исто као -c, али не прави нову сесију. (Не препоручује се.)

-T, --no-pty*

Do not create a pseudo-terminal, opposite of --pty and -P. Note that running without a pseudo-terminal opens the security risk of privilege escalation through TIOCSTI/TIOCLINUX ioctl command injection.

-w, --whitelist-environment=списак

Не поставља поново променљиве окружења наведене на зарезом раздвојеном списку приликом чишћења окружења за --login. Празан списак се занемарује за променљиве окружења ЛИЧНА, ШКОЉКА, КОРИСНИК, ПРИЈАВНО-ИМЕ и ПУТАЊА.

-h, --help

Приказује текст помоћи и излази.

-V, --version

Исписује издање и излази.

ДАТОТЕКЕ ПОДЕШАВАЊА

runuser reads the /etc/default/runuser and /etc/login.defs configuration files. The following configuration items are relevant for runuser:

ENV_PATH (ниска)

Дефинише променљиве окружења „ПУТАЊА“ за обичног корисника. Основна вредност је /usr/local/bin:/bin:/usr/bin.

ENV_ROOTPATH (ниска), ENV_SUPATH (ниска)

Дефинише променљиве окружења ПУТАЊА за корисника администратора. ENV_SUPATH има предност. Основна вредност је /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin.

ALWAYS_SET_PATH (логичка)

Ако је постављено на yes и --login и --preserve-environment нису наведене runuser покреће ПУТАЊУ.

Променљива окружења ПУТАЊА може бити другачија на системима где су /bin и /sbin спојене у /usr; на ову променљиву такође утиче --login опција линије наредби и ПАМ системска поставка (нпр., pam_env(8)).

ИЗЛАЗНО СТАЊЕ

runuser normally returns the exit status of the command it executed. If the command was killed by a signal, runuser returns the number of the signal plus 128.

Излазно стање које ствара сама runuser:

1

Општа грешка пре извршавања захтеване наредбе

126

Захтевана наредба се не може извршити

127

Захтевана наредба није нађена

ДАТОТЕКЕ

/etc/pam.d/runuser

основна датотека ПАМ подешавања

/etc/pam.d/runuser-l

датотека ПАМ подешавања ако је --login наведено

/etc/default/runuser

„runuser“-у специфична датотека подешавања дефиниција пријављивања

/etc/login.defs

општа датотека „logindef“ подешавања

ИСТОРИЈАТ

Ова runuser наредба је проистекла из su „coreutils“-а, која је заснована на примени од стране Дејвида Мек Кензија, и Федорине runuser наредбе од стране Дан Валша.

ПОГЛЕДАЈТЕ ТАКОЂЕ

setpriv(1), su(1), login.defs(5), shells(5), pam(8)

ПРИЈАВЉИВАЊЕ ГРЕШАКА

За пријављивање грешака, користите пратиоца грешака на <https://github.com/util-linux/util-linux/issues>.

ДОСТУПНОСТ

Наредба runuser је део пакета „util-linux“ који се може преузети са Архиве Линукс кернела <https://www.kernel.org/pub/linux/utils/util-linux/>.

2024-10-01 util-linux 2.40.2