Como redefinir o proxy no terminal para automático se não estiver conectado via proxy

9

Tentei redefinir o proxy do terminal com alguns comandos, mas isso não acontece e volta automaticamente para esse proxy 172.16.0.16 (que aparentemente era o meu proxy da faculdade).

Verifiquei as configurações do sistema. Não entendo por que isso é recorrente.
Também gostaria de saber como ignorar o servidor proxy, pois não consegui acessar nenhum dos repositórios do ubuntu, pois eles foram bloqueados nas configurações de proxy da minha faculdade, como é a página inicial do Ubuntu.

Obrigado pelo seu tempo. Instantâneo do terminal

Para sudo ls /etc/apt/apt.conf.d/ Ele exibe um conjunto diferente de opções em que o proxy não está listado. Estou na 12.10, se isso ajudar algum. Coloquei um snap no terminal depois que o comando acima foi inserido. ls Comando digitado

therealnube
fonte

Respostas:

20

O Ubuntu 12.10 definirá as configurações de proxy no /etc/environmente /etc/apt/apt.confquando você definir o proxy na GUI (Configurações de rede).

Verifique suas configurações do apt

grep -Hnri proxy /etc/apt/

listará as configurações de proxy atuais usadas aptno seguinte formato.

filename:linenumber:proxy-setting

Se você vir alguma saída, ela corresponderá às aptconfigurações de proxy de. Eles terão que ser limpos.

sudoedit <filename>

permitirá editar o arquivo de configuração correspondente. Copie o conteúdo existente em algum lugar, caso seja necessário restaurá-lo e exclua ou comente as linhas que se parecem
Acquire::<protocol>::proxy=<your proxy here>
(Adicione // no início de uma linha para comentar essa linha. As linhas comentadas são ignoradas.)

Salve os arquivos, feche o editor de texto e tente novamente. Se o problema persistir,

Verifique o ambiente padrão global.

grep proxy -i /etc/environment

Deve listar todas as configurações de proxy aplicadas globalmente. Se você precisar limpá-los,

sudoedit /etc/environment

irá iniciar o editor de texto. As linhas que começam com # serão ignoradas; portanto, adicione um # antes das linhas que mencionam suas configurações de proxy. Salve o arquivo e tente novamente.

Limpando o ambiente do usuário

É possível que a configuração em todo o sistema esteja limpa, mas aptesteja captando as configurações de proxy no ambiente do usuário. sudoem determinadas configurações por padrão, ou quando explicitamente passado -Ecomo uma opção, preserva o ambiente.

env | grep -i proxy

deve listar as configurações atuais de proxy do ambiente. unset <variable>pode ser usado para desmarcar ou limpar uma variável. Desative todas as <protocol>_proxyvariáveis. Se eles são automaticamente a ser definido, você pode comentar as entradas correspondentes de ~/.profile, ~/.bashrc,~/.pam_environment

(Esses são os arquivos mais comuns que contêm as entradas. Todos eles podem ser pesquisados ​​de uma só vez usando grep -Hni proxy ~/.profile ~/.bashrc ~/.pam_environment )

Mahesh
fonte
Infelizmente, nenhum deles funciona. Sou via conexão de banda larga, apenas os navegadores são funcionais.
Therealnube 28/11/2012
Tente minha resposta atualizada. Observe a iopção grep, que faz uma pesquisa que não diferencia maiúsculas de minúsculas.
Mahesh
Bem, eu não completei o último bit Limpando o ambiente do usuário Mas hoje parece funcionar magicamente.Provavelmente algum código foi corrigido: | E se eu tivesse que desfazer a operação? A alteração na GUI de rede novamente atribuirá o proxy necessário no futuro?
Therealnube
Sim. Alterar a configuração da GUI reverterá todas as alterações acima. Apenas certifique-se de aplicá-las em todo o sistema.
Mahesh 29/11
Tentei limpar as variáveis, mas quando fecho e reinicio o terminal, todos os meus valores de proxy são redefinidos para 192.168.2.1:8080 - Por que isso está acontecendo?
Sheharyar
3

http://www.iasptk.com/how-to-change-system-proxy-settings-from-terminal-in-ubuntu-1204precise

Como alterar as configurações de proxy do sistema do terminal no ubuntu 12.04 (Precise)

Configure o desktop / laptop Ubuntu para usar seu servidor proxy no terminal.

Habilitar configuração de proxy do terminal no ubuntu 12.04

Abra o terminal e execute os seguintes comandos

Nota: - altere o IP do host e a configuração da porta com a sua.

gsettings set org.gnome.system.proxy.socks host '192.168.1.1′
gsettings set org.gnome.system.proxy.socks port 8080
gsettings set org.gnome.system.proxy mode 'manual'

Desabilitar a configuração de proxy do terminal no ubuntu 12.04

gsettings set org.gnome.system.proxy mode 'none'
ptheo
fonte
11
Essa seria a maneira preferida de definir / limpar o proxy. A GUI (proxy de rede) executa um trabalho equivalente usando as ligações Gsettings. No entanto, isso define as entradas no nível do usuário e o apt pode permanecer inalterado.
Mahesh
0

app-get configuração de proxy é armazenada em /etc/apt/apt.conf.d/20proxy

Além disso, o nome do arquivo pode ser algo como 20proxy .

Atenção: Você precisa de rootpermissão para alterar ou remover o arquivo em /etc/apt/apt.conf.d.

Isso pode ser trabalho:

$ sudo ls /etc/apt/apt.conf.d/

00aptitude    15update-stamp  20proxy                99update-notifier
00trustcdrom  20archive       
01autoremove  20changelog     50unattended-upgrades
10periodic    20dbus          70debconf

$ sudo mv /etc/apt/apt.conf.d/20proxy /etc/apt/apt.conf.d/20proxy~

se você não conseguir encontrar o arquivo diretamente, procure o Acquire::http::Proxyseguinte:

encontre /etc/apt/apt.conf.d | xargs grep "Adquirir :: http :: Proxy`

Como o conteúdo do arquivo que configurou o proxy deve ser assim:

Adquirir :: http :: Proxy "http: 172.16.0.16: 3142";

Algum tempo a variável de ambiente está definida para isso http_proxy, faça o seguinte:

exportar http_proxy =

Amir Naghizadeh
fonte
Isso não vai ajudar senhor, por favor me orientar através steps.I não pode acessar a lista, o comando $sudo ls /etc/apt/apt.conf.d/me mostra outra lista
therealnube