GNU/Linux >> Tutoriales Linux >  >> Linux

¿Por qué las variables de ruta son diferentes cuando se ejecuta a través de Sudo y Su?

En mi máquina virtual fedora, cuando ejecuto mi cuenta de usuario, tengo /usr/local/bin en mi camino:

[[email protected] ~]$ env | grep PATH
 PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/justin/bin

Y lo mismo cuando se ejecuta su :

[[email protected] ~]$ su -
Password: 
[[email protected] justin]# env | grep PATH
PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/justin/bin

Sin embargo, cuando se ejecuta a través de sudo , este directorio no está en la ruta:

[[email protected] justin]# exit
[[email protected] ~]$ sudo bash
[[email protected] ~]# env | grep PATH
PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/sbin:/bin:/usr/sbin:/usr/bin

¿Por qué la ruta sería diferente cuando se ejecuta a través de sudo? ?

Respuesta aceptada:

Echa un vistazo a /etc/sudoers . El archivo predeterminado en Fedora (así como en RHEL, Ubuntu y similares) incluye esta línea:

Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin

Lo que garantiza que su ruta esté limpia cuando ejecute binarios bajo sudo. Esto ayuda a proteger contra algunas de las preocupaciones mencionadas en esta pregunta. También es conveniente si no tienes /sbin y /usr/sbin en tu propio camino.


Linux
  1. ¿Cuándo y por qué debo usar Apt-get Update?

  2. ¿Error de Pkgproblemresolver al ejecutar Package Manager y actualizar 12.04?

  3. Cuándo y por qué usar Docker

  4. Variables de entorno de usuario con "su" y "sudo" en Linux

  5. ¿Qué es diferente entre root y sudo?

Linux:¿por qué son tan grandes los verdaderos y los falsos?

¿Por qué algunos emoji en blanco y negro y otros son demasiado grandes?

¿Cuándo se maneja una señal y por qué alguna información se congela?

¿Por qué los números de llamada del sistema Linux en x86 y x86_64 son diferentes?

¿Por qué verdadero y falso son tan grandes?

Reenvío de IP =¿cuándo y por qué es necesario?