J'utilise fabric pour déployer un projet et j'ai rencontré un problème:
pour le moment, Fabric n'a pas (à ma connaissance) la possibilité de spécifier des options à la commande Sudo. Par conséquent, je ne peux pas utiliser Sudo -E
pour utiliser les paramètres de proxy des utilisateurs locaux.
Comment puis-je configurer les paramètres de proxy pour root.
Cela doit se faire via la ligne de commande car je travaille sur un serveur sans interface graphique.
Juste pour référence. Fabric
autorise parfaitement la commande Sudo
. De les docs
fabric.operations.Sudo(command, Shell=True, pty=True, combine_stderr=None, user=None, quiet=False, warn_only=False, stdout=None, stderr=None, group=None)
Voici l'exemple tiré de la documentation.
Sudo("~/install_script.py")
Sudo("mkdir /var/www/new_docroot", user="www-data")
Sudo("ls /home/jdoe", user=1001)
result = Sudo("ls /tmp/")
with settings(Sudo_user='mysql'):
Sudo("whoami") # prints 'mysql'
En passant, Nice, vous utilisez Fabric. C'est un bon outil de déploiement.
Je ne sais pas si cela peut vous aider mais j'utilise tsocks
pour les proxy de chaussettes comme Tor
Installez la dernière version de tor et tsocks Sudo apt-get install tor tsocks
Editez le fichier de configuration tsocks Sudo gedit /etc/tsocks.conf
afin que les dernières lignes soient:
server = 127.0.0.1
# Server type defaults to 4 so we need to specify it as 5 for this one
server_type = 5
# The port defaults to 1080 but I've stated it here for clarity
server_port = 9050
et exécutez n'importe quelle commande avec tor proxy tsocks Sudo apt-get update
par exemple.