Scroll to navigation

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

НАЗИВ

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

УВОД

runuser [опције] -u корисник [[--] наредба [аргумент...]]

runuser [опције] [-] [корисник [аргумент...]]

ОПИС

runuser се може користити за покретање наредби са заменским ИД-ом корисника и групе. Ако опција -u није дата, runuser се пребацује на su-сагласну семантику а шкољка се извршава. Разлика између наредби runuser и su је та да runuser не тражи лозинку (јер је може извршити само администратор) и користи другачије PAM подешавање. Наредба runuser не мора бити инсталирана са овлашћењима „постави-ИД-корисника“.

Ако ПАМ сесија није захтевана, тада је препоручљиво решење коришћење наредбе 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]“ шкољке на - да би шкољку учинио пријавном шкољком

-P, --pty

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

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

-m, -p, --preserve-environment

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

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

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

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

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

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

•/bin/sh

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

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

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

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

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

-h, --help

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

-V, --version

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

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

runuser чита /etc/default/runuser и /etc/login.defs датотеке подешавања. Следеће ставке подешавања су значајне за 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 обично даје излазно стање наредбе коју извршава. Ако је наредба убијена сигналом, runuser резултира бројем сигнала плус 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/>.

2023-07-24 util-linux 2.39.1