'\" t .\" Title: su .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.23 .\" Date: 2025-09-22 .\" Manual: Órdenes de usuario .\" Source: util-linux 2.41.2 .\" Language: English .\" .TH "SU" "1" "2025-09-22" "util\-linux 2.41.2" "Órdenes de usuario" .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 "NOMBRE" su \- ejecuta una orden con identificadores de grupo y de usuario alternativos .SH "SINOPSIS" .sp \fBsu\fP [opciones] [\fB\-\fP] [\fIusuario\fP [\fIargumento\fP...]] .SH "DESCRIPCIÓN" .sp \fBsu\fP permite invocar órdenes con identificadores de usuario y grupo distintos. .sp Cuando se invoca sin especificar \fIusuario\fP, \fBsu\fP lanza una interfaz de órdenes interactiva como \fIroot\fP. Cuando se especifica el \fIusuario\fP, se pueden pasar \fIargumento\fPs adicionales, en cuyo caso se pasan a la interfaz de órdenes. .sp Buscando compatibilidad con versiones anteriores, \fBsu\fP establece no cambiar el directorio actual y definir solo las variables de entorno \fBHOME\fP y \fBSHELL\fP (además de \fBUSER\fP y \fBLOGNAME\fP si el \fIusuario\fP objetivo no es root). Se recomienda usar siempre la opción \fB\-\-login\fP (en lugar de su atajo \fB\-\fP) para evitar efectos secundarios causados al mezclar entornos. .sp Esta versión de \fBsu\fP usa PAM para autenticación, gestión de cuentas y sesiones. Algunas opciones de configuración presentes en otras implementaciones de \fBsu\fP, como el soporte para el grupo wheel, se configuran a través de PAM. .sp \fBsu\fP se diseñó principalmente para usuarios sin privilegios, la solución recomendada para usuarios con privilegios (por ejemplo, scripts ejecutados como root) es usar la orden \fBrunuser\fP(1) que no requiere autenticación y proporciona una configuración PAM separada. Si no se requiere la sesión PAM, entonces se recomienda usar la orden \fBsetpriv\fP(1). .sp Tenga en cuenta que \fBsu\fP en todos los casos usa PAM (\fBpam_getenvlist\fP(3)) para realizar la modificación final del entorno. Las opciones de línea de órdenes como \fB\-\-login\fP y \fB\-\-preserve\-environment\fP afectan al entorno antes de que sea modificado por PAM. .sp Desde la versión 2.38 \fBsu\fP reinicia los límites de recursos de proceso RLIMIT_NICE, RLIMIT_RTPRIO, RLIMIT_FSIZE, RLIMIT_AS y RLIMIT_NOFILE. .SH "OPCIONES" .sp \fB\-c\fP, \fB\-\-command\fP \fIorden\fP .RS 4 Invoca la orden \fIorden\fP con la opción \fB\-c\fP. .RE .sp \fB\-f\fP, \fB\-\-fast\fP .RS 4 Envía \fB\-f\fP a la interfaz de órdenes, que puede o no ser útil, dependiendo de la interfaz de órdenes. .RE .sp \fB\-g\fP, \fB\-\-group\fP \fIgrupo\fP .RS 4 Especifica el grupo primario. Esta opción está disponible solo para el usuario root. .RE .sp \fB\-G\fP, \fB\-\-supp\-group\fP=\fIgrupo\fP .RS 4 Especifica un grupo suplementario. Esta opción está disponible solo para el usuario root. Si no se especifica la opción \fB\-\-group\fP, el primer grupo suplementario especificado también se usa como grupo primario. .RE .sp \fB\-\fP, \fB\-l\fP, \fB\-\-login\fP .RS 4 Inicia la interfaz de órdenes con sesión (n. del t. login shell) con un entorno parecido a una sesión real. .sp Tenga en cuenta que en entornos basados en systemd se puede definir una nueva sesión como punto de entrada real al sistema. Sin embargo, \fBsu\fP no crea una sesión real (por PAM) desde este punto de vista. Es necesario que use herramientas como \fBsystemd\-run\fP o \fBmachinectl\fP para iniciar una sesión completa y real. .sp \fBsu\fP hace lo siguiente: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} limpia todas las variables de entorno excepto \fBTERM\fP y las variables especificadas por \fB\-\-whitelist\-environment\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} inicializa las variables de entorno \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP, \fBLOGNAME\fP y \fBPATH\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} cambia al directorio de inicio del usuario objetivo .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} establece argv[0] de la interfaz de órdenes a \fB\-\fP para hacerla una interfaz de órdenes con sesión .RE .RE .sp \fB\-m\fP, \fB\-p\fP, \fB\-\-preserve\-environment\fP .RS 4 Preserva el entorno completo, es decir, no establece \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP o \fBLOGNAME\fP. Esta opción se ignora si se especifica la opción \fB\-\-login\fP. .RE .sp \fB\-P\fP, \fB\-\-pty\fP .RS 4 Crea una pseudo\-terminal para la sesión. La terminal independiente ofrece mejor seguridad dado que el usuario no comparte una terminal con la sesión original. Esto puede usarse para evitar la inyección ioctl en terminales \fBTIOCSTI\fP y otros ataques de seguridad contra descriptores de ficheros. La sesión completa también puede moverse a segundo plano (por ejemplo, \fBsu \-\-pty\fP \fB\-\fP \fIusuario\fP \fB\-c\fP \fIaplicación\fP \fB&\fP). Si la pseudo\-terminal está habilitada, entonces \fBsu\fP funciona como un proxy entre las sesiones (sincronizando stdin y stdout). .sp Esta característica está diseñada principalmente para sesiones interactivas. Si la entrada estándar no es una terminal, como por ejemplo un pipe (p. e., \fBecho "date" | su \-\-pty\fP), entonces la bandera \fBECHO\fP para la pseudo\-terminal se deshabilita para evitar mostrar mensajes desordenados. .RE .sp \fB\-s\fP, \fB\-\-shell\fP \fIshell\fP .RS 4 Invoca la \fIshell\fP especificada en lugar de la predeterminada. Si el usuario objetivo tiene una interfaz de órdenes restringida (es decir, no está en la lista de \fI/etc/shells\fP), la opción \fB\-\-shell\fP y las variables de entorno \fBSHELL\fP se ignoran a menos que el usuario que llama a \fBsu\fP sea root. .sp La interfaz de órdenes se selecciona de acuerdo con las siguientes reglas, en este orden: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} la interfaz de órdenes especificada con \fB\-\-shell\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} la interfaz de órdenes especificada en la variable de entorno \fBSHELL\fP, en caso de usar la opción \fB\-\-preserve\-environment\fP .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} la interfaz de órdenes de la cuenta del usuario objetivo como aparece en passwd .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ . sp -1 . IP \(bu 2.3 .\} /bin/sh .RE .RE .sp \fB\-\-session\-command=\fP\fIorden\fP .RS 4 Igual que \fB\-c\fP, pero sin crear una nueva sesión. (No se recomienda.) .RE .sp \fB\-T\fP, \fB\-\-no\-pty\fP .RS 4 No crea una pseudo\-terminal, opuesto a \fB\-\-pty\fP y a \fB\-P\fP. Tenga en cuenta que invocar sin una pseudo\-terminal abre un riesgo de seguridad de escalamiento de privilegios mediante inyección de la orden ioctl TIOCSTI/TIOCLINUX. .RE .sp \fB\-w\fP, \fB\-\-whitelist\-environment\fP \fIlista\fP .RS 4 No reinicia las variables de entorno especificadas en la \fIlista\fP separada por comas cuando se limpia el entorno para \fB\-\-login\fP. Se ignora la lista de aprobados para las variables de entorno \fBHOME\fP, \fBSHELL\fP, \fBUSER\fP, \fBLOGNAME\fP y \fBPATH\fP. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 Mostrar texto de ayuda y finalizar. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 Display version and exit. .RE .SH "SEÑALES" .sp Al recibir \fBSIGINT\fP, \fBSIGQUIT\fP o \fBSIGTERM\fP, \fBsu\fP termina a su hijo y después se termina a sí misma con la señal recibida. El hijo se termina con \fBSIGTERM\fP, después de un intento fallido y 2 segundos de retardo el hijo se mata con \fBSIGKILL\fP. .SH "FICHEROS DE CONFIGURACIÓN" .sp \fBsu\fP lee los archivos de configuración \fI/etc/default/su\fP y \fI/etc/login.defs\fP. Los siguientes elementos de configuración son relevantes para \fBsu\fP: .sp \fBFAIL_DELAY\fP (número) .RS 4 Espera en segundos en caso de un fallo de autenticación. El número debe ser un entero no negativo. .RE .sp \fBENV_PATH\fP (cadena) .RS 4 Define la variable de entorno \fBPATH\fP para un usuario normal. El valor predeterminado es \fI/usr/local/bin:/bin:/usr/bin\fP. .RE .sp \fBENV_ROOTPATH\fP (cadena), \fBENV_SUPATH\fP (cadena) .RS 4 Define la variable de entorno \fBPATH\fP para root. \fBENV_SUPATH\fP toma precedencia. El valor predeterminado es \fI/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin\fP. .RE .sp \fBALWAYS_SET_PATH\fP (booleano) .RS 4 Si se establece a \fIyes\fP y no se especificaron \fB\-\-login\fP y \fB\-\-preserve\-environment\fP, entonces \fBsu\fP inicializa \fBPATH\fP. .sp La variable de entorno \fBPATH\fP puede ser diferente en sistemas donde \fI/bin\fP y \fI/sbin\fP se fusionan en \fI/usr\fP; esta variable también se ve afectada por la opción de línea de órdenes \fB\-\-login\fP y la configuración del sistema PAM (por ejemplo, \fBpam_env\fP(8)). .RE .SH "ESTADO DE SALIDA" .sp \fBsu\fP normalmente devuelve el estado de salida de la orden que lanzó. Si la orden fue terminada por una señal, \fBsu\fP devuelve el número de la señal más 128. .sp Estado de salida generado por \fBsu\fP: .sp 1 .RS 4 Error genérico antes de lanzar la orden solicitada .RE .sp 126 .RS 4 La orden solicitada no pudo iniciarse .RE .sp 127 .RS 4 La orden solicitada no se encontró .RE .SH "FICHEROS" .sp \fI/etc/pam.d/su\fP .RS 4 archivo de configuración PAM predeterminado .RE .sp \fI/etc/pam.d/su\-l\fP .RS 4 archivo de configuración PAM si se especifica \fB\-\-login\fP .RE .sp \fI/etc/default/su\fP .RS 4 orden específica para el archivo de configuración logindef .RE .sp \fI/etc/login.defs\fP .RS 4 archivo de configuración logindef global .RE .SH "NOTAS" .sp Por razones de seguridad, \fBsu\fP siempre registra los intentos fallidos de inicio de sesión en el fichero \fIbtmp\fP, pero no escribe en el fichero \fIlastlog\fP. Esto puede usarse para controlar el comportamiento de \fBsu\fP por la configuración de PAM. Si quiere usar el módulo \fBpam_lastlog\fP(8) para imprimir un mensaje de advertencia acerca de los intentos fallidos de inicio de sesión, tiene que configurar \fBpam_lastlog\fP(8) para actualizar el fichero \fIlastlog\fP también. Por ejemplo mediante: .RS 3 .ll -.6i .sp session required pam_lastlog.so nowtmp .br .RE .ll .SH "HISTORIA" .sp Esta versión de la orden \fBsu\fP se deriva de la orden \fBsu\fP de coreutils, la cual se basa en una implementación de David MacKenzie. La versión de util\-linux ha sido refactorizada por Karel Zak. .SH "VÉASE TAMBIÉN" .sp \fBsetpriv\fP(1), \fBlogin.defs\fP(5), \fBshells\fP(5), \fBpam\fP(8), \fBrunuser\fP(1) .SH "INFORMAR DE ERRORES" .sp For bug reports, use the \c .URL "https://github.com/util\-linux/util\-linux/issues" "issue tracker" "." .SH "DISPONIBILIDAD" .sp La orden \fBsu\fP forma parte del paquete util\-linux, el cual puede descargarse de \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "Linux Kernel Archive" "."