Comment définir les variables d'environnement avec sudo -u USER?


2

Bonjour et désolé pour mon anglais à l'avance.

J'ai besoin d'exécuter depuis la commande root comme

envVariable1=15 envVariable2=25 sudo -u user1 sudo -E myCommand

mais les variables d'environnement ne sont pas transmises à myCommand. Cela peut sembler illogique, mais il est nécessaire d’exécuter une commande à partir de la racine et avec sudo , elle sera utilisée dans les scripts. Comment puis-je contourner le problème?



2
Pourquoi le double sudo? Quel est le problème avec envVariable1=15 envVariable2=25 sudo -E myCommand? S'il y a une bonne raison pour la première sudo, il faut aussi une -E. Sinon, si vous n'avez pas besoin de conserver d'autres variables d'environnement, ajoutez une envcommande à la dernière sudo, comme dans sudo -u user1 sudo env envVariable1=15 envVariable2=25 myCommand.
AFH

Réponses:


2

Je devrais taper var1=1 var2=2 sudo -E -u user1 sudo -E myCommandpuis var1 et var2 seront disponibles pour user1.

Merci à AFH de m'aider à trouver une réponse!

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.