'\" t .\" Title: runuser .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.20 .\" Date: 2024-04-27 .\" Manual: Commandes de l'utilisateur .\" Source: util-linux 2.40 .\" Language: English .\" .TH "RUNUSER" "1" "2024-04-27" "util\-linux 2.40" "Commandes de l\*(Aqutilisateur" .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 "NOM" runuser \- Exécuter une commande avec des identifiants d’utilisateur et de groupe substitués .SH "SYNOPSIS" .sp \fBrunuser\fP [options] \fB\-u\fP \fIuser\fP [[\-\-] \fIcommand\fP [\fIargument\fP...]] .sp \fBrunuser\fP [options] [\fB\-\fP] [\fIuser\fP [\fIargument\fP...]] .SH "DESCRIPTION" .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 Si une session PAM n\(cqest pas indispensable, la solution recommandée consiste à utiliser la commande \fBsetpriv\fP(1). .sp Si appelée sans argument, \fBrunuser\fP exécute par défaut un interpréteur de commandes interactif en tant que \fIsuperutilisateur\fP. .sp Pour assurer la rétrocompatibilité, \fBrunuser\fP ne change pas, par défaut, de répertoire actuel et ne définit que les variables d’environnement \fBHOME\fP et \fBSHELL\fP (plus \fBUSER\fP et \fBLOGNAME\fP si l’\fIutilisateur\fP cible n’est pas le superutilisateur). Cette version de \fBrunuser\fP utilise PAM pour la gestion de session. .sp Remarquez que \fBrunuser\fP utilise dans tous les cas PAM (pam_getenvlist()) pour effectuer une modification sur l\(cqenvironnement final. Les options de la ligne de commande comme \fB\-\-login\fP ou \fB\-\-preserve\-environment\fP touchent l\(cqenvironnement avant qu\(cqil ne soit modifié par PAM. .sp Since version 2.38 \fBrunuser\fP resets process resource limits RLIMIT_NICE, RLIMIT_RTPRIO, RLIMIT_FSIZE, RLIMIT_AS and RLIMIT_NOFILE. .SH "OPTIONS" .sp \fB\-c\fP, \fB\-\-command\fP=\fIcommande\fP .RS 4 Passer une \fIcommande\fP à l’interpréteur de commandes avec l’option \fB\-c\fP. .RE .sp \fB\-f\fP, \fB\-\-fast\fP .RS 4 Passer \fB\-f\fP à l’interpréteur de commandes, ce qui pourrait être utile ou non suivant l’interpréteur de commandes. .RE .sp \fB\-g\fP, \fB\-\-group\fP=\fIgroupe\fP .RS 4 Le groupe primaire à utiliser. Cette option n’est permise que pour le superutilisateur. .RE .sp \fB\-G\fP, \fB\-\-supp\-group\fP=\fIgroupe\fP .RS 4 Spécifier un groupe supplémentaire. Cette option n\(cqest disponible que pour le superutilisateur. Le premier groupe supplémentaire spécifié est également utilisé en tant que groupe primaire si l\(cqoption \fB\-\-group\fP n\(cqest pas spécifiée. .RE .sp \fB\-\fP, \fB\-l\fP, \fB\-\-login\fP .RS 4 Démarrer l’interpréteur de commandes comme un interpréteur de connexion avec un environnement similaire à une connexion réelle : .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} effacer toutes les variables d\(cqenvironnement sauf \fBTERM\fP et les variables spécifiées avec \fB\-\-whitelist\-environment\fP ; .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} initialiser les variables d\(cqenvironnement \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP, \fBLOGNAME\fP et \fBPATH\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} se placer dans le répertoire personnel de l’utilisateur cible ; .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} définir argv[0] pour l’interpréteur de commandes à « \fB\-\fP » pour faire de l’interpréteur de commandes un interpréteur de connexion. .RE .RE .sp \fB\-m\fP, \fB\-p\fP, \fB\-\-preserve\-environment\fP .RS 4 Préserver la totalité de l’environnement, c’est\-à\-dire ne pas définir \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP ni \fBLOGNAME\fP. Cette option est ignorée si l’option \fB\-\-login\fP est indiquée. .RE .sp \fB\-P\fP, \fB\-\-pty\fP .RS 4 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., \fBrunuser \-\-pty\fP \fB\-u\fP \fIusername\fP \fB\-\-\fP \fIcommand\fP \fB&\fP). If the pseudo\-terminal is enabled, then \fBrunuser\fP works as a proxy between the sessions (sync stdin and stdout). .sp This feature is mostly designed for interactive sessions. If the standard input is not a terminal, but for example a pipe (e.g., \fBecho "date" | runuser \-\-pty \-u\fP \fIuser\fP), then the \fBECHO\fP flag for the pseudo\-terminal is disabled to avoid messy output. .RE .sp \fB\-s\fP, \fB\-\-shell\fP=\fIshell\fP .RS 4 Exécuter l’interpréteur de commandes \fIshell\fP 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 : .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} l’interpréteur de commandes indiqué avec \fB\-\-shell\fP ; .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} l’interpréteur de commandes indiqué dans la variable d’environnement \fBSHELL\fP si l’option \fB\-\-preserve\-environment\fP est utilisée ; .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} l’interpréteur de commandes indiqué dans l’entrée passwd de l’utilisateur cible ; .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} /bin/sh .sp Si l’utilisateur cible a un interpréteur de commandes restreint (c’est\-à\-dire ne faisant pas partie de \fI/etc/shells\fP), l’option \fB\-\-shell\fP et la variable d’environnement \fBSHELL\fP sont ignorées sauf si l’utilisateur appelant est le superutilisateur. .RE .RE .sp \fB\-\-session\-command=\fP\fIcommande\fP .RS 4 Comme \fB\-c\fP, mais sans créer de nouvelle session (à éviter). .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=\fIliste\fP .RS 4 Ne pas réinitialiser les variables d\(cqenvironnement spécifiées dans une \fIliste\fP séparée par des virgules au moment de vider l\(cqenvironnement pour \fB\-\-login\fP (une connexion). La liste blanche est ignorée s\(cqagissant des variables d\(cqenvironnement \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP, \fBLOGNAME\fP et \fBPATH\fP. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 Afficher l’aide\-mémoire puis quitter. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 Afficher le numéro de version et quitter. .RE .SH "FICHIERS DE CONFIGURATION" .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 (chaîne) .RS 4 Définit la variable d\(cqenvironnement pour un utilisateur ordinaire. La valeur par défaut est \fI/usr/local/bin:/bin:/usr/bin\fP. .RE .sp \fBENV_ROOTPATH\fP (chaîne), \fBENV_SUPATH\fP (chaîne) .RS 4 Defines the \fBPATH\fP environment variable for root. \fBENV_SUPATH\fP takes precedence. The default value is \fI/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin\fP. .RE .sp \fBALWAYS_SET_PATH\fP (booléen) .RS 4 If set to \fIyes\fP and \fB\-\-login\fP and \fB\-\-preserve\-environment\fP were not specified \fBrunuser\fP initializes \fBPATH\fP. .RE .sp La variable d\(cqenvironnement \fBPATH\fP peut être différente sur des systèmes où \fI/bin\fP et \fI/sbin\fP sont fusionnés dans \fI/usr\fP, cette variable est aussi concernée par l\(cqoption \fB\-\-login\fP de la ligne de commande et le paramétrage du système PAM (comme \fBpam_env\fP(8)). .SH "CODE DE RETOUR" .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 Le code de retour généré par \fBrunuser\fP elle\-même est un des suivants. .sp 1 .RS 4 Erreur générale avant d’exécuter la commande demandée. .RE .sp 126 .RS 4 La commande demandée n’a pas pu être exécutée. .RE .sp 127 .RS 4 La commande demandée n’a pas été trouvée. .RE .SH "FICHIERS" .sp \fI/etc/pam.d/runuser\fP .RS 4 fichier de configuration de PAM par défaut .RE .sp \fI/etc/pam.d/runuser\-l\fP .RS 4 fichier de configuration de PAM si \fB\-\-login\fP est indiqué .RE .sp \fI/etc/default/runuser\fP .RS 4 fichier de configuration logindef spécifique à runuser .RE .sp \fI/etc/login.defs\fP .RS 4 fichier de configuration logindef général .RE .SH "HISTORIQUE" .sp Cette commande \fBrunuser\fP est dérivée de \fBsu\fP de coreutils, qui était basée sur une implémentation de David MacKenzie, et de la commande \fBrunuser\fP de Fedora par Dan Walsh. .SH "VOIR AUSSI" .sp \fBsetpriv\fP(1), \fBsu\fP(1), \fBlogin.defs\fP(5), \fBshells\fP(5), \fBpam\fP(8) .SH "SIGNALER DES BOGUES" .sp Pour signaler un bogue, utilisez le gestionnaire de bogues sur \c .URL "https://github.com/util\-linux/util\-linux/issues" "" "." .SH "DISPONIBILITÉ" .sp La commande \fBrunuser\fP fait partie du paquet util\-linux, elle est disponible sur \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "l’archive du noyau Linux" "."