GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo establecer la ruta para los comandos sudo

Esto normalmente lo establece el secure_path opción en /etc/sudoers . Desde man sudoers :

 secure_path   Path used for every command run from sudo.  If you don't
               trust the people running sudo to have a sane PATH environ‐
               ment variable you may want to use this.  Another use is if
               you want to have the “root path” be separate from the “user
               path”.  Users in the group specified by the exempt_group
               option are not affected by secure_path.  This option is not
               set by default.

Para ejecutar comandos que no están en el $PATH predeterminado , puedes

  1. Usa la ruta completa:sudo ~/bin/my-command; o

  2. Agregue el directorio que contiene el comando a secure_path . Ejecutar sudo visudo y edite la línea de ruta segura:

    Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/youruser/bin/"
    

    Guarde el archivo y la próxima vez que ejecute sudo , el directorio ~/bin estará en su $PATH .


Esto es lo que usé para una solución alternativa:

sudo cp $(which my-command) /usr/bin
...

El which el comando se ejecuta en una subcapa que no es raíz, por lo que puede encontrar my-command , luego, sudo copia el ejecutable a una ruta que el root el usuario puede acceder. No es muy bueno para la seguridad, pero estuvo bien para mí ejecutar una imagen acoplable que se estaba destruyendo justo después de ejecutar el comando.


Linux
  1. Cómo configurar hosts virtuales en Apache

  2. ¿Cómo hacer `sudo` preservar $ ruta?

  3. ¿Cómo establecer variables de ruta para todos los usuarios en un servidor?

  4. ¿Cómo configurar la ruta JAVA_HOME en Ubuntu?

  5. ¿Cómo hacer un alias para un camino largo?

Cómo configurar el clúster RabbitMQ en CentOS 7

Cómo ejecutar comandos Sudo sin contraseña

Cómo habilitar Sudo sin contraseña para usuarios en Linux

¿Cómo configurar un servidor Apt-cacher?

¿Cómo configurar Tls para Postfix en Ubuntu?

Cómo ejecutar comandos sudo sin contraseña