GNU/Linux >> Linux の 問題 >  >> Linux

sudo の使用時に環境変数を保持する方法

まず export HTTP_PROXY する必要があります .次に、man sudo を読む必要があります 、そして -E を見てください 国旗。これは動作します:

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

以下はマニュアルページからの引用です:

-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.

トリックは、環境変数を sudoers に追加することです sudo visudo 経由でファイル コマンドを実行し、次の行を追加します:

Defaults env_keep += "ftp_proxy http_proxy https_proxy no_proxy"

ArchLinux wiki から引用。

Ubuntu 14 の場合、複数変数行のエラーを返すため、別の行で指定する必要があります:

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

Linux
  1. Linuxで環境変数とシェル変数を設定/作成する方法

  2. Tmux.confファイルで環境変数を使用していますか?

  3. Linux で環境変数を設定、一覧表示、および削除する方法

  1. cURL コマンドでの環境変数の使用 - Unix

  2. 多くの環境変数の設定を解除する方法

  3. sudo の使用時にコマンドが見つからない

  1. プロセスの環境変数を読み取る方法

  2. 明らかに隠された環境変数を出力するには?

  3. sudo su に環境変数を渡す方法