GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So behalten Sie Umgebungsvariablen bei der Verwendung von sudo bei

Zuerst müssen Sie export HTTP_PROXY . Zweitens müssen Sie man sudo lesen , und sehen Sie sich -E an Flagge. Das funktioniert:

$ export HTTP_PROXY=foof
$ sudo -E bash -c 'echo $HTTP_PROXY'

Hier ist das Zitat aus der Manpage:

-E, --preserve-env
             Indicates to the security policy that the user wishes to preserve their
             existing environment variables.  The security policy may return an error
             if the user does not have permission to preserve the environment.

Der Trick besteht darin, sudoers Umgebungsvariablen hinzuzufügen Datei über sudo visudo Befehl und fügen Sie diese Zeilen hinzu:

Defaults env_keep += "ftp_proxy http_proxy https_proxy no_proxy"

entnommen aus dem ArchLinux-Wiki.

Für Ubuntu 14 müssen Sie in separaten Zeilen angeben, wie es die Fehler für Zeilen mit mehreren Variablen zurückgibt:

Defaults  env_keep += "http_proxy"
Defaults  env_keep += "https_proxy"
Defaults  env_keep += "HTTP_PROXY"
Defaults  env_keep += "HTTPS_PROXY"

Linux
  1. So setzen, listen und entfernen Sie Umgebungsvariablen in Linux

  2. Benutzerumgebungsvariablen Mit „su“ und „sudo“ unter Linux

  3. Wie geben Sie su die aktuellen Benutzerumgebungsvariablen an?

  4. Wie druckt man scheinbar versteckte Umgebungsvariablen?

  5. wie man die Umgebungsvariable an sudo su übergibt

So legen Sie Umgebungsvariablen in MacOS fest

So halten Sie die 'sudo'-Passwort-Timeout-Sitzung in Linux länger

So setzen und listen Sie Umgebungsvariablen in Linux auf

So setzen und listen Sie Umgebungsvariablen in Linux auf

So blockieren Sie einen Port mit einer Firewall in Linux

So setzen und löschen Sie Umgebungsvariablen unter Linux