회사 네트워크 내에서 Ubuntu 12.04 서버를 실행하고 있습니다. 외부 네트워크에 액세스하려면 프록시가 필요합니다. 설치 중에 프록시를 구성했습니다. 그 후 프록시 설정이 /etc/apt/apt.conf에 저장되어 있음을 발견했습니다. 그러나 환경 변수에는 없습니다. 그러나 wget은 프록시를 통해 웹페이지를 다운로드할 수도 있습니다. wget(및 기타 프로그램)은 내 프록시 설정을 어디에서 읽나요?
답변1
늘 그렇듯이 Linux/Ubuntu에서 사용되는 프로그램에 대한 모든 통신 설정을 통합하는 데 관심을 두는 사람이 아무도 없다고 생각하는데, 이는 유감스러운 일입니다.
11.10에서는 여러 위치에 시스템 전체 설정이 있습니다.
/etc/환경
...
http_proxy="user:[email protected]:port
...
/etc/apt/apt.conf.d/02/proxy
명령의 apt
설정은 다음 파일에 있습니다.
Acquire::http::proxy "http:/user:[email protected]:port"
/etc/wgetrc
이 명령은 위에서 언급한 파일 wget
과 동일한 형식을 따르는 이 파일의 설정을 갖습니다 /etc/environment
.
http_proxy="user:[email protected]:port
12.04에는 이 세 가지 프로그램에 대해 11.10과 동일한 파일 구성이 있는 경우 서버에 대해 이러한 파일을 편집할 수 있습니다.
11.10에서 직장과 집 사이에서 이러한 모든 사항을 변경하는 스크립트 파일이 있었지만 이제는 12.04가 이러한 문제를 해결하는 방법에 대한 자세한 내용을 알기 전까지는 해당 스크립트를 사용하지 않습니다.
답변2
wget
/etc/wgetrc
주석을 제거하고 프록시 설정을 편집할 수 있는 HTTP 및 HTTPS 프록시 줄을 찾는 용도입니다 .
답변3
많은 Linux 명령줄은 환경 변수 http_proxy
와 ftp_proxy
. .bashrc 파일에서 이를 설정하거나 또는 apt
등과 같은 명령을 실행하기 전에 이러한 환경 변수를 설정하도록 쉘 스크립트를 설정하십시오 wget
.
export http_proxy=http://proxyserver:port/
export ftp_proxy=http://proxyserver:port/
답변4
wget 및 기타 여러 프로그램은 http_proxy 환경 변수에서 프록시 정보를 가져옵니다. 쉘에서 명령을 실행하여 echo $http_proxy
설정되도록 하십시오.