Use con cuidado, hay problemas de seguridad con sudo y variables.
De man sudoers
encontré que deberías usar
Valores predeterminados env_reset
Valores predeterminados env_keep + = "PYTHONPATH OTRO VARIABLE AÚN MÁS"
En Ubuntu, sudo
conserva algunas variables. sudo -i
es más como iniciar sesión como root y luego ejecutar el comando. Ambos pueden ser inconvenientes, el primero sudo nano myfile
deja archivos propiedad de root dentro de su hogar y el segundo sudo -i nano myfile
intentará abrir / root / myfile.
correr
sudo printenv PATH
y mira lo que da. Aquí da
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin
por ejemplo. Ahora corre sudo visudo
y agrega la línea
Defaults secure_path=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin
reemplazando por lo que encontraste justo antes. Agregue una nueva ruta si es necesario.
Sobre bibliotecas:
sudo LD_LIBRARY_PATH=/usr/lib/path/to/a/safe/library your command
Las distribuciones de Linux tienen mucho cuidado PATH
, y realmente debes tener cuidado antes de jugar con ellas. Tenga especial cuidado al agregar rutas como " .
" o /home/username
no es seguro.
Uno de los peligros de agregar rutas es que abre la posibilidad de que se ejecuten archivos en estas rutas root
, abriendo una ventana en la seguridad del sistema que puede ser explotada por software malicioso. Puede haber otros peligros. Solo asegúrate de saber lo que estás haciendo. Eludir sudo
las medidas de seguridad puede hacer que su Solaris sea tan seguro como Windows XP.