sudo command
Linux

解决sudo命令不使用代理问题

在国内环境下,我们经常需要使用代理来进行一些系统操作,比例apt的包管理(KaliUbuntuDebian等发行版使用),比如curl命令或者git命令等等。通常我们通过配置.bashrc或者.zshrc等shell配置文件,增加代理选项就可以正常工作,但是如果在命令之前,增加sudo后,会发现所输入的命令并没有通过配置中的proxy代理出去。这个问题解决起来很简单:

如果您的sudo命令不使用代理,可以尝试以下解决方法:

  1. 修改sudoers文件

使用命令sudo vim打开/etc/sudoers文件,将以下行添加到文件末尾:

Defaults env_keep += "http_proxy https_proxy ftp_proxy"

:wq保存文件并退出。

  1. 在/etc/environment文件中设置代理

使用命令sudo vim /etc/environment打开/etc/environment文件,并在其中添加以下行:

http_proxy="http://proxy_address:port" 

https_proxy="https://proxy_address:port"

:wq保存文件并退出。


注意:以上方法中,修改/etc/sudoers文件的方法只对sudo命令有效;在/etc/environment文件或~/.bashrc等shell的配置文件中设置代理的方法可以对所有命令都有效。

如果你想使用neovim替换vim,也可以参考:如何在Debian上编译安装Neovim

alias How to run “sudo apt-get update” through proxy in commandline?

Hi, I’m Yawata

这次不要再从零开始。 什么都想学一点,什么都想会一点。 区块链入门水平,前端入门水平。喜欢用Google, neovim, Windows。前重度游戏玩家,已游戏阳痿。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注