Man page - runuser(1)
Packages contains this manual
- getopt(1)
- x86_64(8)
- zramctl(8)
- findfs(8)
- blockdev(8)
- ipcmk(1)
- linux64(8)
- ldattach(8)
- findmnt(8)
- unshare(1)
- uclampset(1)
- partx(8)
- lscpu(1)
- flock(1)
- fallocate(1)
- setterm(1)
- terminal-colors.d(5)
- setsid(1)
- setarch(8)
- lsns(8)
- adjtime_config(5)
- chcpu(8)
- runuser(1)
- rtcwake(8)
- rev(1)
- lsipc(1)
- blkdiscard(8)
- nsenter(1)
- whereis(1)
- dmesg(1)
- fsck(8)
- blkid(8)
- ipcs(1)
- mcookie(1)
- lsblk(8)
- readprofile(8)
- switch_root(8)
- wdctl(8)
- mountpoint(1)
- lsmem(1)
- fsfreeze(8)
- i386(8)
- pivot_root(8)
- swaplabel(8)
- scols-filter(5)
- getty(8)
- chmem(8)
- chrt(1)
- agetty(8)
- blkzone(8)
- more(1)
- choom(1)
- mkswap(8)
- wipefs(8)
- taskset(1)
- lslocks(8)
- linux32(8)
- ionice(1)
- isosize(8)
- su(1)
- rename.ul(1)
- prlimit(1)
- namei(1)
- lslogins(1)
- ipcrm(1)
- fstrim(8)
- mkfs(8)
- hardlink(1)
- sulogin(8)
- setpriv(1)
apt-get install util-linux
Available languages:
en fr pl uk ro sr deManual
RUNUSER
NOMSYNOPSIS
DESCRIPTION
OPTIONS
FICHIERS DE CONFIGURATION
CODE DE RETOUR
FICHIERS
HISTORIQUE
VOIR AUSSI
SIGNALER DES BOGUES
DISPONIBILITĂ
NOM
runuser - ExĂ©cuter une commande avec des identifiants dâutilisateur et de groupe substituĂ©s
SYNOPSIS
runuser [options] -u user [[--] command [ argument ...]]
runuser [options] [ - ] [ user [ argument ...]]
DESCRIPTION
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.
Si une session PAM nâest pas indispensable, la solution recommandĂ©e consiste Ă utiliser la commande setpriv (1).
Si appelée sans argument, runuser exécute par défaut un interpréteur de commandes interactif en tant que superutilisateur .
Pour assurer la rĂ©trocompatibilitĂ©, runuser ne change pas, par dĂ©faut, de rĂ©pertoire actuel et ne dĂ©finit que les variables dâenvironnement HOME et SHELL (plus USER et LOGNAME si lâ utilisateur cible nâest pas le superutilisateur). Cette version de runuser utilise PAM pour la gestion de session.
Remarquez que runuser utilise dans tous les cas PAM (pam_getenvlist()) pour effectuer une modification sur lâenvironnement final. Les options de la ligne de commande comme --login ou --preserve-environment touchent lâenvironnement avant quâil ne soit modifiĂ© par PAM.
Since version 2.38 runuser resets process resource limits RLIMIT_NICE, RLIMIT_RTPRIO, RLIMIT_FSIZE, RLIMIT_AS and RLIMIT_NOFILE.
OPTIONS
-c , --command = commande
Passer une commande Ă lâinterprĂ©teur de commandes avec lâoption -c .
-f , --fast
Passer -f Ă lâinterprĂ©teur de commandes, ce qui pourrait ĂȘtre utile ou non suivant lâinterprĂ©teur de commandes.
-g , --group = groupe
Le groupe primaire Ă utiliser. Cette option nâest permise que pour le superutilisateur.
-G , --supp-group = groupe
SpĂ©cifier un groupe supplĂ©mentaire. Cette option nâest disponible que pour le superutilisateur. Le premier groupe supplĂ©mentaire spĂ©cifiĂ© est Ă©galement utilisĂ© en tant que groupe primaire si lâoption --group nâest pas spĂ©cifiĂ©e.
- , -l , --login
DĂ©marrer lâinterprĂ©teur de commandes comme un interprĂ©teur de connexion avec un environnement similaire Ă une connexion rĂ©elle :
âą effacer toutes les variables dâenvironnement sauf TERM et les variables spĂ©cifiĂ©es avec --whitelist-environment ;
âą initialiser les variables dâenvironnement HOME , SHELL , USER , LOGNAME et PATH
âą se placer dans le rĂ©pertoire personnel de lâutilisateur cible ;
âą dĂ©finir argv[0] pour lâinterprĂ©teur de commandes à « - » pour faire de lâinterprĂ©teur de commandes un interprĂ©teur de connexion.
-m , -p , --preserve-environment
PrĂ©server la totalitĂ© de lâenvironnement, câest-Ă -dire ne pas dĂ©finir HOME , SHELL , USER ni LOGNAME . Cette option est ignorĂ©e si lâoption --login est indiquĂ©e.
-P , --pty
Create a pseudo-terminal for the session. The independent terminal provides better security as the user does not share a terminal with the original session. This can be used to avoid TIOCSTI ioctl terminal injection and other security attacks against terminal file descriptors. The entire session can also be moved to the background (e.g., runuser --pty -u user -- command & ). If the pseudo-terminal is enabled, then runuser works as a proxy between the sessions (sync stdin and stdout).
This feature is mostly designed for interactive sessions. If the standard input is not a terminal, but for example a pipe (e.g., echo "date" | runuser --pty -u user ), then the ECHO flag for the pseudo-terminal is disabled to avoid messy output.
-s , --shell = shell
ExĂ©cuter lâinterprĂ©teur de commandes shell indiquĂ© au lieu de celui par dĂ©faut. LâinterprĂ©teur de commandes Ă exĂ©cuter est sĂ©lectionnĂ© dâaprĂšs les rĂšgles suivantes dans cet ordre :
âą lâinterprĂ©teur de commandes indiquĂ© avec --shell ;
âą lâinterprĂ©teur de commandes indiquĂ© dans la variable dâenvironnement SHELL si lâoption --preserve-environment est utilisĂ©e ;
âą lâinterprĂ©teur de commandes indiquĂ© dans lâentrĂ©e passwd de lâutilisateur cible ;
âą /bin/sh
Si lâutilisateur cible a un interprĂ©teur de commandes restreint (câest-Ă -dire ne faisant pas partie de /etc/shells ), lâoption --shell et la variable dâenvironnement SHELL sont ignorĂ©es sauf si lâutilisateur appelant est le superutilisateur.
--session-command= commande
Comme -c , mais sans créer de nouvelle session (à éviter).
-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.
-u , --user = user
Run command with the effective user ID and group ID of the user name user .
-w , --whitelist-environment = liste
Ne pas rĂ©initialiser les variables dâenvironnement spĂ©cifiĂ©es dans une liste sĂ©parĂ©e par des virgules au moment de vider lâenvironnement pour --login (une connexion). La liste blanche est ignorĂ©e sâagissant des variables dâenvironnement HOME , SHELL , USER , LOGNAME et PATH .
-h , --help
Afficher lâaide-mĂ©moire puis quitter.
-V , --version
Afficher la version et quitter.
FICHIERS DE CONFIGURATION
runuser reads the /etc/default/runuser and /etc/login.defs configuration files. The following configuration items are relevant for runuser :
ENV_PATH (chaĂźne)
DĂ©finit la variable dâenvironnement pour un utilisateur ordinaire. La valeur par dĂ©faut est /usr/local/bin:/bin:/usr/bin .
ENV_ROOTPATH (chaĂźne), ENV_SUPATH (chaĂźne)
Defines the PATH environment variable for root. ENV_SUPATH takes precedence. The default value is /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin .
ALWAYS_SET_PATH (booléen)
If set to yes and --login and --preserve-environment were not specified runuser initializes PATH .
La variable dâenvironnement PATH peut ĂȘtre diffĂ©rente sur des systĂšmes oĂč /bin et /sbin sont fusionnĂ©s dans /usr , cette variable est aussi concernĂ©e par lâoption --login de la ligne de commande et le paramĂ©trage du systĂšme PAM (comme pam_env (8)).
CODE DE RETOUR
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.
Le code de retour gĂ©nĂ©rĂ© par runuser elle-mĂȘme est un des suivants.
1
Erreur gĂ©nĂ©rale avant dâexĂ©cuter la commande demandĂ©e.
126
La commande demandĂ©e nâa pas pu ĂȘtre exĂ©cutĂ©e.
127
La commande demandĂ©e nâa pas Ă©tĂ© trouvĂ©e.
FICHIERS
/etc/pam.d/runuser
fichier de configuration de PAM par défaut
/etc/pam.d/runuser-l
fichier de configuration de PAM si --login est indiqué
/etc/default/runuser
fichier de configuration logindef spécifique à runuser
/etc/login.defs
fichier de configuration logindef général
HISTORIQUE
Cette commande runuser est dérivée de su de coreutils, qui était basée sur une implémentation de David MacKenzie, et de la commande runuser de Fedora par Dan Walsh.
VOIR AUSSI
setpriv (1), su (1), login.defs (5), shells (5), pam (8)
SIGNALER DES BOGUES
Pour signaler un bogue, utilisez le gestionnaire de bogues <https://github.com/util-linux/util-linux/issues>.
DISPONIBILITĂ
La commande runuser fait partie du paquet util-linux, elle est disponible sur lâarchive du noyau Linux <https://www.kernel.org/pub/linux/utils/util-linux/>.