web-dev-qa-db-ja.com

「Sudo apt-get」と「Sudo -E apt-get」の違い

ホストOSとしてWindows 10を使用して、VMWare Player(7.1.3 build-3206955)でUbuntu 15.10ゲストを使用しています。 Firefoxを使用してゲスト内のWebを閲覧することはできますが、端末でaptを使用することはできません。コマンドSudo apt-get updateを呼び出すたびに、0% [connecting to in.archive.ubuntu.com]で停止し、最終的に失敗します。また、Sudo apt-get install <package>を使用すると、常にパッケージが見つかりません。一方、Sudoで-Eフラグを指定して同じコマンドを使用すると、それらが機能します。誰かがここで何が起こっているのか説明できますか?

EDIT:複数のインターネット接続を使用していることを追加するのを忘れました。 1つはプロキシあり、もう1つはプロキシなしです。通常のSudoは、プロキシのないものでは機能しますが、プロキシのあるものでは機能しません。

2

ここでの魔法の言葉はproxyです。ご使用の環境では、インターネットにアクセスできるようにするプロキシ情報セットがあります。

環境変数http_proxyにはプロキシ設定が含まれています。
echo $http_proxyを実行してそれらを表示します(おそらく$HTTP_PROXY)。

Sudo <command>を実行すると、コマンドはrootとして独自の環境で実行されます。 -EオプションをSudoに追加すると、コマンドはrootとして実行されますが、環境のほとんどがコピーされます。

次の3つのコマンドを実行することで確認できます。

  • env
  • Sudo env
  • Sudo -E env
5
NZD